- 1、本文档共38页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
公钥密码与身份认证技术 计算机安全保密技术课程 教学课件
公钥密码与身份认证技术 公钥密码 RSA 背包密码 Diffie-Hellman密钥分配 背包密码-MH方案 设计 A简(1,3,7)→ B难(2,6 ,3) 陷门信息: m= 11,t =2 , t-1 = 6 公钥 —— B 私钥 —— A ,m, t , t-1 加密 (公钥) : 明文分组 P1 , ..., Pi ...... 如 Pi = 101 E: BPi = (2, 6, 3) (1 0 1)T = 2+3 =5 密文=b 解密 (私钥) 恢复简单背包长 t-1 b=6*5=30=8 (mod 11)=a 解简单背包 AX=a → X=101 = P 明文 背包密码- 变形体制 设计 陷门 mmax A t = [ log2 m ] +1 H t 2t 由 HA=(20 21 ........ 2t-1 )T 求 A (解线性方程组) 公钥 A = {ai }12t = (14,15,19,16,3,24,10,5,2,7) 私钥 Ht 2t ,m , t 发方S 特殊加密(数字签名): 明文 a∈[1,m-1] → 变换为t 比特 例 a=22 B=(01101) BH(私钥)= C 签名 (2,3,2,2,2,1,0,1,2,2) 收方R检验:S→R : (a明文,C签名) CA = ? a 明文(mod m ) 证明 a = B (20 21 ........ 2t-1 )T = BHA = CA (mod m) 例 A= (14,15,19,16, 3,24,10,5,2,7) C密文=(2,3,2,2,2,1,0,1,2,2) AC = (14,15,19,16,3,24,10,5,2,7)(2,3,2,2,2,1,0,1,2,2)T = 196= 22 (mod 29) m=29 t=5 Diffie-Hellman密钥分配 Diffie-Hellman算法 Diffie,Hellman在1976年的IEEE Trans. on Information Theory,vol IT.22, No. 6上的奠基性文章“New Directions in Cryptography”提出了公钥体制思想,提出了单向函数 (One-way function)、陷门(Trapdoor)的概念,并提出从 计算复杂性出发来研究密码。 其对应的算法称为Diffie-Hellman算法 Diffie-Hellman密钥分配方案 成员A和成员B先协商选好大素数q和Fq的一个素根α。Diffie- Hellman密钥分配: 成员A随机产生一个数XAq,计算YA=αXA mod q并将YA发送给成员B; 成员B随机产生一个数XBq,计算YB=αXB mod q并将YB发送给成员A; 成员A计算KA =(YB) XA mod q,成员B计算 KB =(YA) XB mod q,显然, KA= KB = αXAXB 。 Diffie-Hellman密钥分配方案 Diffie-Hellman密钥分配方案 注意,Diffie-Hellman密钥分配方案必须结合实体认证才有用,否则会受到中间人攻击。 Diffie-Hellman分配方案的显著优点:限制了密码系统遭遇的危及对初始密钥的影响。如果用公钥加密,一旦系统破解,则所有的被保护的初始密钥和所有被这些初始密钥加密的信息受到危及。但是, Diffie-Hellman分配方案的初始密钥受到危及,不会影响其他的初始密钥。 Diffie-Hellman算法的安全性 Diffie-Hellman算法的安全性来自计算离散对数的复杂程度 具体来说,就是虽然知道YA=αXA mod q和YB=αXB mod q ,难以求出XA和XB。 对于大素数q,计算是不可行的 Diffie-Hellman算法的例子 确定系统中使用的素数q = 97, 以及97的一个素根 a = 5. A选择秘密密钥 XA = 36,计算出 YA = 536 mod 97 = 50 B选择秘密密钥 XB = 58,计算出 YB = 558 mod 97 = 44 交换YA和YB后 A计算K = (YB)XA mod 97 = 4436 mod 97 = 75 B计算K = (YA)XB mod 97 = 5058 mod 97 =
文档评论(0)