LightDB23.4支持mysql aes_encrypt/aes_decrypt/hex/unhex函数

背景介绍

为了兼容mysql数据库的功能,在LightDB23.4版本上支持hex/unhex/aes_encrypt/aes_decrypt函数。

函数原型如下:

  • hex(data bytea) returns text
  • unhex(data varchar) returns bytea
  • aes_encrypt(data bytea, key bytea) returns bytea
  • aes_encrypt(data varchar, key varchar) returns bytea
  • aes_decrypt(data bytea, key bytea) returns bytea
  • aes_decrypt(data varchar, key varchar) returns bytea
  • aes_decrypt(data bytea, key varchar) returns bytea

使用示例

  1. hex函数,将bytea类型数据转成text类型
select hex('\x0123456789abcdef');
       hex        
------------------
 0123456789abcdef
(1 row)
  1. unhex函数,将varchar类型数据转成bytea类型
select unhex('0123456789abcdef');
       unhex        
--------------------
 \x0123456789abcdef
(1 row)
  1. aes_encrypt,使用aes加密算法和密钥加密数据。
select aes_encrypt('world', '123456');
            aes_encrypt             
------------------------------------
 \x85400d3bbeeeb51259f497fcb4bee03e
(1 row)
  1. aes_decrypt,解密通过aes_encrypt加密的数据。
select aes_decrypt(aes_encrypt('world', '123456'), '123456');
 aes_decrypt  
--------------
 \x776f726c64
(1 row)

你可能感兴趣的:(mysql,数据库)