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

相关推荐
zgl_2005377913 小时前
ZGLanguage 解析SQL数据血缘 之 提取select语句中的源表名
大数据·数据库·c++·数据仓库·sql·数据库开发·etl
宸津-代码粉碎机15 小时前
Spring 6.0+Boot 3.0实战避坑全指南:5大类高频问题与解决方案(附代码示例)
java·数据仓库·hive·hadoop·python·技术文档编写
`林中水滴`16 小时前
Hive系列:Hive 默认分隔符
hive
昌sit!18 小时前
hadoop集群搭建
大数据·hadoop·分布式
yumgpkpm21 小时前
银行的数据智能平台和Cloudera CDP 7.3(CMP 7.3)的技术对接
数据库·人工智能·hive·hadoop·elasticsearch·数据挖掘·kafka
`林中水滴`1 天前
Hive系列:Hive 配置项详解
hive
`林中水滴`1 天前
Hive系列:Hive 安装和配置
hive
Hello.Reader1 天前
Flink Catalogs 元数据统一入口、JDBC/Hive/自定义 Catalog、Time Travel、Catalog Store 与监听器
大数据·hive·flink
Hello.Reader1 天前
Flink Modules 把自定义函数“伪装成内置函数”,以及 Core/Hive/自定义模块的加载与解析顺序
大数据·hive·flink
是阿威啊1 天前
【用户行为归因分析项目】- 【企业级项目开发第一站】项目架构和需求设计
大数据·hive·hadoop·架构·spark·scala