当前位置:   article > 正文

【密码学】RSA的攻与防_3.0_rsa的选择密文攻击

rsa的选择密文攻击

书接前两回:

【密码学】RSA的攻与防_1.0_Mitch311的博客-CSDN博客

【密码学】RSA的攻与防_2.0_Mitch311的博客-CSDN博客

目录

1 选择密文攻击

1.1 介绍

1.2 防御措施

2 维纳攻击(Wiener’s Attack)

2.1 介绍

2.2 证明

2.3 举例

2.4 防御措施


选择密文攻击

1.1 介绍

利用RSA的性质:

EPU,M1)* EPU,M2=EPU,[M1M2]

PU是公钥,M是待加密内容。

:(M1)^e  *  (M2)^e  mod n = (M1M2)^e mod n

利用CCA攻击,可以用如下方式解密:

假定一攻击者截获密文 C =M^e mod n,此时无法解密M,但可以执行如下计算:

1)计算X = C * 2^e mod n

2)将X作为选择明文提交,并收到 Y =X^dmod n

观察下面的等式:
X = C * 2^e mod n = M^e* 2^e mod n = (2M)^e mod n

因此 Y = 2M mod n ,所以可得到消息M

1.2 防御措施

解决办法是在明文加密前先对明文进行随机填充,让密文随机化,从而使攻击条件不再成立。
事实证明简单的填充依然具有较低的安全性,推荐最优非对称加密填充OAEP。

2 维纳攻击(Wiener’s Attack)

2.1 介绍

已知N=pq,且d<n1/4/3"n" ^"1/4"  "/3",q<p<2q

wiener 证明了,可在多项式时间中利用给出的<N,e>分解 n

2.2 证明

2.3 举例

2.4 防御措施

构造RSA时保证参数不满足维纳攻击的条件。

声明:本文内容由网友自发贡献,转载请注明出处:【wpsshop博客】
推荐阅读
相关标签
  

闽ICP备14008679号