我們通過對mysql數據庫的數據進行加密,可以使數據庫更加安全,里面的信息數據不會被輕易破解。
mysql特意設計了一些函數對數據進行加密。這里簡單介紹如下幾個函數。
(1)AES_ENCRYPT和AES_DECRYPT函數
語法格式為:aes_encrypt ?aes_decrypt(str,key)
AES_ENCRYPT函數返回的是密鑰key對字符串str利用高級加密標準(AES)算法加密后的結果,結果是一個二進制的字符串,以BLOB類型存儲。而AES_DECRYPT函數用于對用高級加密方法加密的數據進行解密。若檢測到無效數據或不正確的填充,函數會返回NULL。AES_ENCRYPT和AES_DECRYPT函數可以被看做MySQL中普遍使用的最安全的加密函數。
(2)ENCODE和DECODE函數
語法格式為: ?encode |deCODE(str,key)
ENCODE函數用來對一個字符串str進行加密,返回的結果是一個二進制字符串,以BLOB類型存儲。DECODE函數使用正確的密鑰對加密后的值進行解密。與上面的AES_ENCRYPT和AES_DECRYPT函數相比,這兩個函數加密程度相對較弱。
(3)ENCRYPT函數
使用UNIX crypt()系統加密字符串,encrypt(str,salt)函數接收要加密的字符串和用于加密過程的salt(一個可以確定唯一口令的字符串)。在Windows上不可用。
以上是Mysql自帶的加密函數,我簡單的介紹了幾個,大家可以在下面的評論中繼續補充說明。。。
相關文章:
? 版權聲明
文章版權歸作者所有,未經允許請勿轉載。
THE END
喜歡就支持一下吧
相關推薦