- 1、本文档共41页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
数字签名-cislab,sjtu,china
第13章 认证理论 (数字签名与认证协议) 13.1基本概念 数字签名是认证的重要工具 为什么需要数字签名: 报文认证用以保护双方之间的数据交换不被第三方侵犯;但它并不保证双方自身的相互欺骗。假定A发送一个认证的信息给B,双方之间的争议可能有多种形式: B伪造一个不同的消息,但声称是从A收到的。 A可以否认发过该消息,B无法证明A确实发了该消息。 数字签名应满足的要求 收方能确认或证实发方的签字,但不能伪造; 发方发出签名后的消息,就不能否认所签消息; 收方对已收到的消息不能否认; 第三者可以确认收发双方之间的消息传送,但不能伪造这一过程 数字签名应具有的性质 必须能够验证签名者及其签名的日期时间; 必须能够认证被签名消息的内容; 签名必须能够由第三方验证,以解决争议; 数字签名的设计要求 签名必须是依赖于被签名信息的比特模式; 签名必须使用某些对发送者是唯一的信息,以防止双方的伪造与否认; 必须相对容易生成该数字签名; 必须相对容易识别和验证该数字签名; 伪造该数字签名在计算复杂性意义上具有不可行性,既包括对一个已有的数字签名构造新的消息,也包括对一个给定消息伪造一个数字签名; 在存储器中保存一个数字签名备份是现实可行的。 13.2两类数字签名函数 直接数字签名 仅涉及通信双方 有效性依赖发方密钥的安全性 仲裁数字签名 使用第三方认证 13.2.1直接数字签名(DDS) 13.2.1直接数字签名(cont.) 13.2.1直接数字签名的缺点 验证模式依赖于发送方的保密密钥; 发送方要抵赖发送某一消息时,可能会声称其私有密钥丢失或被窃,从而他人伪造了他的签名。 通常需要采用与私有密钥安全性相关的行政管理控制手段来制止或至少是削弱这种情况,但威胁在某种程度上依然存在。 改进的方式例如可以要求被签名的信息包含一个时间戳(日期与时间),并要求将已暴露的密钥报告给一个授权中心。 如X的私有密钥确实在时间T被窃取,敌方可以伪造X的签名并附上早于或等于时间T的时间戳。 13.2.2仲裁数字签名 引入仲裁者。 通常的做法是所有从发送方X到接收方Y的签名消息首先送到仲裁者A,A将消息及其签名进行一系列测试,以检查其来源和内容,然后将消息加上日期并与已被仲裁者验证通过的指示一起发给Y。 仲裁者在这一类签名模式中扮演敏感和关键的角色。 所有的参与者必须极大地相信这一仲裁机制工作正常。(trusted system) 仲裁数字签名技术(1) 单密钥加密方式,仲裁者可以看见消息 (1) X?A:M||EKxa[IDx|| H(M)] (2) A?Y:EKay[IDx|| M || EKxa[IDx|| H(M)] || T] X与A之间共享密钥Kxa,Y与A之间共享密钥Kay X:准备消息M,计算其Hash值H(M),用X的标识符IDx 和Hash值构成签名,并将消息及签名经Kxa加密后发送给A; 仲裁数字签名技术(1) A:解密签名,用H(M)验证消息M,然后将IDx,M,签名,和时间戳一起经Kay加密后发送给Y;Y:解密A发来的信息,并可将M和签名保存起来。 解决纠纷: Y:向A发送 EKay[IDx|| M || EKxa[IDx|| H(M)]] A:用Kay恢复IDx,M,和签名( EKxa[IDx|| H(M)]),然后用Kxa解密签名并验证Hash值. 仲裁数字签名技术(2) 单密钥加密方式,仲裁者不可以看见消息 (1) X?A: IDx || EKxy[M]||EKxa[IDx|| H(EKxy[M])] (2) A?Y:EKay[IDx||EKxy[M] || EKxa[IDx|| H(EKxy[M])] || T] 仲裁数字签名技术(2) 在这种情况下,X与Y之间共享密钥Kxy, X:将标识符IDx ,密文 EKxy[M],以及对IDx和密文消息的散列码用 Kxa加密后形成签名发送给A。 A:解密签名,用散列码验证消息,这时A只能验证消息的密文而不能读取其内容。然后A将来自X的所有信息加上时间戳并用Kay加密后发送给Y。 注意: (1)和(2) 存在一个共性问题: A和发送方联手可以否认签名的信息; A和接收方联手可以伪造发送方的签名; 在这种模式下Y不能直接验证X的签名,Y认为A的消息已认证,只因为它来自A。因此,双方都需要高度相信A: X必须信任A没有暴露Kxa,并且没有生成错误的签名EKxa[IDx|| H(M)] 。 Y必须信任A仅当散列值正确并且签名确实是X产生的情况下才发送的 EKay[IDx|| M || EKxa[IDx|| H(M)] || T] 。双方都必须信任A处理争议是公正的。只要A遵循上述要求,则X相信没有人可以伪造其签名;Y相信X不能否认其签名。上述情况还隐
文档评论(0)