我对Diffie-Hellman密钥交换期间中间人攻击的机制有所怀疑。我听说在关键协议沟通过程中可能会发生这种情况。但是,在CA(证书颁发机构)的存在下,接收方可以在收到发件人的公钥时对发件人进行身份验证。因此,中间人攻击怎么可能?中间人攻击如何在Diffie-Hellman中工作?
15
A
回答
55
我认为你将基本的Diffe-Hellman(一种密钥交换协议)与使用认证中心(CA)的“认证版本”相混淆。
对基本迪菲赫尔曼如何容易受到中间人from RSA Labs的很好解释。
“的Diffie-Hellman密钥交换容易受到一个人在这方面的中间人 攻击。在这种攻击中,对手卡罗尔拦截Alice的公共 值,并把自己的公共价值鲍勃。当Bob发送他的 公共价值,Carol用它自己替代它并将它发送给Alice Carol和Alice因此同意一个共享密钥并且Carol和Bob同意 在另一个共享密钥上,在此交换之后,Carol简单地解密任何发送的 消息然后读取并且可能 在用适当的密钥重新加密之前修改它们,并且将它们发送到t他另一方。此漏洞存在 ,因为Diffie-Hellman密钥交换不验证 参与者。可能的解决方案包括使用数字签名 和其它协议变种“
,并与认证的版本,它遵循,也被称为Station-to-Station protocol:
”。粗略地说,其基本思想是如下。在执行 协议之前,双方Alice和Bob每个都获得公钥/私钥对和公钥证书。在 协议期间,Alice计算某些消息的签名,其中包含 公开值ga mod p。鲍勃以类似的方式继续前进。即使 Carol仍然能够截取Alice和Bob之间的消息,但她不能伪造Alice的私钥和Bob的私钥 的签名。因此,增强的协议击败了中间人,中间人 攻击。”
所以基本版本是容易受到中间人攻击,使用公钥证书是认证版本不。
19
相关问题
- 1. 在NServiceBus中处理中间人攻击
- 2. Android防止人为攻击SSL中间人攻击
- 3. 如何在中间攻击中处理来自人的API
- 4. 公钥完整性 - 中间人攻击
- 5. 中间人攻击造成的威胁
- 6. 堆喷攻击如何工作?
- 7. WCF安全 - 在中间攻击中保护人免受
- 8. 在使用https时防止中间人攻击
- 9. SSL和Man在中间攻击
- 10. 如何应对攻击xmlrpc.php攻击
- 11. 保护移动应用程序免遭中间人攻击
- 12. 可以通过中间人攻击劫持HTTPS连接吗?
- 13. asp.net returnURL页面验证,以避免中间人攻击
- 14. “中间人”可以更改在中间人攻击中发送的数值数据
- 15. 挑战 - 响应协议如何帮助抵御中间人攻击?
- 16. BruteForce在python中的攻击程序无法正常工作
- 17. 如何保护WS发现ad hoc网络的人在这方面的中间人攻击
- 18. 如何让其他人单击工作?
- 19. 如何阻止.htacces中的攻击者?
- 20. 亿笑笑XML DoS攻击如何工作?
- 21. 我如何在斯克普斯攻击敌人
- 22. “拳击”如何在.NET中工作?
- 23. 如何演示CSRF攻击
- 24. 如何避免XSS攻击
- 25. 如何防止XXE攻击
- 26. 中间人初始化my_project_name不工作,
- 27. 使用自签名证书时,是否可以防止中间人攻击?
- 28. 加工塔防御游戏 - 塔攻击敌人
- 29. URL中的XSS攻击
- 30. SpriteKit中的攻击按钮
不错的答案。非常清楚。 – Leigh
是的,有人听媒体将无法拦截,但有人桥接媒体会。然而,认证版本根本没有意义。如果您已经持有证书并因此拥有另一方的公钥,那么使用DH有什么意义? – Rafael
我不认为我理解你的观点......你为什么要区分倾听和桥接?它们都是截取的形式,并且正如答案所述,在认证的版本中,由于拦截器不能伪造消息,所以拦截消息是正确的。在协议开始的认证版本中,各方没有对方的公钥证书。 – Peanut