bcrypt 加密/校验
生成 bcrypt 哈希并校验密码是否匹配。
什么是bcrypt 加密/校验?
bcrypt 是一种专门为密码存储设计的单向哈希算法,这个工具可以在浏览器里输入明文密码生成 bcrypt 哈希值,也可以输入明文密码和一个已有的 bcrypt 哈希,校验两者是否匹配。 和普通哈希(如 MD5、SHA-256)不同,bcrypt 内置了随机盐值(salt)和可调节的计算成本(cost factor,常见取值 10-12),生成的哈希字符串通常形如 $2b$10$N9qo8uLOickgx2ZMRZoMye...,其中 $2b$ 表示算法版本、10 表示成本因子,后面紧跟盐值和实际哈希结果,三者拼在一起存成一个字符串。
为什么使用bcrypt 加密/校验?
所有需要存储用户密码的系统都不应该明文保存密码,也不建议用 MD5/SHA 这类快速哈希,因为计算太快容易被彩虹表或暴力破解。bcrypt 通过刻意放慢计算速度(成本因子越高越慢)来提高破解成本,是业界公认的密码哈希方案之一(同类还有 Argon2、scrypt)。 这个工具适合后端开发调试认证逻辑时,快速生成一条测试用的 bcrypt 哈希写入数据库,或验证代码里生成的哈希是否和预期密码匹配,不需要跑起后端程序也能验证。
使用示例
生成一条测试哈希
输入密码 P@ssw0rd123,成本因子选 10,生成类似 $2b$10$eImiTXuWVxfM37uY4JANjQC.dyQK.wV9hRxdrjZ.wRRz6RfB3f6cS 的哈希字符串,可以直接写入测试数据库的密码字段。
校验密码是否匹配
输入密码 P@ssw0rd123 和上面生成的哈希,工具会用哈希里携带的盐值和成本因子对明文再算一次,结果一致则提示匹配成功,这正是后端登录校验的核心逻辑(bcrypt.compare)。
提高成本因子观察耗时变化
把成本因子从 10 调到 14,生成同一个密码的哈希耗时会明显变长(成本因子每加 1,计算量翻倍),可以直观感受为什么 bcrypt 能抵抗暴力破解。
使用提示
所有计算均在浏览器本地完成,不会把输入的密码发送到服务器,但仍建议不要用真实生产密码在任何在线工具里测试,改用无关的示例密码即可。
常见问题
cost(rounds)参数是什么意思?
为什么每次生成的哈希都不一样?
密码会上传服务器吗?
bcrypt 是加密算法吗,能解密吗?
同一个密码每次生成的哈希都不一样,正常吗?
成本因子该设多少?
密码里的中文或超长字符串能处理吗?
相关工具
← 返回工具箱· 数据均在浏览器本地处理,不上传服务器。