公钥密码通信防范中间人攻击

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
– 加密:c=m^e mod n, m∈Z*n – 解密:m=c^d mod n
在公钥中嵌入口令信息
• 假设口令为key • 将系统建立的第三步改为两步 ① 计算y=e*key (mod n) ② 计算d,使 y*d≡1 (mod ø(n)) ③ 然后将(e,n)作为公钥公布,d作为私钥 • 加解密过程(m是明文) – 加密:先计算y=e*key mod n, c=m^y mod n; – 解密:m=c^d mod n;
解决办法
• Alice在产生的公钥中嵌入自己的身份信息, 即只有Alice才能产生这样的公钥
可行性分析
• 由于Alice产生的公钥当中隐含了Alice的身份 信息,根据分析,别人无法完全模仿Alice 的身份信息,因此别人就无法产生具有相 同特征的密钥 • 由于Alice在公钥当中加入了自己的身份信 息,Bob完全可以利用收到公钥来而验证 Alice身份的真实性,以判断是否有人在冒 充Alice和自己通话。
公钥密码通信防范中间人攻击
-以RSA公钥密码体制为例的新尝试
公钥密码体制的传送方式
公钥PK 公开信道
私钥SK
明文M 加密 E(· )
Baidu Nhomakorabea
密文C 解密 D(· )
破译
中间人攻击的模型
随机选择a
随机选择b 拦截 拦截
我是Alice
把公钥发过来
我是Alice
把公钥发过来
Alice的公钥PKA
攻击者的公钥PKC
– 安全性基于大整数分解是困难问题这一假设并 且认为对RSA的破解难度不低于大整数分解问 题
• RSA系统建立 ① 随机选择大素数p、q,计算n=p*q ② 随机选取e <ø(n),且gcd(e, ø(n))=1 ③ 计算d,使 e*d≡1 (mod ø(n)) ④ (e,n)为公钥,d 为私钥
• 加解密过程(m是密文)
Alice身份标识信息的寻找
• 寻找一个既能唯一标识Alice的身份,但公 开后又不能被其他人完全模仿的信息是及 其困难的。这里是在通信双方Alice和Bob之 间共享一秘密口令,这个口令只有Alice和 Bob知道,因为是秘密的,所以对其他人来 说是难以完全模仿的。
以RSA公钥密码体制为例
• RSA基本原理
DPKA(M)
攻击者用自己的 私钥SKC解密: ESKC(DPKC(M))=M
DPKC(M)
中间人攻击的分析与结论
• 要想防止中间人攻击,Bob必须对Alice的身 份进行真实性验证 • Alice必须具有能够唯一标识自己身份的信 息,且这个信息是别人不能完全模仿的 • 通信建立时,Alice必须把能够证实自己真 实身份的信息传递给Bob
解密过程的正确性
根据系统建立过程可知 y*d≡1 (mod ø(n)),所以存在k,使得 y*d=kφ(n)+1 由欧拉定理m^(kø(n)+1) = m mod n,所以 c^d mod n= m^(y*d) mod n= m^(kø(n)+1) mod n=m 能够正确解密。
相关文档
最新文档