几十亿个来自旧泄露的密码就摆在公开处。如果你的也在其中,破解只要几秒——程序照着名单挨个试就行。这项检测告诉你密码在不在 Have I Been Pwned 库里,同时不会把密码发往任何地方。
密码不会离开你的设备。浏览器算出 SHA-1 摘要,只发送前五个字符,收到一串后缀后在本地查找匹配。这就是 Have I Been Pwned 标准的 k-匿名方法。
浏览器算出密码的 SHA-1 摘要,只发送摘要的前五个字符。服务器返回所有以这五个字符开头的后缀——几百条。匹配在你的设备上进行,所以从这条请求无法知道检测的是哪个密码。这个方法叫 k-匿名。
这是数据库收录的所有泄露中,出现该密码的记录条数。「出现 12000 次」不代表你被黑了:只说明另外还有 12000 个人想到了同一个密码,它早就躺在破解字典里。
数据库只知道已公开的泄露——刚发生、还没人披露的入侵不在其中。不在库里并不是安全证书:每个网站一个长长的随机密码,比任何检测都管用。