《图解密码技术》第五章
- 中间人攻击:man-in-the-middle attack,选择密文攻击chosen ciphertext attack
对RSA的攻击
通过密文来求得明文
破译者知道密文,E、N,是一个求离散对数的问题,目前还没有发现求离散对数的高效算法。
通过暴力破解来找出D
当D足够大时,就不可能再现实的时间通过暴力破解找出数D。
现在RSA使用的p和q的长度都是1024比特以上,N的长度在2048比特以上,由于E和D的长度和N 差不多,因此要进行2048比特以上的暴力破解,十分困难。
通过E和N求出D
L=lem(p-1,q-1)
E*D mod L=1
破译者不知道质数p和q,无法求出D
RSA很重要的一点,质数p和q不能被密码破译者知道。
-
对N进行质因数分解攻击
一旦发现了对大整数进行质因数分解的高效算法,RSA就能被破译。
没发现对质因数分解的高效算法,没证明质因数分解是否真的困难,不知道是否存在一种分解质因数的简单方法
-
通过推测p和q进行攻击
如果伪随机数生成器的算法很差,密码破译这很有可能推测出p和q
-
其他攻击
中间人攻击
-
这种攻击方法虽然不能破译RSA,但是一种针对机密性的有效攻击。
-
中间人攻击:主动攻击者Mallory混入发送者和接收者的中间,对发送者伪装成接收者,对接收者伪装成发送者的攻击方式。
- 这种攻击不仅仅针对RSA,而是可以针对任何公钥密码,公钥密码并没有被破译,密码算法的机密性也没有破坏,但这个机密性不是在Alice和Bob之间,而是在Alice和Mallory,Mallory和Bob之间,仅靠公钥密码本身,是无法防御中间人攻击的。
- 需要一种手段来确认所收到的公钥是否真的属于Bob,称为认证。在这种情况下,我们可以使用公钥的证书。