我有一个SHA256密码字段为二进制(32)。如果我使用select语句,我会看到类似0x81B637D8FCD2C6DA6359E6963113A1170DE795E4B725B84D1E0B4CFD9EC58CE9
的内容。我想知道它们是如何存储的?
我有一个函数(用C#编写)基本上哈希密码(返回字节而不是字符串),当我将它与数据库进行比较时,它工作正常,无需将哈希值设置为Upper或添加0x前缀就像在SQL中一样。虽然听起来很奇怪,但我不明白为什么比较有效?因为如果我尝试将该字节结果转换为C#中的字符串,我会得到类似81-B6-37 etc.
的内容,所以它们也会以这种方式存储在SQL中吗?
答案 0 :(得分:2)
二进制。但由于很难将二进制显示为文本,因此您将获得十六进制表示。