Bcrypt 哈希生成器
在浏览器中直接生成带随机盐的 bcrypt 密码哈希。免费、快速、完全本地运行。
你的输入永远不会离开你的设备。
成本越高越安全,但计算越慢。成本 10 是合理的默认值。
验证 Bcrypt 哈希
什么是 Bcrypt?
Bcrypt 是由 Niels Provos 和 David Mazières 基于 Blowfish 密码算法设计的密码哈希函数。它被广泛用于安全存储密码,因为它刻意设计得较慢,并且每个哈希都包含一个随机盐。
与 SHA-256 这类通用哈希函数不同,bcrypt 专为密码而设计。它的“慢”是一种特性:它让暴力破解和字典攻击的成本显著上升,即使数据库泄露,破解密码也几乎不现实。
Bcrypt 是单向哈希函数,不是加密。bcrypt 哈希无法被解密回原始密码。验证时,用相同的盐对候选密码重新哈希,再比较结果。
如何生成 Bcrypt 哈希
- 1
在输入框中输入密码或文本。
- 2
选择 bcrypt 成本 / 轮数因子。
- 3
点击“生成”,使用全新的随机盐创建 bcrypt 哈希。
- 4
复制生成的 bcrypt 哈希,用于你的应用。
什么是 Bcrypt 成本 / 轮数?
bcrypt 的成本因子(也称轮数)控制哈希计算的开销。成本每增加 1,所需的计算量大约翻倍,因为底层的密钥调度要执行 2^cost 次迭代。
成本越高,哈希越慢,对暴力破解的抵抗越强——但服务器验证密码时的 CPU 消耗也越大。成本越低则越快,但更弱。
并不存在对所有人都适用的“最佳”成本。合适的值取决于你的服务器硬件和需要处理的密码数量。成本 10 到 12 是常见的起点;你应该根据目标硬件调整,使哈希耗时可接受但不过长。
这个 Bcrypt 生成器安全吗?
- •所有 bcrypt 计算都在你的浏览器本地完成。你的密码输入永远不会上传到 UtilForge 服务器。
- •本工具不会把输入存入 localStorage,不会写入 URL,也不会发送给任何分析或追踪服务。
- •如果你不放心,请不要在任何第三方工具中输入真实的生产密码。本工具用于测试、开发、学习和验证。
- •对于生产系统,请始终在你自己的可信服务器上使用经过实战检验的库来执行 bcrypt 哈希。
Bcrypt 与 SHA-256
SHA-256 是一种快速的通用密码学哈希。这种速度恰恰是它不适合单独用于密码存储的原因:攻击者在现代硬件上每秒可以尝试数十亿次 SHA-256 猜测。
Bcrypt 专为密码哈希而设计。它刻意较慢,并具有可调节的成本因子,你可以随着硬件变快而提高所需的工作量,从而显著提高暴力破解的成本。
请记住:bcrypt 是哈希,不是加密。它不可逆,设计目的是保护存储中的密码——而不是加密数据。
相关工具
常见问题
什么是 bcrypt 哈希?
bcrypt 哈希是 bcrypt 密码哈希函数生成的定长字符串。它包含算法版本、成本因子、随机盐以及最终摘要——例如 $2b$10$...。由于每个哈希都内嵌自己的盐,同一个密码每次生成的哈希都不同。
bcrypt 是加密还是哈希?
bcrypt 是哈希,不是加密。哈希是单向函数:你可以把密码变成哈希,但无法把哈希还原成密码。而加密则可以在正确密钥下被逆转。
bcrypt 是如何工作的?
bcrypt 的设计源自 Blowfish 分组密码。它生成一个随机盐,与密码结合,然后反复执行昂贵的密钥调度(2^cost 次)以产生最终摘要。盐和成本都存储在哈希内部,因此验证时可以重现相同的计算。
什么是 bcrypt 成本?
成本因子决定 bcrypt 执行密钥调度的迭代次数。成本每增加 1,工作量翻倍。成本 10 是常见默认值,而 12 或 13 耗时逐级增加,但更能抵抗暴力破解。
bcrypt 和 SHA-256 有什么区别?
SHA-256 快速且通用,因此不适合单独用于密码存储。bcrypt 刻意较慢且成本可调,使暴力破解密码困难得多。存储密码时应使用 bcrypt(或其他专用密码哈希函数),而不是直接使用 SHA-256。
我可以在浏览器中生成 bcrypt 哈希吗?
可以。本工具使用 JavaScript 在你的浏览器中完全执行 bcrypt 算法,无需服务器往返,你的输入保留在你的设备上。
这个 Bcrypt 生成器会把我的密码发送到服务器吗?
不会。所有哈希都在客户端完成。你的密码绝不会被传输、存储或记录。本页面不会对你的输入做任何分析或追踪。
bcrypt 哈希可以被解密吗?
不能。bcrypt 是单向哈希函数。bcrypt 哈希无法被解密回原始密码。验证密码的唯一方法是用相同的盐重新哈希并比较结果。
发现此工具有问题?
报告问题