aes_decrypt函数

适用于:检查标记是的砖的SQL检查标记是的砖运行时10.3及以上

使用AES加密解密一个二进制产生。

语法

aes_decrypt(expr,关键(,模式(,填充(,油气地质]]])

参数

  • 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 - 128

  • 24:aes - 192

  • 32: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_VALUEAES_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