第4章-安全协议_第1页
第4章-安全协议_第2页
第4章-安全协议_第3页
第4章-安全协议_第4页
第4章-安全协议_第5页
已阅读5页,还剩18页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

4.1安全协议概述4.2身份认证协议4.3密钥建立协议第4章安全协议

4.1安全协议概述

安全协议是以密码算法为基础的消息交换协议,其目的是在网络环境中提供各种安全服务。密码学是网络安全的基础,但网络安全不能单纯依靠安全的密码算法。安全协议是网络安全的一个重要组成部分。我们需要通过安全协议进行实体间的认证,并在实体之间安全地分配密钥或传输其它的秘密信息,确保发送和接收消息的不可否认性。

4.1.1安全协议的基本概念4.1.2安全协议的安全性4.1.3针对安全协议的常见攻击和防范措施

4.1安全协议概述

4.1.1安全协议的基本概念所谓协议(Protocol),指的是两个或两个以上的参与者为完成某项特定的任务而采取的一系列步骤,而且每一步必须依次执行,在前一步完成之前,后面的步骤都不能执行。一个好的协议应该满足以下几点要求:协议中的每一方都必须了解协议,并且预先知道所要完成的所有步骤;协议中的每一方都必须同意遵守协议;协议必须是明确的,每个步骤都必须确切定义,避免引起误解;协议必须是完备的,对每种可能的情况必须规定具体的动作。

4.1.1安全协议的基本概念安全协议的功能包括:对网络中各个实体的认证、网络中的各个实体之间进行密钥的分发和管理、对消息发送或接收的不可否认性处理等。按照目的的不同,可以把网络通信中最基本和最常用的安全协议分为以下几类:认证协议:认证协议主要包括实体认证(身份认证)协议和消息认证协议,用于防止假冒、篡改、否认等攻击。密钥建立协议:这类协议一般用于参与协议的两个或者多个实体之间构建共享的会话密钥。协议中的密码算法可以采用对称密码算法,也可以采用非对称密码算法。这一类协议往往与认证协议结合使用。认证和密钥建立协议:这类协议将认证协议和密钥建立协议结合在一起,先对通信实体的身份进行认证,在认证成功的基础上,为下一步的安全通信分发所需的会话密钥。常见的认证和密钥建立协议有互联网密钥交换(IKE)协议和Kerberos认证协议。

4.1.2安全协议的安全性如果一个安全协议受到非法攻击,但攻击者不能获得有用的信息,那么就称这个协议是安全的。通常,安全协议有以下几个安全性质:1.认证性认证性主要是完成对通信双方身份的识别和消息来源的确认。2.机密性

机密性是指协议消息不被非授权者获得有用信息的一种性质。3.完整性

完整性是指协议数据在产生、传输和存储的过程中没有被非法改动的一种性质。4.验证性在协议执行过程中,每个参与者都应按照协议中预先设置的规定,交换一系列信息。在每个中间阶段,参与者作出回应前需要验证所收到信息的正确性。在协议结束时,每个参与者应该能够验证最终结果的正确性。

4.1.2安全协议的安全性5.不可否认性

不可否认性主要是指通信主体提供对方参与协议的证据,以此来保证其合法权益不受侵害。常用的实现不可否认性的方法是数字签名。正确性

正确性是安全协议的重要特征。只有正确完善的协议才能得到广泛的应用,否则不法分子会利用安全协议中存在的漏洞发起攻击,造成用户的损失。公平性

公平性是指协议应保证双方都不能通过损害对方的利益来获取不应有的利益。

4.1.3针对安全协议的常见攻击和防范措施针对不同类型的安全协议的攻击方法主要有以下几种:窃听窃听是最基本的攻击方式,也是唯一的一种被动攻击方式。重放攻击攻击者通过窃取并复制用户之间的通信内容,然后将用户之前发送的消息重放到信道中,让另一用户误以为对方又进行了新一轮的认证,会造成双方的通信内容泄露。

