MySQL集錦--- 利用AES_ENCRYPT()與AES_DECRYPT()加解密

MySQL中AES_ENCRYPT('密碼','鑰匙')函數可以對字段值做加密處理,AES_DECRYPT(表的字段名字,'鑰匙')函數解密處理

 

使用該AES_ENCRYPT('密碼','鑰匙')函數進行加密之後需要使用HEX()轉成十六進制,存入數據庫,取出使用 UNHEX()函數取出。

加密:
HEX(AES_ENCRYPT('待加密內容','祕鑰'))
解密:
AES_DECRYPT(UNHEX('待解密內容'),'密鑰')

在mysql 編碼也都設置爲 UTF-8MB4情況下,當待加密內容有中文時, 通過解密獲取到的是亂碼,經過查找資料使用如下函數解決

CONVERT (AES_DECRYPT(UNHEX('待解密內容'),'密鑰') USING utf8) 

 

 

參考博文:

https://blog.csdn.net/qq_39865076/article/details/84579639

 
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章