输入密码并看字节
Bcrypt 的经典输入上限是 72 UTF-8 字节,中文和 emoji 会占多个字节。超过时应先调整密码策略,而不是忽略提示。
试试其他关键词
未找到相关结果
生成与验证共用密码输入,右侧 Hash Inspector 自动解释结果;成本、耗时和 72 字节边界都在操作位置附近出现。
常见兼容基线,生产环境仍需实测
bcrypt.js 异步本地计算 · 密码与 Hash 不上传、不保存
Bcrypt 的经典输入上限是 72 UTF-8 字节,中文和 emoji 会占多个字节。超过时应先调整密码策略,而不是忽略提示。
Cost 每增加 1,计算量大致翻倍。默认 12 是常见起点,但生产值必须在真实服务器上测量并控制登录延迟。
生成结果会自动填入验证区。验证时输入明文和完整 Hash,页面会读取内嵌 salt 与 cost 后比较。
Bcrypt 是密码哈希,不是可逆加密。每个结果包含版本、Cost、随机 salt 和哈希主体;验证时不需要另存 salt,库会从完整字符串中读取参数。
正常登录只计算一次,而攻击者需要为每个猜测重复高成本运算。Cost 应随硬件与风险定期评估,但不能盲目提高到拖垮登录服务。
4–910–111213–1415Bcrypt 传统规范只使用前 72 个密码字节。72 个 ASCII 字符正好 72 字节,但中文通常是 3 字节,许多 emoji 是 4 字节;字符数相同不代表字节数相同。
常见前缀有 2a、2b 与 2y。现代新结果通常使用 2b,2y 常见于 PHP 生态。跨语言迁移时应使用维护中的库并用真实样本验证,不要手工修改 Hash 主体。
不能。验证会用 Hash 内嵌的 salt 与 Cost 重新计算输入密码,再比较结果;忘记密码应重置,而不是尝试解密。
不一定。它是常见起点,真正选择要在生产硬件上基准测试,并考虑并发登录、攻击限速和用户体验。
每次生成会使用新的随机 salt。不同字符串仍能各自验证同一密码,这正是抵抗彩虹表与批量预计算的设计。
不会。bcrypt.js 在当前页面异步计算,输入、结果与验证状态不发送到服务器,也不写入浏览器存储。
两者都可用于密码存储。新系统通常优先评估 Argon2id;需要广泛框架兼容或既有 Bcrypt 数据时,Bcrypt 仍很常见。