aes_decrypt
函数
适用于:砖的SQL砖运行时10.3及以上
使用AES加密解密一个二进制产生。
参数
expr
:二进制
表达式进行解密。关键
:一个二进制
表达式。必须匹配键最初用于生产加密的值,16日,24日,或者32个字节长。模式
:一个可选的字符串
表达式描述加密模式用于生产加密的值。填充
:一个可选的字符串
表达式描述如何加密处理填充长度值的关键。油气地质
:一个可选的字符串
表达式提供经过验证的额外的数据(AAD)GCM
模式。必须匹配油气地质
用于生产加密的值。适用于砖运行时的13.3及以上。
返回
一个二进制。
模式
必须的(不区分大小写):
“CBC”
:使用密文块链接(CBC)模式。适用于砖SQL,砖运行时13.2及以上。“央行”
:使用电子码(ECB)模式。“GCM”
:使用伽罗瓦/计数器模式(GCM)。这是默认的。
填充
必须的(不区分大小写):
“没有”
:不使用填充。有效的只是“GCM”
。PKCS的
:使用公钥加密标准(PKCS)填充。有效的只是“央行”
和“CBC”
。“默认”
:使用“没有”
为“GCM”
和PKCS的
为“央行”
和“CBC”
模式。
该算法取决于关键的长度:
16
:aes - 12824
:aes - 19232
:aes - 256
容忍任何解密并返回产生的错误条件零
而不是使用try_aes_decrypt
例子
>选择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——try_aes_decrypt容忍aes_decrypt不是一个错误。>选择投(aes_decrypt(x“1234567890 abcdef1234567890abcdef”,“1234567890六边形abcdef”,“GCM”)作为字符串);错误:INVALID_PARAMETER_VALUE。AES_KEY>选择投(try_aes_decrypt(x“1234567890 abcdef1234567890abcdef”,“1234567890六边形abcdef”,“GCM”)作为字符串);零>选择base64(aes_encrypt(“Apache火花”,“0000111122223333”,“CBC”,PKCS的));U2FsdGVkX1/ERGxwEOTDpDD4bQvDtQaNe+gXGudCcUk=>选择aes_decrypt(unbase64(“U2FsdGVkX1 / ERGxwEOTDpDD4bQvDtQaNe + gXGudCcUk = '),“0000111122223333”,“CBC”,PKCS的);Apache火花>选择base64(aes_encrypt(“火花SQL”,“1234567890六边形abcdef”,“GCM”,“默认”,“123456789012”,一些广告的));MTIzNDU2Nzg5MDEyMdXvR41sJqwZ6hnTU8FRTTtXbL8yeChIZA= =>选择投(aes_decrypt(unbase64(“MTIzNDU2Nzg5MDEyMdXvR41sJqwZ6hnTU8FRTTtXbL8yeChIZA = =”),“1234567890六边形abcdef”,“GCM”,“默认”,一些广告的)作为字符串);火花SQL