AES_ENCRYPT() 最安全的加密函數

AES_ENCRYPT(str,key_str)
  • str 傳入的明文
  • key_str 保密金鑰

這個函數允許使用官方AES(Advanced Encryption Standard)演算法進行資料加密和解密,就是有名的「Rijndael」。 保密金鑰的長度為128bit,不過你可以透過修改原始檔將其延伸到 256bit。使用128bit的原因是它的速度要快得多,且對於大多數用途而言這個保密程度已經足夠。
輸入參數可以為任何長度。若任何一個參數為NULL,則函數的結果也是NULL。
因為 AES 是以區塊為基礎的演算法,將會把不均衡長度字串補滿至可以編碼為止,回傳值長度的計算方式是:
16 * (trunc(string_length / 16) + 1)。
可以透過修改查詢文字將資料加密儲存在你的欄位裡面。
INSERT INTO t VALUES (1,AES_ENCRYPT('text','password'));
AES_ENCRYPT()和AES_DECRYPT() 可以被視為 MySQL 中普遍通用最安全的密碼的加密函數。

沒有留言: