【问题标题】:Concept of Digest authentication - does it really work?摘要认证的概念——它真的有效吗?
【发布时间】:2013-09-04 16:52:39
【问题描述】:

据我了解,摘要式身份验证(这是一种单向操作)对密码进行哈希处理并将哈希处理后的数据传输到服务器。然后,服务器将使用存储的密码,对其进行哈希处理,并与接收到的哈希密码进行比较。应该不会受到中间人的攻击。

我不明白的是,如果我是中间人黑客,我不需要原始密码。好吧,只需使用哈希密码,因为这是服务器将与之比较的密码。

那么这个 Digest 认证机制有什么用呢? 从这个总体概述来看似乎不起作用。

【问题讨论】:

    标签: security


    【解决方案1】:

    摘要式身份验证与您描述的方式不太一样。

    1. 服务器不存储未散列的密码。服务器存储 Username:realm:password 的哈希值。
    2. 客户端不会为每次身份验证发送相同的哈希值。

    摘要式身份验证是一种质询-响应协议。为了启动这个过程,客户端请求一个受保护的 URL,服务器用域和 nonce 响应。客户端使用realm和nonce计算:

    md5(md5(username:realm:password):nonce:md5(httpMethod:uri))
    

    nonce 使每个身份验证产生不同的哈希值,从而防止重放攻击。此外,它确实提供了一些(较弱的)保护来防止攻击者监听你的通信,因为明文密码不会通过网络传递,尽管这并不能阻止攻击者在获得哈希值后破解它。

    【讨论】:

    • @yapkm01:这能回答你的问题吗,还有什么不清楚的地方吗?
    • 是的。非常感谢!顺便问一下,这里的领域是什么意思?
    • Realm 是一个字符串,在身份验证过程中提示用户输入用户名和密码时显示给用户。此字符串的值因进行身份验证的系统而异,但通常有助于用户了解他们应该使用哪些登录凭据。例如,如果您正在为 gmail 进行摘要式身份验证,则域可能类似于“gmail.com”。
    猜你喜欢
    • 2014-10-13
    • 2014-04-13
    • 2020-10-11
    • 1970-01-01
    • 2013-11-25
    • 1970-01-01
    • 1970-01-01
    • 2012-07-18
    • 2015-01-04
    相关资源
    最近更新 更多