簡體   English   中英

MySQL以sha512加密方式檢查數據

[英]mysql check data in sha512 encryption

我需要通過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)。 第一個參數是要散列的明文字符串。 第二個參數表示結果的所需位長度,該位長度必須具有224、256、384、512或0(等於256)的值。 如果任一參數為NULL或哈希長度不是允許的值之一,則返回值為NULL。 否則,函數結果是一個包含所需位數的哈希值。 請參閱本節開頭有關有效存儲哈希值的注釋。

返回值是連接字符集中的非二進制字符串。

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

僅當MySQL已配置有SSL支持時,此功能才有效。 請參見第6.3.9節“使用SSL進行安全連接”。

從密碼上講,SHA2()比MD5()或SHA1()更安全。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM