数字签名算法-read.ppt

  1. 1、本文档共67页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
数字签名算法-read

第9章 数字签名与身份认证 数字签名 数字签名(Digital Signature)是公开密钥体系加密技术发展的一个重要的成果。 不可否认性的应用需求 网络通信中,希望有效防止通信双方的欺骗和抵赖行为。 简单的报文鉴别技术只能使通信免受来自第三方的攻击,无法防止通信双方之间的互相攻击。 Y 伪造一个不同的消息,但声称是从 X 收到的; X可以否认发过该消息,Y 无法证明 X 确实发了该消息; 原因:鉴别技术基于秘密共享。 数字签名技术为此提供了一种解决方案。 数字签名的功能 是对现实生活中笔迹签名的功能模拟。 必须能够用来证实签名的作者和签名的时间。 对消息进行签名时,必须能够对消息的内容进行鉴别。 签名应具有法律效力,必须能被第三方证实用以解决争端。 必须包含对签名进行鉴别的功能。 数字签名的设计目标 签名的比特模式是依赖于消息报文的,也就是说,数据签名是以消息报文作为输入计算出来的,签名能够对消息的内容进行鉴别; 数据签名对发送者来说必须是惟一的,能够防止伪造和抵赖; 产生数字签名的算法必须相对简单易于实现,且能够在存储介质上保存备份; 对数字签名的识别、证实和鉴别也必须相对简单,易于实现; 伪造数字签名在计算上是不可行的,无论攻击者采用何种方法(利用数字签名伪造报文,或者对报文伪造数字签名)。 数字签名的解决方案 可分为两类: 直接数字签名方案; 基于仲裁的数字签名方案。 直接数字签名 实现比较简单,在技术上仅涉及到通信的源点X和终点Y双方。 终点Y需要了解源点X的公开密钥Kux。 发送方A可以使用其私有密钥KRx对整个消息报文进行加密来生成数字签名。 更好的方法是使用KRx对消息报文的散列码进行加密来形成数字签名。 直接数字签名的安全性 方案的安全性依赖于发送方X私有密钥的安全性。 发送方可以声称自己的私有密钥丢失或被盗用,而否认其发送过某个报文。 改进:每个签名报文中包含一个时间戳。 问题: X 的私有密钥确实在时间 T 被窃取; 攻击者窃取 X 的密钥后,则可能发送带有 X 的签名报文,附上一个等于 T 的时间戳,接受者无法判别。 基于仲裁的数字签名 通过引入仲裁来解决直接签名方案中的问题。 仲裁者必须是一个所有通信方都能充分信任的仲裁机构。 基本工作方式(假定用户X和Y之间进行通信): 每个从X发往Y的签名报文首先被送给仲裁者A; A检验该报文及其签名的出处和内容,然后对报文注明日期,并附加上一个“仲裁证实”的标记发给Y。 基于仲裁的数字签名--对称密钥加密方式 发送方X和仲裁A共享一个密钥Kax 。 数字签名由X的标识符IDx和报文的散列码H(M)构成 ,用密钥Kax进行加密。 过程: (1)X → A :M‖EKax( IDx‖H(M) )。 (2)A → Y :EKay( IDx‖M‖EKax( IDx‖H(M) )‖T )。 (3) Y存储报文M及签名。 基于仲裁的数字签名--对称密钥加密方式 争端解决方式 Y → A :EKay( IDx‖M‖EKax( IDx‖H(M) ) )。 仲裁A可用Kay恢复出IDx 、M及签名,然后再用Kax对签名解密并验证其散列码。 特点: Y 不能直接验证 X 的签名。 双方都需要高度相信 A Y 相信 A 已对消息认证,X 不能否认其签名; X 信任 A 没有暴露 Kxa,无人可伪造 DS; 双方都信任 A 处理争议是公正。 问题: 报文 M 明文传送给,有可能被窃听。 基于仲裁的数字签名--对称密钥加密方式 明文加密的方案 (1)X → A :IDx‖EKxy (M)‖EKax( IDx‖H (EKxy(M)) )。 (2)A → Y :EKay( IDx‖EKxy (M)‖EKax( IDx‖H (EKxy(M))‖T )。 特征: X 与 Y 之间共享密钥 Kxy 。 DS 的构成:IDx 和消息密文的散列码用 Kxa 加密。 DS 的验证:A 解密签名,用散列码验证消息。 A 只能验证消息的密文,而不能读取其内容。 A 将来自 X 的所有信息加上时间戳并用 Kay 加密后发送给Y 。 问题: A 和发送方 X 联手可以否认签名的信息。 A和接收方 Y 联手可以伪造发送方 X 的签名。 基于仲裁的数字签名—公开密钥加密方式 特点:仲裁者看不见消息的内容。 过程: X 对报文 M 进行两次加密。 经过双重加密后,报文 M 只有 Y 能够阅读,A 不能读取 X?A: IDx || EKRx [ IDx || EKUy [ EKRx(M) ] ] A 能进行外层的解密,从而证实报文确实是来自 X 的 因为只有 X 拥有KRx 。 验证后 A 向 Y 发送用 KUy 加密的报文,其中包括时间

文档评论(0)

wangyueyue + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档