数字签名与认证技术.ppt
《数字签名与认证技术.ppt》由会员分享,可在线阅读,更多相关《数字签名与认证技术.ppt(82页珍藏版)》请在三一办公上搜索。
1、第5章 数字签名与认证技术,哈希函数数字签名 消息鉴别 身份认证 身份认证实例Kerberos数据保护工具,目录,哈希函数概念,哈希函数,也称为单向散列函数、杂凑函数或消息摘要算法。它通过把一个单向数学函数应用于数据,将任意长度的一块数据转换为一个定长的、不可逆转的数据。哈希函数H能用于任意大小的分组,产生定长的输出;对任何给定的x,H(x)要相对易于计算,使得硬件和软件实现成为实际可能;单向性;弱抗冲突性;即强抗冲突性。,哈希函数必须具有的特性,单向性:给定M和H,求hH(M)容易,但反过来给定h,寻找一个M使H(M)=h在计算上是不可行的;抗弱碰撞:给定M,要寻找另一信息 M,满足 H(M
2、)H(M)在计算上不可行;抗强碰撞:要寻找不同的信息M 和M,满足 H(M)H(M)在计算上不可行。(概率论:生日攻击),生日悖论,生日问题:一个教室中,最少应有多少学生,才使至少有两人具有相同生日的概率不小于1/2?概率结果与人的直觉是相违背的.实际上只需23人,即任找23人,从中总能选出两人具有相同生日的概率至少为1/2。【分析】:生日的取值范围:1-365 不同输入的个数:23,IV:初始值,CV:链接值,Yi:第i个输入数据块,f:压缩算法,n:散列码长度,b:输入块的长度。,哈希函数的一般结构图,MD5算法,输入:任意长度的消息输出:128bit消息摘要处理:以512bit分组为处理
3、单位注:MD5 was developed by Ron Rivest(“R”of the RSA)at MIT in 1990s,MD5算法结构图,在MD5算法中的处理步骤包括以下过程:首先,需要对消息进行填充。其次,将MD缓冲初始化。当设置好这四个链接变量后,就开始进入算法的四轮循环运算,循环的次数是信息中512位信息分组的数目。输出散列值。所有L个512比特的分组处理完成后,第L阶段输出的结果便是消息M的信息摘要。,MD5算法结构图,MD5的单步操作,MD5的安全性,2004年,山东大学王小云教授证明了从理论上可以破解MD5-即找到MD5的碰撞,两个不同的文件可以产生相同的摘要。2004
4、年8月美国加州召开的国际密码学会议,王小云做了破译MD5等算法的报告,产生了很大的影响。MD5设计者说到:“这些结果无疑给人非常深刻的印象,她应当得到我最热烈的祝贺,虽然我不希望看到MD5这样倒下,但人必须尊重真理”,哈希函数数字签名 消息鉴别 身份认证 身份认证实例Kerberos数据保护工具,数字签名的引入,如何应对以下的攻击方式发送方不承认自己发送过某一报文接收方自己伪造一份报文,并声称它来自发送方某个用户冒充另一个用户接收或发送报文接收方对收到的消息进行修改数字签名可以解决以上争端,数字签名概念,数字签名就是利用一套规则对数据进行计算的结果,用此结果能确认签名者的身份和数据的完整性(美
5、国DSS对数字签名的解释),数字签名应满足三个基本条件,签名者不能否认自己的签名;接收者能够验证签名,而其他任何人都不能伪造签名;当签名的真伪发生争执时,存在一个仲裁机构或第三方能够解决争执。,数字签名根据签名方式可以分为,直接数字签名(direct digital signature)仲裁数字签名(arbitrated digital signature)。,(1)采用公开密钥的数字签名,使用发方的私钥对消息M进行数字签名(此时并没有对消息进行加密,因为任何人都可以获得公钥对消息M进行查看),直接数字签名,具有保密性的公钥数字签名,(2)具有保密功能的公钥数字签名,直接数字签名,比较,KRA
6、,(3)采用消息摘要的数字签名,M,M,A 发方,B 收方,KUA,EKRAH(M),使用消息摘要的数字签名(不需要对整个消息进行签名,速度更快),H,E,|,H,D,直接数字签名,直接数字签名方案:仅涉及通信双方。签名方案的有效性依赖于发送方的私密密钥的安全性;发送方要抵赖发送某一消息时,可能会声称其私有密钥丢失或被窃,且他人伪造了他的签名。,直接数字签名的问题,需要仲裁的数字签名,引入仲裁者来解决直接签名方案的问题。通常的做法是:所有从发送方A到接收方B的签名消息首先送到仲裁者Y,Y将消息及其签名进行一系列测试,以检查其来源和内容,然后将消息加上日期并与已被仲裁者验证通过的指示一起发给B。
7、思考:A还能否认他的签名吗?仲裁者在这一类签名模式中扮演敏感和关键的角色。所有的通信方必须充分信任仲裁机构。,需要仲裁的数字签名,仲裁者是除通信双方之外,值得信任的公正的第三方;“公正”意味着仲裁者对参与通信的任何一方没有偏向。“值得信任”表示所有人都认为仲裁者所说的都是真实的,所做的都是正确的。举例:律师、银行、公证人(现实生活)在计算机网络中,由可信机构的某台计算机充当。,(1)对称加密,仲裁能看到消息,IDA:发送方A的标识符 签名:EKAY IDAH(M)KAY:A和Y共享的对称密钥,需要仲裁的数字签名,(1)对称加密,仲裁能看到消息解决纠纷:B:向Y发送EKYBIDA|M|EKAYI
8、DA|H(M)Y:用KYB恢复IDA,M,和签名EKAYIDA|H(M),然后 用KAY解密签名并验证哈希值,从而验证A的签名。,需要仲裁的数字签名,(2)对称加密,仲裁不能看到消息,AB之间共享的密钥KAB对消息进行加密,仲裁Y看不到消息的明文。双方仍然要高度信任Y。签名:EKAYIDAH(EKABM),需要仲裁的数字签名,(3)公开密钥加密,仲裁不能看到消息,B,IDAEKRA IDAEKUB(EKRAM),EKRY IDAEKUBEKRAMT,A,Y,仲裁Y通过 EKRA IDAEKUB(EKRAM)进行解密,可以确信消息一定来自于A(因为A才有KRA)签名:EKRA IDAEKUB(E
9、KRAM),需要仲裁的数字签名,需要仲裁的数字签名,(3)公开密钥加密,仲裁不能看到消息 本签名方案比上述两个方案具有以下优点:1、在通信之前各方之间无须共享任何信息,从而避免了结盟欺骗的发生;2、即使KRA 暴露,只要KRY 未暴露,不会有日期错误标定的消息被发送;3、从A发送给B的消息的内容对Y和任何其他人是保密的。,数字签名方案,普通数字签名体制 RSA EIGamal DSS/DSA盲签名体制,盲签名体制,盲签名是根据电子商务具体的应用需要而产生的一种签名应用。当需要某人对一个文件签名,而又不让他知道文件的内容,这时就需要盲签名。盲签名与普通签名相比有两个显著的特点:签名者不知道所签署
10、的消息内容;签名被接收者泄漏后,签名者无法追踪签名;也即,如果把签名的消息报文给签名者本人看,他只能确信是自己的签名,而无法知道什么时候、对什么样的盲消息进行了签名。应用:电子选举(投票)、电子货币(存取款、转帐),盲签名体制,接收者B首先将待签的明文消息M进行盲变换,把变换后的盲消息发送给签名者A;经过A签名后,消息发送给接收者B;接收者B对签名做去盲变换,得出的便是签名者A对原数据的盲签名。盲签名原理图,RSA盲签名算法,算法描述:(1)接收者B对待签消息M进行盲化处理:随机选择盲化参数k,1kM,并计算:T=M Ke mod n(2)B将盲化消息T发送给A(由于k未知,A无法看到明文消息
11、M)(3)A对盲消息T签名:Td=(MKe)d mod n=MdK mod n(4)A把对T的签名发送给接收者B;(5)B通过计算得到A对M的签名:S=Td/K mod n=Md mod n,哈希函数数字签名 消息鉴别 身份认证 身份认证实例Kerberos数据保护工具,概念,认证(Authentication),又称鉴别,是对用户身份或报文消息来源及内容的验证。它是防止主动攻击的重要技术,是保证信息完整性、有效性的技术,即要搞清楚与之通信的对方身份是否真实,又要证实信息在传输过程中是否被篡改、伪装、窜扰、否认。认证的主要分为两个方面:身份/实体认证,即验证信息发送者是真的,而不是冒充的,包括
12、信源、信宿等的认证和识别;消息/报文认证,验证信息的完整性,即验证数据在传输或存储过程中未被窜改、重放或延迟等。,认证系统的模型,纯认证系统的模型,公开信道,认证函数,认证编码器和认证译码器可抽象为认证函数。认证函数产生一个认证标识(authentication identification)给出合理的认证协议(authentication protocol)接收者完成消息的认证(authentication)一个安全的认证系统,需满足(1)接收者能检验和证实消息的合法性、真实性和完整性(2)消息的发送者和接收者不能抵赖(3)除了合法的消息发送者,其它人不能伪造合法的消息,认证函数分类,认证的
13、函数分为三类:消息加密函数(Message encryption)用完整信息的密文作为对信息的认证。消息认证码MAC(Message Authentication Code)是对信源消息的一个编码函数。散列函数(Hash Function)是一个公开的函数,它将任意长的信息映射成一个固定长度的信息。,M,E,K,EK(M),D,M,K,提供保密提供认证(仅来自Bob,传输中没有被更改)不提供签名(Bob可以否认发送过消息M),Bob,Alice,对称加密:保密性与认证,认证函数1:加密函数,认证函数1:加密函数,公钥加密:认证与签名,M,D,KRB,EKRB(M),E,M,KB,提供认证(仅B
14、ob有KRB可以进行加密 传输中没有被更改 任何一方均可以使用KUB验证签名)提供签名(Bob不可否认),Bob,Alice,公钥加密:保密、认证与签名,M,D,KUA,EKUA(DkRb(M),D,KRA,提供认证提供签名提供保密性,E,KRB,DkRB(M),DkRB(M),E,KUB,M,Bob,Alice,认证函数1:加密函数,认证函数2:消息认证码,消息认证码:使用一个密钥生成一个固定大小的短数据块,并将该数据块加载到消息后面,称MAC(或密码校验和)MACCk(M)MAC函数类似于加密函数,但不需要可逆性。因此在数学上比加密算法被攻击的弱点要少,MAC的计算,基于DES的消息认证码
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数字签名 认证 技术

链接地址:https://www.31ppt.com/p-6165489.html