我需要通过MYSQL查询和PHP检查sha512加密中的数据
我可以像这样用md5来做:
SELECT * FROM text WHERE md5(id) = '$id'
但是,sha512呢?
对
mysql 5.5+
SELECT * FROM text WHERE SHA2(id, 512) = '$id'
更多细节:
SHA2(str, hash_length)
计算SHA-2哈希函数族(SHA-224, SHA-256,SHA-384和SHA-512)。第一个参数是明文字符串to散列。的所需位长度结果,取值为224、256、384、512或0(取值为。相当于256)。如果参数为NULL或哈希长度为如果不是允许的值之一,则返回值为NULL。否则,函数的结果是一个哈希值,其中包含所需的位。请参阅本节开头关于存储的注释
返回值是连接字符中的非二进制字符串集。
mysql> SELECT SHA2('abc', 224);
-> '23097d223405d8228642a477bda255b32aadbce4bda0b3f7e36c9da7'
此功能仅在MySQL已配置SSL时有效支持。参见第6.3.9节"使用SSL进行安全连接"。
SHA2()可以被认为比MD5()或SHA1 () .