aes_encrypt
函數
適用於:磚的SQL磚運行時10.3及以上
使用AES加密二進製加密。
參數
expr
:二進製
表達式是加密的。關鍵
:一個二進製
表達式。用於加密的關鍵expr
。24歲的必須是16或32個字節長。模式
:一個可選的字符串
表達式描述加密模式。填充
:一個可選的字符串
表達式描述如何加密處理填充長度值的關鍵。四世
:一個可選的字符串
提供一個初始化向量(IV)表達式GCM
或加拿大廣播公司
模式。適用於磚運行時的13.3及以上。油氣地質
:一個可選的字符串
表達式提供經過驗證的額外的數據(AAD)GCM
模式。適用於磚運行時的13.3及以上。
返回
一個二進製
。
模式
必須的(不區分大小寫):
“CBC”
:使用密文塊鏈接(CBC)模式。適用於磚SQL,磚運行時13.2及以上。“央行”
:使用電子碼(ECB)模式。“GCM”
:使用伽羅瓦/計數器模式(GCM)。這是默認的。
填充
必須的(不區分大小寫):
“沒有”
:不使用填充。有效的隻是“GCM”
。PKCS的
:使用公鑰加密標準(PKCS)填充。有效的隻是“央行”
和“CBC”
。PKCS填充添加1 -鍵的長度的字節數墊expr
一個的倍數關鍵
長度。每個墊的值填充字節的字節數。“默認”
:使用“沒有”
為“GCM”
和PKCS的
為“央行”
,“CBC”
模式。
四世
指定時,必須為12字節長GCM
和16字節加拿大廣播公司
。
該算法取決於關鍵的長度:
16
:aes - 12824
:aes - 19232
:aes - 256
例子
>選擇base64(aes_encrypt(“火花”,“abcdefghijklmnop”));4A5jOAh9FNGwoMeuJukfllrLdHEZxA2DyuSQAWz77dfn>選擇投(aes_decrypt(unbase64(“4 a5joah9fngwomeujukfllrldhezxa2dyusqawz77dfn”),“abcdefghijklmnop”)作為字符串);火花>選擇base64(aes_encrypt(“火花SQL”,“1234567890六邊形abcdef”,“央行”,PKCS的));3lmwu+Mw0H3fi5NDvcu9lg= =>選擇投(aes_decrypt(unbase64(“3 lmwu + Mw0H3fi5NDvcu9lg = =”),“1234567890六邊形abcdef”,“央行”,PKCS的)作為字符串);火花SQL>選擇base64(aes_encrypt(“火花SQL”,“1234567890六邊形abcdef”,“GCM”));2sXi+jZd/ws+qFC1Tnzvvde5lz+8Haryz9HHBiyrVohXUG7LHA= =>選擇投(aes_decrypt(unbase64(' 2 sxi + jZd / ws + qFC1Tnzvvde5lz + 8 haryz9hhbiyrvohxug7lha = = '),“1234567890六邊形abcdef”,“GCM”)作為字符串);火花SQL>選擇base64(aes_encrypt(“火花SQL”,“1234567890六邊形abcdef”,“GCM”,“默認”,“123456789012”,一些廣告的));MTIzNDU2Nzg5MDEyMdXvR41sJqwZ6hnTU8FRTTtXbL8yeChIZA= =>選擇投(aes_decrypt(unbase64(“MTIzNDU2Nzg5MDEyMdXvR41sJqwZ6hnTU8FRTTtXbL8yeChIZA = =”),“1234567890六邊形abcdef”,“GCM”,“默認”,一些廣告的)作為字符串);火花SQL