Bcrypt 哈希密码存储:列类型和长度注意事项
在数据库中存储 Bcrypt 哈希密码时,选择合适的列至关重要类型和长度,以确保数据完整性和安全性。
列类型
对于 bcrypt 哈希密码,建议使用 BINARY(60) 或 CHAR(60) BINARY 列类型,以确保正确存储哈希值价值观。这是因为 Bcrypt 生成的固定长度哈希值通常包含 60 个字节。
哈希长度
Bcrypt 哈希值被“拉伸”,需要大量的计算工作才能生成。因此,Bcrypt 哈希值始终具有相同的长度。 salt 和哈希输出组合形成一个 53 个字符的 base-64 编码值,导致哈希长度为 60 字节.
Justification
Bcrypt 算法使用 128 位盐和 186 位哈希,它们是base-64 编码以创建 53 个字符的总长度。添加初始标识符(“$2a$”)、成本参数(通常为 2 位数字)和尾部分隔符(“$”)会导致总长度 60 字节。
因此,在数据库中存储 Bcrypt 哈希密码时,必须使用能够容纳 60 字节固定长度的列类型。这确保了散列密码的准确存储和处理,保护数据完整性和安全性。
以上是我应该使用什么列类型和长度来存储 Bcrypt 哈希密码?的详细内容。更多信息请关注PHP中文网其他相关文章!