MySQL 中的AES_DECRYPT 失敗故障排除
嘗試解密先前使用AES_ENCRYPT() 加密的資料時,您可能會遇到AES_ECDECPT(PT ) 問題回傳空結果。這可能會令人沮喪,因為您的加密資料仍然無法存取。
根據 MySQL 文檔,AES_DECRYPT() 預計會傳回解密加密字串的原始字串。但是,在某些情況下,它可能會傳回二進位字串。
要解決此問題,請嘗試以下操作:
SELECT *, CAST(AES_DECRYPT(first_name, 'usa2010') AS CHAR(50)) first_name_decrypt FROM user
此查詢使用 CAST() 函數來轉換解密的二進位字串轉為CHAR字串,可以正常顯示。不要在後續查詢或應用程式中使用“first_name”,而是使用“first_name_decrypt”來存取解密的資料。
以上是為什麼 AES_DECRYPT() 在 MySQL 中傳回空結果?的詳細內容。更多資訊請關注PHP中文網其他相關文章!