【发布时间】:2011-01-20 13:26:26
【问题描述】:
可能的字段类型:
BINARY(16)
CHAR(32)
BIGINT + BIGINT
我如何决定使用哪一个?
【问题讨论】:
-
MD5 哈希通常表示为 32 位十六进制数。 CHAR(32) 可以正常工作。
-
无。不要使用 MD5,它是 dead hash。使用 SHA-2 或更高版本,存储为一系列十六进制字符(64 个字符)。以这种方式阅读非常好,而且这是标准方法。
-
我不擅长 MySql,但哈希通常是字节数组,所以 BINARY(16) 应该是最好的,但如果需要,可能更难针对 Binary 编写自定义 sql 问题?
-
@NoonSilk MD5 是一个完全可以接受的非加密原因(例如重复检测),但由于彩虹表,不应用于密码。