chap10-密钥管理以及其他公钥体制.ppt

  1. 1、本文档共25页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
* * 密钥管理和其他公钥密码体制 10.1 Diffie-Hellman密钥交换算法 Diffie和Hellman在其里程碑意义的文章中,虽然给出了密码的思想,但是没有给出真正意义上的公钥密码实例,也既没能找出一个真正带陷门的单向函数 然而,他们给出单向函数的实例,并且基于此提出Diffie-Hellman密钥交换算法 Diffie-Hellman密钥交换 允许两个用户可以安全地交换一个秘密信息,用于后续的通讯过程 算法的安全性依赖于计算离散对数的难度 素数p的原始根定义:如果a是素数p的原始根,则数 a mod p, a2 mod p, … , ap-1 mod p 是不同的并且包含1到p-1的整数的某种排列。 对任意的整数b,我们可以找到唯一的幂i满足 b=ai mod p 0=i=(p-1) i 在离散对数算法中称为以a为基的指数 mod p。记为inda,p(b) Diffie-Hellman密钥交换协议描述 Alice和Bob协商好一个大素数p,和大的整数g,1gp,g最好是FP中的本原元(原始根),即FP*=g p和g无须保密,可为网络上的所有用户共享 。 Diffie-Hellman密钥交换协议描述 当Alice和Bob要进行保密通信时,他们可以按如下步骤来做: (1) Alice选取大的随机数x,并计算 X = gx(mod P) (2) Bob选取大的随机数x?,并计算 X ? = gx ?(mod P) (3) Alice将X传送给Bob;Bob将X ?传送给Alice (4) Alice计算K= (X ?)X(mod P); Bob计算K ? =(X) X ?(mod P), 易见,K = K ? =g xx ?(mod P) 由(4)知,Alice和Bob已获得了相同的秘密值K 双方以K作为加解密钥以传统对称密钥算法进行保密通信 Generate random Xa p Calculate Ya=aXa mod p Generate random Xb p Calculate Yb=aXb mod p User A User B Ya Yb Calculate K=(Yb)Xa mod p Calculate K=(Ya)Xb mod p Diffie-Hellman Key Exchange 交换示例 为了计算简单,使用很小数字。设P=47和47的一个原元,a=3。 A选择秘密密钥XA=8,B选择秘密密钥XB=10,各自计算其公开密钥。 (1)双方各自计算 用户A计算: YA=3 8mod 47=6561 mod 47=28 mod 47 用户B计算: YB=3 10mod 47= 59049 mod 47=17 mod 47 (2)交换YA和YB; (3)交换密钥后,A、B分别计算共享的秘密会话密钥KA、KB: 用户A计算: KA=YB XA mod 47=178 mod 47=4 mod 47 用户B计算: KB=YA XB mod 47=2810 mod 47=4 mod 47 A和B双方独立地决定采用4作为会话密钥。   Alice和Bob首先商议好p的值,本例假设为p=2579,则本原元为a=2。   假设Alice要发送消息x=1299给Bob,则   1)Bob选择随机数r=765作为自己的私钥,计算q=2^r mod p=2^756 mod 2579=949,作为公钥给Alice;   2)Alice选择随机数k=853,计算y=2^k mod p=2^853 mod 2579=435,作为公钥给Bob;   3)Alice计算密文e=x*q%k mod p=1299*949^853 mod 2579=2396,并传递给Bob;   4)Bob接收到密文后,计算x=e*(y^r)^(-1) mod p=2396*(435^765)^(-1) mod 2579=1299,从而得到原文。 Diffie-Hellman安全性 离散对数的计算: y?gx mod p 已知g,x,p,计算y是容易的 已知y,g,p,计算x是困难的 1. Discrete Logarithm Problem (DLP) 离散对数问题 令质数p满足p-1含有另一大质数q (q整除p-1)及一整数g, 1g p-1。 若给定整数x, 求y = gx mod p, 最多需要Llog2x?+w(x)-1次乘法, w(x)为x中所有1的个数。如x =15, 即 x =(11

文档评论(0)

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

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

1亿VIP精品文档

相关文档