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