欢迎来到天天文库
浏览记录
ID:19785572
大小:400.00 KB
页数:62页
时间:2018-10-06
《杨波《现代密码学(第2版)》07 ppt课件》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、第7章数字签字和密码协议数字签字的基本概念数字签字标准其他签字方案认证协议身份证明技术其他密码协议数字签字由公钥密码发展而来,它在网络安全,包括身份认证、数据完整性、不可否认性以及匿名性等方面有着重要应用。本章首先介绍数字签字的基本概念和一些常用的数字签字算法,然后介绍身份认证协议、身份证明技术以及其他一些常用的密码协议。7.1数字签字的基本概念7.1.1数字签字应满足的要求消息认证的作用是保护通信双方以防第三方的攻击,然而却不能保护通信双方中的一方防止另一方的欺骗或伪造。通信双方之间也可能有多种形式的欺骗,例如通信双方A和B(设A为发方,B为收方)使用图6
2、.1所示的消息认证码的基本方式通信,则可能发生以下欺骗:①B伪造一个消息并使用与A共享的密钥产生该消息的认证码,然后声称该消息来自于A。②由于B有可能伪造A发来的消息,所以A就可以对自己发过的消息予以否认。这两种欺骗在实际的应用中都有可能发生:例如在电子资金传输中,收方增加收到的资金数,并声称这一数目来自发方。又如用户通过电子邮件向其证券经纪人发送对某笔业务的指令,以后这笔业务赔钱了,用户就可否认曾发送过相应的指令。因此,在收发双方未建立起完全的信任关系且存在利害冲突的情况下,单纯的消息认证就显得不够。数字签字技术则可有效解决这一问题。类似于手书签字,数字签
3、字应具有以下性质:①能够验证签字产生者的身份,以及产生签字的日期和时间。②能用于证实被签消息的内容。③数字签字可由第三方验证,从而能够解决通信双方的争议。由此可见,数字签字具有认证功能。为实现上述3条性质,数字签字应满足以下要求:①签字的产生必须使用发方独有的一些信息以防伪造和否认。②签字的产生应较为容易。③签字的识别和验证应较为容易。④对已知的数字签字构造一新的消息或对已知的消息构造一假冒的数字签字在计算上都是不可行的。7.1.2数字签字的产生方式数字签字的产生可用加密算法或特定的签字算法。1.由加密算法产生数字签字利用加密算法产生数字签字是指将消息或消息
4、的摘要加密后的密文作为对该消息的数字签字。其用法根据是单钥加密还是公钥加密而有所不同。(1)单钥加密如图7.1(a)所示,发送方A根据单钥加密算法以与接收方B共享的密钥K对消息M加密后的密文作为对M的数字签字发往B。该系统能向B保证所收到的消息的确来自A,因为只有A知道密钥K。再者B恢复出M后,可相信M未被篡改,因为敌手不知道K就不知如何通过修改密文而修改明文。具体来说,就是B执行解密运算Y=DK(X),如果X是合法消息M加密后的密文,则B得到的Y就是明文消息M,否则Y将是无意义的比特序列。图7.1消息加密产生数字签字的基本方式(2)公钥加密如图7.1(b)
5、所示,发送方A使用自己的秘密钥SKA对消息M加密后的密文作为对M的数字签字,B使用A的公开钥PKA对消息解密,由于只有A才拥有加密密钥SKA,因此可使B相信自己收到的消息的确来自A。然而由于任何人都可使用A的公开钥解密密文,所以这种方案不提供保密性。为提供保密性,A可用B的公开钥再一次加密,如图7.1(c)所示。下面以RSA签字体制为例说明数字签字的产生过程。①体制参数。选两个保密的大素数p和q,计算n=p×q,φ(n)=(p-1)(q-1);选一整数e,满足16、公开钥,{d,n}为秘密钥。②签字过程。设消息为M,对其签字为S≡Mdmodn③验证过程。接收方在收到消息M和签字S后,验证是否成立,若成立,则发送方的签字有效。实际应用时,数字签字是对消息摘要加密产生,而不是直接对消息加密产生,如图6.3(a)~图6.3(d)所示。由加密算法产生数字签字又分为外部保密方式和内部保密方式,外部保密方式是指数字签字是直接对需要签字的消息生成而不是对已加密的消息生成,否则称为内部保密方式。外部保密方式便于解决争议,因为第3方在处理争议时,需得到明文消息及其签字。但如果采用内部保密方式,第3方必须得到消息的解密密钥后才能得到明文消7、息。如果采用外部保密方式,接收方就可将明文消息及其数字签字存储下来以备以后万一出现争议时使用。2.由签字算法产生数字签字签字算法的输入是明文消息M和密钥x,输出是对M的数字签字,表示为S=Sigx(M)。相应于签字算法,有一验证算法,表示为Verx(S,M),其取值为算法的安全性在于从M和S难以推出密钥x或伪造一个消息M′使M′和S可被验证为真。7.1.3数字签字的执行方式数字签字的执行方式有两类:直接方式和具有仲裁的方式。1.直接方式指数字签字的执行过程只有通信双方参与,并假定双方有共享的秘密钥或接收一方知道发方的公开钥。直接方式的数字签字有一公共弱点,即8、方案的有效性取决于发方秘密钥的安全性。如果发方想对已
6、公开钥,{d,n}为秘密钥。②签字过程。设消息为M,对其签字为S≡Mdmodn③验证过程。接收方在收到消息M和签字S后,验证是否成立,若成立,则发送方的签字有效。实际应用时,数字签字是对消息摘要加密产生,而不是直接对消息加密产生,如图6.3(a)~图6.3(d)所示。由加密算法产生数字签字又分为外部保密方式和内部保密方式,外部保密方式是指数字签字是直接对需要签字的消息生成而不是对已加密的消息生成,否则称为内部保密方式。外部保密方式便于解决争议,因为第3方在处理争议时,需得到明文消息及其签字。但如果采用内部保密方式,第3方必须得到消息的解密密钥后才能得到明文消
7、息。如果采用外部保密方式,接收方就可将明文消息及其数字签字存储下来以备以后万一出现争议时使用。2.由签字算法产生数字签字签字算法的输入是明文消息M和密钥x,输出是对M的数字签字,表示为S=Sigx(M)。相应于签字算法,有一验证算法,表示为Verx(S,M),其取值为算法的安全性在于从M和S难以推出密钥x或伪造一个消息M′使M′和S可被验证为真。7.1.3数字签字的执行方式数字签字的执行方式有两类:直接方式和具有仲裁的方式。1.直接方式指数字签字的执行过程只有通信双方参与,并假定双方有共享的秘密钥或接收一方知道发方的公开钥。直接方式的数字签字有一公共弱点,即
8、方案的有效性取决于发方秘密钥的安全性。如果发方想对已
此文档下载收益归作者所有