篡改篡改包括修改、删除等方式。这是一种主动攻击方式,主要破坏数据的完整性。拒绝服务攻击拒绝服务攻击是一种阻止合法用户完成协议的方法。在实际中,一般针对多客户端连接的服务器,通过发起大量的服务请求来消耗服务器的系统资源,使服务器无法向正规用户提供服务。

4.2.1身份认证的概念4.2.2零知识身份证明协议4.2.3询问应答协议4.2身份认证协议

4.2.1身份认证的概念身份认证又称为身份识别,指的是在正式通信开始之前,某项服务的申请者向服务提供者证明自己的真实身份与其所声称的身份相符的过程。

目前,常见的身份认证技术大体上可以分为三类:基于口令的认证技术、双因子身份认证技术、基于生物特征的认证技术。基于口令的认证方法也存在以下几点不足:以明文方式输入口令,很容易被内存中运行的黑客程序记录下来而造成口令泄露;口令在传输、修改过程中都涉及较多的安全问题;攻击者可以利用服务系统中存在的漏洞间接获取用户口令,并通过字典穷举法猜测口令信息;只能进行单向认证,即只能是系统认证用户,而用户却无法对系统进行认证。

4.2.1身份认证的概念双因子认证(Two-FactorAuthentication,2FA),其中的一个因子是只有用户本人知道的密码,另一个因子是只有该用户才拥有的外部物理实体。

例如,现实生活中使用银行卡在ATM机上取款就是双因子身份认证的一个实例。取款人必须拥有一张银行卡并知晓其密码,才能在ATM机上顺利取款。这就弥补了“用户名+口令”这种认证方式容易造成泄露的缺点。

基于生物特征的认证技术,相当于在身份认证中加入一些标识个人身份的生物特征作为第三个认证因子,这就形成了三因子认证。

基于生物特征识别的身份认证技术具有以下优点:不易遗忘、丢失或被盗;防伪性能好,不易伪造;随时随地可用。

4.2.2零知识身份证明协议零知识证明(ZeroKnowledgeProof),是由S.Goldwasser等人在20世纪80年代设计的一种密码协议,证明者向验证者证明并使其相信自己知道或拥有某个消息,但证明过程不能向验证者泄露任何关于被证明消息的信息。零知识证明起源于最小泄露证明。假设P是掌握了某些信息并希望证实这一事实的实体,而V是证明这一事实的实体。假如某个协议向V证明P的确掌握某些信息,但V无法推断出这些信息是什么,我们就称P实现了最小泄露证明。不仅如此,如果V除了知道P能够证明某一事实外,不能得到其它任何知识,那么我们就称P实现了零知识证明,相应的协议即为零知识协议。

4.2.2零知识身份证明协议A,B,C,D表示洞穴中的四个位置,A是洞口,B位于由C或D通往洞口A的必经之路上,C和D之间有一道密门,密门只能用唯一的咒语来打开。证明者P需要向验证者V证明他知道咒语这一事实,但同时又不能让V知道这个咒语。假设P在使用咒语来开门的时候,V听不到这一过程,无法获知这个咒语的任何情况。则具体的认证过程如下:V站在洞穴的A处;P走进洞穴,并站在C或D的任意一处;V走到B处;V让P从左边或者右边走出来;P按照V的要求走出;P和V重复上述过程多次,直到V相信P确实知道打开密门的咒语为止。

4.2.3询问应答协议采用询问应答方式的身份认证协议是按照“验证者提出问题,证明者做出回答,验证者对回答进行验证”的顺序对身份进行认证。Schnorr身份认证协议是一种常用的询问应答认证协议。因其具有计算量和通信量较少的特点,这种协议特别适用于如智能卡这样的硬件性能受限的应用环境。Schnorr协议的安全性是基于离散对数计算的困难性,而且该协议需要一个可信的第三方,即可信中心TA(TrustedAuthority)。每位用户需要向TA申请自己的公钥和私钥,并将自己的公钥公开。

4.2.3询问应答协议Schnorr利用离散对数的知识证明,设计出一个身份证明协议。首先,证明者P选取两个大素数p和q,q是p-1的大素因子,并选择一个q

