您好,欢迎访问三七文档
认证一、认证的概念认证(Authentication)又称鉴别,确认,它是证实某人某事是否名符其实或是否有效的一个过程。认证往往是许多应用系统中安全保护的第一道设防,因而极为重要。一、认证的概念认证模型要认证的人或事为真吗?参数YesNo人或事为假人或事为真一、认证的概念认证参数有口令、标识符、密钥、信物、智能卡、指纹、视网膜等。一般说来,利用人的生理特征参数进行认证的安全性高,但技术要求也高,至今尚未普及。目前广泛应用的还是基于密码的认证技术。目前主要有:身份认证,站点认证,报文认证一、认证的概念认证和加密的区别:加密用以确保数据的保密性,而认证用以确保报文发送者和接收者的真实性以及报文的完整性。一、认证的概念认证和数字签名的区别:①认证总是基于某种收发双方共享的保密数据来认证被鉴别对象的真实性,而数字签名中用于验证签名的数据是公开的。②认证允许收发双方互相验证其真实性,不准许第三者验证,而数字签名允许收发双方和第三者都能验证。③数字签名具有发送方不能抵赖、接收方不能伪造和能够公开验证解决纠纷,而认证则不一定具备。二、站点认证为了确保通信安全,在正式传送报文之前,应首先认证通信是否在已定的站点之间进行,这一过程称为站点认证。站点认证是通过验证加密的数据能否正确地在两个站点间进行传送来实现的。二、站点认证设A、B是已定的两个站点,A是发送方,B是接收方。利用传统密码体制,则A和B相互认证的过程如下(假定A、B共享保密的会话密钥KS):1.A产生随机数RA1.B产生随机数RB2.A→B:E(RA,KS)2.B接受E(RA,KS)3.A接受E(RA||RB,KS)3.B→A:E(RA||RB,KS)并解密判断RA=RA?4.B接受E(RB,KS)4.A→B:E(RB,KS)5.B判断RB=RB?二、站点认证利用公钥密码,则A和B相互认证的过程如下:1.A产生随机数RA1.B产生随机数RB2.A→B:RA2.B接受RA3.B→A:D(RA||RB,KdB)3.A接受D(RA||RB,KdB)并验证B的签名4.A→B:D(RB,KdA)4.B接受D(RB,KdA)并验证A的签名注意:基于公钥密码的站点认证本质上是利用数字签名来确保A,B的真实性。三、报文认证报文认证必须使通信方能够验证每份报文的发送方、接收方、内容和时间性的真实性和完整性。能够确定:(1)报文是由已知的发送方发出的;(2)报文传送给已知的接收方;(3)报文内容有无篡改或发生错误;(4)报文按确定的次序接收。三、报文认证1、报文源的认证采用传统密码设A为发送方,B为接收方。A和B共享保密的密钥KS。A的标识为IDA,报文为M,在报文中增加标识IDA,那么B认证A的过程如下:A→B:E(IDA||M,KS)B收到报文后用KS解密,若解密所得的发送方标识与IDA相同,则B认为报文是A发来的。三、报文认证1、报文源的认证采用公开密钥密码报文源的认证十分简单。只要发送方对每一报文进行数字签名,接收方验证签名即可:A→B:M,SIG(IDA||M,KdA)B:VER(SIG(IDA||M,KdA),KeA)若收方验证签名正确,则认为发方为真。三、报文认证2、报文宿的认证只要将报文源的认证方法稍加修改便可实现报文宿的认证。采用传统密码在每份报文中加入接收方标识符IDB:A→B:E(IDB||M,KS)若采用公开密钥密码对每份报文用B的公开加密钥进行加密即可。A→B:E(IDB||M,KeB)三、报文认证3、报文内容的认证报文内容认证使接收方能够确认报文内容的真实性,这可通过验证认证码的正确性来实现。消息认证码MAC(MessageAuthenticationCode),是再密钥的控制下将任意长的消息映射到一个简短的定长数据分组,并将它附加在消息后。MAC=C(M,K)。三、报文认证3、报文内容的认证通信双方共享秘密钥K。A计算MAC并将报文M和MAC发送给接收方:AB:M||MAC接收方收到报文M后用相同的秘密钥K重新计算得出新的MAC,并将其与接收到的MAC进行比较,若二者相等,则认为报文正确真实。三、报文认证3、报文内容的认证MMACMMACMAC=C(M,K)=?网络信道NYM真实正确不真实不正确三、报文认证3、报文内容的认证在上述方法中,报文是以明文形式传送的,所以该方法可以提供认证,但不能提供保密性。若要获得保密可在MAC算法之后对报文加密:AB:E(M||MAC,K2)其中MAC=C(M,K1)因为只有A和B共享K1,所以可提供认证;因为只有A和B共享K2,所以可提供保密。三、报文认证3、报文内容的认证注意:MAC算法不要求可逆性而加密算法必须是可逆的;与加密相比,认证函数更不易被攻破;由于收发双方共享密钥,因此MAC不能提供数字签名功能。三、报文认证3、报文内容的认证注意:理论上,对不同的M,应不同产生MAC。因为若M1M2,而MAC1=MAC2,则攻击者可将M1篡改为M2,而接收方不能发现。但是要使函数C具备上述性质,将要求报文认证码MAC至少和报文M一样长,这是不方便的。三、报文认证实际应用时要求函数C具有以下性质:对已知M1和MAC1构造满足MAC2=MAC1的M2在计算上是不可行的;MAC函数应是均匀分布的,即对任何随机的报文M1和M2,MAC1=MAC2的概率是2-n,其中n是MAC的位数;设M2是M1的某个已知的变换,即M2=f(M1),如f改变M1的一位或多位,那么MAC1=MAC2的概率2-n。利用分组密码产生MAC①将需认证的数据进行分组,如128位一组:D1||D2||…||DN,若最后一组不足128位,则用0填满。②用AES加密产生MAC.IVD1AESKO1D2AESKO2DN-1AESKON-1DNAESKON………三、报文认证4、报文时间的认证有三种方法可以实现对报文时间性的认证–(1)初始向量法–收发双方事先约定一组顺序的初始向量Z1,Z2,…,Zn,并用Zi作为初始向量链接加密第i份报文Mi。因为只有使用Zi才能还原Mi,从而接收方便可确认报文的顺序是否正确.–(2)时间参数法–设时间参数为T1,T2,…Tn,发送方在第i份报文中加入时间参数Ti,接收方只要验证一下Ti的顺序是否合理,便可确认报文的顺序是否正确。时间参数可取自然数活年月日时分秒。–(3)随机数法–每当发送方A要发报文给接收方B时,A先通知B,B动态地产生一个随机数RN,并发送给A。A将RN加入报文中,然后加密发送给B。B收到报文后,解密还原RN。若解密所得RN正确,便确认报文的顺序是正确的。三、报文认证
本文标题:7-认证
链接地址:https://www.777doc.com/doc-3358012 .html