Hive加密,PostgreSQL解密还原

当前公司数据平台使用的处理架构,由Hive进行大数据处理,然后将应用数据同步到PostgreSQL中做各类外围应用。由于部分数据涉及敏感信息,必须在Hive进行加密,然后在PG使用时再进行单个数据解密,并监控应用的数据调用事情。因此需要实现Hive加密到PostgreSQL解密还原的过程。在不编写UDF的情况下,有以下方法。

HIVE加密

sql 复制代码
select 
base64(aes_encrypt(敏感用户名, 'Asxdc67890gt5rf3')) 加密后用户名
from table_name

关键点解析

密码长度必须是128、192、256个字节

没有各种参数来控制加密过程

PG解密

sql 复制代码
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

相关推荐
一只废狗狗狗狗狗狗狗狗狗12 小时前
基于docker desktop的hadoop集群结点启动失败问题
hadoop·docker·docker desktop
`林中水滴`16 小时前
Iceberg vs Hudi
数据仓库
奥利文儿16 小时前
【虚拟机】Ubuntu24安装Miniconda3全记录:避坑指南与实践
大数据·数据仓库·人工智能·数据库开发·etl·虚拟机·etl工程师
飞Link17 小时前
【Hadoop】Linux(CentOS7)下安装Hadoop集群
大数据·linux·hadoop·分布式
飞Link17 小时前
【Sqoop】Linux(CentOS7)下安装Sqoop教程
linux·hive·hadoop·sqoop
飞Link18 小时前
【Hive】Linux(CentOS7)下安装Hive教程
大数据·linux·数据仓库·hive·hadoop
心止水j20 小时前
hbase 电商1
hive
菜鸟冲锋号21 小时前
适配AI大模型非结构化数据需求:数据仓库的核心改造方向
大数据·数据仓库·人工智能·大模型
小鸡脚来咯21 小时前
Hive分桶表:大数据开发的性能优化利器
大数据·hive·性能优化
木卫二号Coding1 天前
hivesql 字段aa值 如何去掉前面的0
hive