阶元素g∈Zp*满足gq≡1modp(g≠1),然后选取一个随机数x(1<x<q),计算y≡g-xmodp,将(p,q,g,y)作为公钥,x作为私钥。P要向验证者V证明他知道私钥x,步骤如下:P选取一个随机数k,且0≤k≤q-1,并计算r≡gk

modp,然后将r传给V;V选取一个随机数e,且1≤e≤2t(t≤|q|),并将e传给P;P计算s≡k+xemodq,将s传给V;V验证r≡gsye

modq是否成立,若成立,则相信证明者P知道y对g的离散对数,从而相信证明者的身份。

密钥建立是指为两个或者多个参与方生成共享密钥。共享密钥是指对称密码算法中使用的密钥,也称为会话密钥。密钥的建立主要包括密钥协商、密钥分配和密钥更新,本节将对这三方面的内容进行介绍。4.3密钥建立协议

4.3.1密钥协商协议4.3.2密钥分发协议

4.3.3密钥更新协议4.3密钥建立协议4.3.1密钥协商协议密钥协商(KeyAgreement)是一个协议,它通过两个或多个成员在一个公开的信道上通信来协商建立一个会话密钥。1976年,W.Diffie和M.E.Hellman在论文NewDirectionsinCryptography中首次提出了公钥密码的概念,并进一步提出了Diffie-Hellman密钥交换协议。Diffie-Hellman协议是第一个密钥协商协议,它的安全性依赖于有限域上计算离散对数的难度。4.3.1密钥协商协议假设Alice和Monica想要进行通话,就可以使用Diffie-Hellman协议来进行密钥协商,并产生会话密钥。密钥协商算法的具体过程如下:首先Alice和Monica协商一个大素数q和一个整数a,a∈Zq是模q的本原元;

Alice随机产生一个大整数XA,计算YA=aXAmodq,然后把YA发给Monica;Monica随机产生一个大整数XB,计算YB=aXB

modq,然后把YB发送给Alice;Alice计算K=(YB)XAmodq;Monica计算K’=(YA)XBmodq。其中,K=K’=aXAXB

modq,即为双方协商出的密钥。

4.3.2密钥分发协议密钥分发(KeyDistribution)是指系统中的一个成员选择一个秘密密钥并把它传送给与他通信的其他成员的过程。根据参与形式的不同,密钥分发的模式主要有两种:直接分发和第三方分发。密钥直接分发模式会话密钥K是由用户A产生,并通过KDC安全地传送给B。用户A首先向KDC请求分发密钥,KDC产生通信密钥K之后,通过安全方式分别传给A和B。密钥分发中心(KeyDistributionCenter,KDC)作为可信第三方为用户A和B分发通信密钥K。4.3.3密钥更新协议

在实际应用中,由于密钥算法大多是基于数学难题的计算困难性,而且会存储在用户一方。为了确保密钥和通信过程的安全性,密钥管理系统一般都会对密钥设置生存周期并对密钥进行定期的更新。

在实际应用过程中,由于用户使用密钥的种类不同,密钥更新过程被划分为三个层次。对于通信系统的用户而言,其所拥有的密钥除了与他人进行通信的会话密钥之外,还包括密钥加密密钥和根密钥。

其中,根密钥一般只在安装的时候使用,其它时候很少被用到,也就很少被更新;密钥加密密钥需要TA一起参与更新,主要用于对会话密钥的安全传输和更新过程。在这个拥有三个层次的密钥更新系统中,当会话密钥需要更新时,系统就使用密钥加密密钥对新的会话密钥进行加密;当密钥加密密钥需要更新时,系统就使用根密钥对新的密钥加密密钥进行加密。小结

安全协议,是两个或两个以上的参与者为完成某项特定的任务而采取的一系列具有安全性功能的步骤。在不安全的网络信道上进行通信和信息交换,需要保证通信双方的身份真实性和信息传输的安全性。安全协议的功能主要包括对网络中各个实体的认证、网络中实体之间进行密钥的分发和管理以及对消息发送或接收的不可否认性处理。

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论