Developer Security Utility

bcrypt 哈希生成器

将密码或文本转换为 bcrypt 哈希,并在浏览器中快速验证原始文本与哈希值是否匹配的开发者安全工具。

带 Salt 的哈希生成 即使输入相同内容,每次也会生成不同的 bcrypt 哈希。
可调 Cost Factor 调整 rounds 数值,测试适合当前环境的哈希强度。
哈希验证 快速检查原始文本与 bcrypt 哈希是否匹配。
!

安全测试工具提示

此页面是用于开发测试和学习的 bcrypt 工具。请不要在浏览器中输入真实用户密码,生产环境应在服务器端安全处理密码。

生成 bcrypt 哈希

输入需要哈希的密码或文本,然后选择 Cost Factor。

bcrypt 是单向哈希算法,无法从生成的哈希中恢复原始文本。

快速 10 rounds 更强

数值越高,计算时间越长,但暴力破解成本也越高。

由于 bcrypt 包含 salt,因此相同文本也会生成不同的哈希值。

原文长度 0 个字符
Cost Factor 10
数量 1 个
耗时 -

生成结果

可以复制生成的 bcrypt 哈希或保存为 TXT 文件。

待处理
请输入原始文本,然后点击“生成 bcrypt 哈希”。

验证 bcrypt 哈希

检查原始文本与 bcrypt 哈希是否匹配。

标准 bcrypt 哈希通常以 $2a$、$2b$ 或 $2y$ 开头,总长度一般为 60 个字符。

请输入原始文本和 bcrypt 哈希。
使用指南

保留空格并按UTF-8字节检查bcrypt输入

生成带盐的bcrypt哈希并与测试输入比较。工具保留空格,对超过72个UTF-8字节的输入报错,而不是静默截断。

适用人群

  • 检查bcrypt兼容性的开发者
  • 学习盐值与计算成本的人

使用场景

  • 为同一测试字符串生成多个哈希。
  • 比较Unicode输入和测试哈希。

从输入到检查结果

  1. 1

    准备一次性的测试字符串。

  2. 2

    确认前后空格与UTF-8字节数。

  3. 3

    选择Cost和生成数量。

  4. 4

    生成后比较不同盐值的输出。

  5. 5

    用完全相同的输入验证,再用服务器库测试。

使用示例 1

相同输入不同盐值

输入
demo-password;Cost 10;3个
结果
生成三个不同的60字符bcrypt哈希。

它们都可以匹配同一个原始输入。

使用示例 2

表情符号的边界

输入
18个😀,然后19个
结果
18个占72字节;19个占76字节,会被拒绝。

界面的字符串长度计数不是UTF-8字节数。

计算与处理原理

内置bcrypt库异步生成盐和哈希,生成与验证前用TextEncoder检查72字节限制。输入不做trim,因此空格也是内容的一部分。

限制与注意事项

  • 浏览器耗时不代表认证服务器性能。
  • 提高Cost也会增加正常用户登录的计算量。
  • 生成器提供10–14的Cost,并非所有系统的性能建议。
  • 新密码存储设计应查看当前指南及内存困难型替代算法。
数据处理

计算在本地进行,请使用测试值。复制或下载的哈希可能保留在设备中。

相关工具

常见问题

能解密哈希吗?

不能。验证只是判断候选输入是否与哈希匹配。

相同输入为什么结果不同?

每次生成都加入新的随机盐。

空格会被删除吗?

不会。带前后空格的字符串是不同输入。