MY_DECRYPT_AES128
功能描述
Vastbase支持使用MY_DECRYPT_AES128解密函数,根据给出的密钥字符串返回指定密文字符串的解密结果。
解密使用的密钥字符串必须与加密时使用的密钥字符串一致才能正常解密。
注意事项
- 该功能仅在数据库兼容模式为MySQL时支持(即数据库初始化时指定DBCOMPATIBILITY='B')。
该功能依赖于插件pgcrypto,使用如下命令安装插件:
create extension pgcrypto;
语法格式
MY_DECRYPT_AES128(crypt_str, key)
参数说明
crypt_str
密文字符串,text类型或者bytea类型。
key
用于解密的任意长度密钥字符串。支持中文字符。
解密时使用的密钥字符串必须与加密时一致才能正常解密。
示例
1、创建pgcrypto插件。
create extension pgcrypto;
2、使用中文字符作为原始数据以及密钥,并调用HEX函数得到加密结果的十六进制形式。
select HEX(MY_ENCRYPT_AES128('测试中文','test'));
返回结果如下:
hex
----------------------------------
747b55c24be0e2ccb2111336685d8bc0
(1 row)
3、将上一步得到的密文数据使用UNHEX函数转换后的结果作为MY_DECRYPT_AES128解密函数的入参。
select MY_DECRYPT_AES128(UNHEX('747b55c24be0e2ccb2111336685d8bc0'),'test');
返回结果如下,得到加密前的原始数据:
my_decrypt_aes128
-------------------
测试中文
(1 row)