关于RSA中间人攻击

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/chengqiuming/article/details/82809904

一 点睛

中间人攻击的方法不能破译RSA,但却是一种针对机密性的有效攻击。

所谓中间人攻击,就是主动攻击者混入发送者和接收者中间,对发送者伪装成接收者,对接收者伪装成发送者的攻击方式。

二 攻击过程

场景:发送者Alice准备向接收者Bob发送一封邮件,为了解决密钥配送问题,它们使用了公钥密码。攻击者位于通信路径中,我们假设他能够任意窃听或篡改邮件的内容,也可以拦截邮件使得对方无法接收到。

通信过程如下:

1 Alice向Bob发送邮件索取公钥。

“To Bob:请把你的公钥发给我。From Alice”

2 Mallory通过窃听发现Alice在向Bob索取公钥。

3 Bob看到Alice的邮件,并将自己的公钥发送给Alice。

“To Alice:这是我的公钥。From Bob”

4 Mallory拦截Bob的邮件,使其无法发送给Alice。然后,他悄悄地将Bob的公钥保存起来,它稍后会用到Bob的公钥。

5 Mallory伪装成Bob,将自己的公钥发送给Alice。

“to Alice:这是我的公钥。From Bob”(其实是Mallory)

6 Alice将自己的消息用Bob的公钥(其实是Mallory的公钥)进行加密。

“to Bob:我爱你。From Alice”

但是,Alice所持有的并非Bob的公钥而是Mallory的公钥,因此Alice是用Mallory的公钥对邮件进行加密的。

7 Alice将加密后的消息发送给Bob。

8 Mallory拦截Alice的加密邮件。这封加密邮件是用Mallory的公钥进行加密的,因此Mallory能够对其进行解密,于是Mallory就看到Alice发给Bob的情书。

9 Mallory伪装成Alice写一封假的邮件。

“To Bob:我讨厌你,From Alice”(其实是Mallory)

然后他用第4步保存下来的Bob的公钥对这封假的邮件进行加密,并发送给Bob。

10 Bob用自己的私钥对收到的邮件进行解密,然后他看到消息的内容是:

“To Bob:我讨厌你,From Alice”

他伤心极了。

上述过程可以反复多次,Bob向Alice发送加密邮件时也可能受到同样的攻击,因此Bob即便要发邮件给Alice以询问她真实的想法,也会被Mallory随意篡改。

三 Mallory进行中间人攻击图例

四 补充

中间人攻击不仅针对RSA,而是可以针对任意公钥密码。在这个过程中,公钥密码并没有被破译,所有的密码算法也都是正常工作并确保了机密性。然而,所谓的机密性并非在Alice和Bob之间,而是在Alice和Mallory之间,以及Mallory和Bob之间成立的。仅靠公钥密码本身,是无法防御中间人攻击的。

猜你喜欢

转载自blog.csdn.net/chengqiuming/article/details/82809904