参考答案:
在存储用户的密码散列(hash)时,应该使用**VARCHAR
** 类型的字段。由于密码散列是通过哈希算法生成的固定长度的字符串(例如 MD5、SHA-256、bcrypt 等),需要一个足够大的字段来存储这些散列值。
VARCHAR
类型:
VARCHAR
类型是最常见的选择,因为密码散列通常是一个字符串(哈希值),其长度根据不同的哈希算法而有所不同。例如:
VARCHAR(255)
字段来存储散列值,因为大多数哈希算法的结果不会超过 255 个字符。如果你使用更强的哈希算法(如 bcrypt、Argon2 等),其长度通常为 60 或更长。字段定义示例:
1CREATE TABLE users ( 2 id INT AUTO_INCREMENT PRIMARY KEY, 3 username VARCHAR(255) NOT NULL, 4 password_hash VARCHAR(255) NOT NULL 5);
password_hash
字段将用来存储用户密码的散列值。VARCHAR
类型?VARCHAR(255)
足够容纳大多数常见的密码散列算法(如 SHA-256 或 bcrypt)生成的哈希值。VARCHAR
而不是 CHAR
是因为哈希值是可变长度的,且使用 VARCHAR
可以节省存储空间。最近更新时间:2024-12-09