服务器给客户端一个一次性的使用编号(nonce) ,它与用户名、领域、密码和 URI 请求组合在一起。客户机通过 MD5哈希方法运行所有这些字段以生成哈希键。
它将这个散列密钥连同用户名和试图进行身份验证的领域一起发送到服务器。
服务器端使用相同的方法来生成一个 hashkey,只是服务器不使用在浏览器中输入的密码,而是从其用户 DB 中查找用户的预期密码。它查找这个用户名的存储密码,通过相同的算法运行,并将其与客户机发送的密码进行比较。如果他们匹配,然后访问被授予,否则它可以发回一个401未授权(没有登录或失败的登录)或403禁止(访问拒绝)。