为什么使用 passcheck
- HIBP 与 k-匿名。在浏览器中计算 SHA-1;仅将短哈希前缀发送到 API。
- 本地熵。按长度与字符类估算强度——在您的设备上。
- 密码不到我们的后端。我们不接收也不存储您输入的内容。
- 结果清晰。在泄露中找到 / 未找到;若找到则显示大致 HIBP 次数。
- 诚实的边界。不承诺绝对安全——仅有 HIBP 语料与启发式。
- 免费且多语言。无需账号;覆盖全集每一种语言。
- 搭配生成器。在 passgen.dmosk.net 生成新密码。
如何检查密码
- 在输入框中输入密码(可选择显示或隐藏字符)。
- 点击“检查”:浏览器计算 SHA-1 并按哈希前缀查询 HIBP。
- 查看泄露状态与本地强度估计(比特、长度、字母表)。
- 若已泄露,在仍使用处更换;可用 passgen 生成新密码。
密码习惯与 HIBP
Have I Been Pwned 汇总已知泄露中的密码哈希。匹配表示该字符串已出现在泄露数据中——应停止使用。强度评分是启发式,不能替代唯一的随机密码。
建议:
- 为每个服务使用唯一密码。
- 把密码放在密码管理器中,而不是笔记或聊天里。
- 长度与字符多样性优于词典里的“巧妙”词。
- 尽可能启用双重身份验证。
- 若 HIBP 命中,在仍生效的地方全部更换。
- HIBP“未找到”不等于“永远安全”。
- 需要新密码时使用 passgen。
- 不要在不可信网站输入密码——本工具不会把您的密码发到我们的服务器。
适用场景
- 快速查看密码是否出现在已知泄露中;
- 轮换凭据前获得粗略熵参考;
- 向团队说明弱密码或重复使用的风险;
- 随后在 passgen 上生成新密码;
- 无需把密码上传到我们的服务器。
常见问题
HIBP 的 k-匿名是什么?
浏览器计算密码的 SHA-1,只发送哈希前几个字符。HIBP 返回该前缀下的后缀列表;完整匹配在本地完成——完整密码不会发到 API。
密码会上传到我们这边吗?
不会。我们不接收也不存储。只有短 SHA-1 前缀发往 HIBP API。
什么是 Have I Been Pwned?
Troy Hunt 的项目,汇总公开泄露中的密码哈希。passcheck 使用其 range API,无需发送完整密码即可检查。
“出现约 N 次”是什么意思?
该字符串在 HIBP 数据中出现的大致次数。次数越高,传播越广——应更换。
熵估计表示什么?
粗略启发式:长度 × 按字符类估计的字母表的 log2。不是实验室审计,也不保证强度。
“未找到”是否等于绝对安全?
否。HIBP 不完整;密码仍可能偏弱或在该语料之外泄露。
哪里获取新密码?
打开 passgen.dmosk.net——在浏览器中生成。
服务免费吗?
是——无需注册,检查不收费。
能完全离线工作吗?
强度估计是本地的。泄露检查需要访问 HIBP API 的网络。
若 HIBP 不可用或 CORS 失败?
会看到连接错误。请稍后重试;页面上的强度估计可能仍可用。
使用哪种哈希算法?
密码的 SHA-1,这是 HIBP k-匿名 range API 的要求。
会保存检查历史吗?
不会。输入的密码不会发到我们这边,也不会写入我们的数据库。