挑战 - 响应协议如何帮助抵御中间人攻击?

use*_*183 7 security authentication man-in-the-middle challenge-response

质询 - 响应身份验证如何防止中间人攻击?我阅读了维基文章但仍然无法理解.

sar*_*old 10

一般而言,质询 - 响应系统不一定能防止中间人攻击:如果Alice试图告诉Bob她的银行帐号,该协议确实实施了一些挑战和响应,将无法提供完整性或隐私:

Alice: Bob, is that you?  // first challenge
Bob: Yes, Alice, it is me, is that you? // first response, second challenge
Alice: Yes! Great. My account number is 314159. // second response, and result
Run Code Online (Sandbox Code Playgroud)

Mallory可以代替Alice或Bob回答"是",可以伪造第三条"结果"消息,或者可以收听第三条消息.

即使挑战得到改善,也可能会出现这样的情况:"请在我们的共享密码前加上0x31415926",以明文(或弱/差密码或密钥选择不当)传输的数据会受到隐私和数据丢失的影响在没有任何消息认证检查的情况下传输可能会被第三方修改.

挑战/响应协议真正发挥作用的地方在于防止重放攻击:如果Alice只是向Bob发送一条消息"请借记我的账户5美元并将您的账户记入5美元",Mallory可以记录该消息并重播该消息以耗尽Alice的账户.

一个好的挑战/响应系统将为每个事务或会话产生新的挑战(并确保以前的挑战不被重用!),因此会话记录不能拼接在一起以创建新的欺诈系统.

我希望这会有所帮助,但我担心如果没有更详细的想法,你的疑虑来自哪里,它只会是噪音.