安徽 网站信息内容建设,哈尔滨建站人,wordpress 评价 插件,安全网站建设公司当前公司数据平台使用的处理架构#xff0c;由Hive进行大数据处理#xff0c;然后将应用数据同步到PostgreSQL中做各类外围应用。由于部分数据涉及敏感信息#xff0c;必须在Hive进行加密#xff0c;然后在PG使用时再进行单个数据解密#xff0c;并监控应用的数据调用事情…当前公司数据平台使用的处理架构由Hive进行大数据处理然后将应用数据同步到PostgreSQL中做各类外围应用。由于部分数据涉及敏感信息必须在Hive进行加密然后在PG使用时再进行单个数据解密并监控应用的数据调用事情。因此需要实现Hive加密到PostgreSQL解密还原的过程。在不编写UDF的情况下有以下方法。
HIVE加密
select
base64(aes_encrypt(敏感用户名, Asxdc67890gt5rf3)) 加密后用户名
from table_name
关键点解析
密码长度必须是128、192、256个字节
没有各种参数来控制加密过程
PG解密
select convert_from(decrypt(decode(加密后用户名,base64),Asxdc67890gt5rf3,aes-ecb/pad:pkcs),utf8) 解密用户名from table_name
关键参数解析
algorithm是下列之一
bf — Blowfish
aes — AES (Rijndael-128, -192 或 -256)
mode是下列之一
cbc — 下一个块依赖前一个默认
ecb — 每一个块被独立加密只用于测试
padding是下列之一
pkcs — 数据可以是任意长度默认
none — 数据必须是密码块尺寸的倍数 参考资料
Hive函数aes_encrypt、 aes_decrypt详细说明页面
[HIVE-11593] Add aes_encrypt and aes_decrypt UDFs - ASF JIRA
PostgreSQL加解密模块pgcrypto详细说明页面
http://postgres.cn/docs/14/pgcrypto.html