据我了解,摘要式身份验证(这是一种单向操作)对密码进行哈希处理并将哈希处理后的数据传输到服务器。然后服务器将使用存储的密码,对其进行哈希处理,并与接收到的哈希密码进行比较。应该是安全的免受中间人攻击。
我不明白的是,如果我是中间人黑客,我不需要原始密码。好吧,只需使用哈希密码,因为这是服务器将与之比较的密码。
那么这个 Digest 认证机制有什么用呢?从这个总体概述来看似乎不起作用。
据我了解,摘要式身份验证(这是一种单向操作)对密码进行哈希处理并将哈希处理后的数据传输到服务器。然后服务器将使用存储的密码,对其进行哈希处理,并与接收到的哈希密码进行比较。应该是安全的免受中间人攻击。
我不明白的是,如果我是中间人黑客,我不需要原始密码。好吧,只需使用哈希密码,因为这是服务器将与之比较的密码。
那么这个 Digest 认证机制有什么用呢?从这个总体概述来看似乎不起作用。
摘要式身份验证与您描述的方式不太一样。
Digest auth 是一种质询-响应协议。为了启动这个过程,客户端请求一个受保护的 URL,服务器用域和一个nonce响应。客户端使用领域和随机数来计算:
md5(md5(username:realm:password):nonce:md5(httpMethod:uri))
随机数会导致每个身份验证产生不同的哈希值,从而防止重放攻击。此外,它确实提供了一些(较弱的)保护来防止攻击者监听您的通信,因为明文密码不会通过网络传递,尽管这并不能阻止攻击者在获得哈希值后破解它。