返回列表
从 MD5/SHA 迁移到 bcrypt/Argon2
为什么需要迁移?
MD5 和 SHA-1/256 等传统哈希函数设计初衷是快速计算,不适合密码存储。随着硬件发展,暴力破解变得可行,必须迁移到慢哈希算法。
迁移策略
对于已有用户数据库,可采用**双哈希兼容**策略:
- 系统同时支持两种验证方式(旧哈希和新哈希)。
- 用户登录时,先用旧算法验证,若成功则计算新哈希并保存,下次登录使用新哈希。
- 逐步淘汰旧算法,最终完全切换到 bcrypt/Argon2。
使用本工具辅助迁移
您可以使用本工具生成新哈希,在代码中集成新验证逻辑。推荐使用 PHP 的 `password_needs_rehash` 自动处理升级。
注意事项
- 迁移过程中需保持服务可用,建议在低峰期进行。
- 测试新旧哈希的兼容性,确保无误后再上线。
- 保留旧哈希字段,直到所有用户完成迁移。
本工具支持生成和验证两种哈希,方便您在测试环境中进行兼容性验证。