mysql检查sha512加密中的数据

时间:2013-04-20 06:56:38

标签: php mysql sha512

我需要通过MYSQL查询和PHP

检查sha512加密中的数据

我可以通过md5这样做:

SELECT * FROM text WHERE md5(id) = '$id'

但是,在sha512怎么样?

此致

1 个答案:

答案 0 :(得分:5)

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)。第一个参数是明文字符串   哈希。第二个参数表示所需的位长度   结果,其值必须为224,256,384,512或0(即   相当于256)。如果任一参数为NULL或哈希长度为   不是允许值之一,返回值为NULL。除此以外,   函数结果是包含所需数量的哈希值   位。请参阅本节开头有关存储的说明   哈希值有效。

     

返回值是连接字符中的非二进制字符串   集。

mysql> SELECT SHA2('abc', 224);
        -> '23097d223405d8228642a477bda255b32aadbce4bda0b3f7e36c9da7'
  

仅当MySQL配置了SSL时,此功能才有效   支持。请参见第6.3.9节“使用SSL进行安全连接”。

     

可以认为SHA2()在加密方面比MD5()或更安全   SHA1()。