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

相关推荐
weixin_4624462312 分钟前
一键安装 Hadoop 3.3.6 自动化脚本详解 |(含 JAVA_HOME 自动配置)
java·hadoop·自动化
3分钟秒懂大数据11 小时前
实时数仓实战篇一:长周期去重指标建设
大数据·数据仓库·面试·性能优化·flink
蓝眸少年CY12 小时前
什么是Hadoop
大数据·hadoop·分布式
zhixingheyi_tian12 小时前
Yarn 之 numa-awareness
hadoop
白日与明月13 小时前
Hive 中 UNION 与 UNION ALL
hive
白日与明月14 小时前
Hive 大表 Join 优化:从策略选择到倾斜处理
数据仓库·hive·hadoop
Java程序员威哥15 小时前
SpringBoot2.x与3.x自动配置注册差异深度解析:从原理到迁移实战
java·大数据·开发语言·hive·hadoop·spring boot·后端
【赫兹威客】浩哥17 小时前
【赫兹威客】Hadoop完全分布式克隆文件部署教程
大数据·hadoop·分布式
王九思18 小时前
SQL网关 Kyuubi 系列——基本介绍
数据仓库·hive·hadoop·sql·spark
白日与明月20 小时前
面试备考-Hive窗口函数
hive·面试·职场和发展