脱敏算法运用哈希脱敏、遮盖掩码等方式对敏感数据(如姓名、账号、手机号等)进行脱敏处理,本文为您介绍如何查看和测试系统内置的脱敏算法。
页面介绍
在Dataphin首页,单击顶部菜单栏资产。
按照下图指引,进入脱敏算法页面。
参数
描述
算法名称
算法的脱敏名称。
算法类型
算法的脱敏类型。
功能描述
算法的脱敏功能描述。
脱敏示例
算法的脱敏例子。
脱敏实现方式
脱敏实现方式分为数据库内置函数和安全策略算法包两种方式。
数据库内置函数:使用数据库内置的函数实现数据脱敏。无需单独安装算法包即可使用,但是会有部分高级脱敏方式不支持。
安全策略算法包:使用安全模块的算法包进行脱敏。需要所在项目安装安全策略后才能使用,否则会被降级为默认脱敏方式。
对应函数/算法
项目安装安全脱敏策略算法后可使用。
脱敏算法说明
在脱敏算法页面,为您展示哈希算法、遮盖掩码等不同算法类型的信息及可选择对应的算法进行测试操作,如何测试,请参见测试脱敏算法。
点击说明按钮,查看算法函数使用说明步骤:
安装资产安全策略:脱敏算法是项目内的安全函数,部分引擎需要项目安装资产安全策略之后才可以脱敏,部分引擎使用引擎自带函数,可以直接脱敏,详情请参见项目安全策略、不同引擎支持的脱敏方式。
说明若是引擎自带函数,则无需安装算法包(如:AnalyticDB for PostgreSQL项目和云上Hologres项目)。
选择算法:根据需求场景选择算法,对敏感数据的查看进行脱敏,可选遮盖脱敏或哈希脱敏算法,对数据进行加密存储和传输,后续使用还需要原始值,选择对称加密或非对称加密算法。
注册密钥:对于需要密钥的算法(如对称加解算法),需要提前在密钥管理进行密钥的注册。详情请参见密钥管理。
引用函数:在研发模块进行数据处理脚本编写或即席查询时,即可在SQL语句中引用安全函数;配置脱敏规则时,也可以选择所需的安全函数。
测试脱敏算法
在脱敏算法页面,单击图标,进行脱敏算法测试。
在测试脱敏算法对话框,测试算法。
例如:中文名称脱敏算法,在输入值中输入张三,点击箭头,在输出值中输出*三。
例如:高级算法DES原生加密脱敏算法,需配置以下参数:
待脱敏内容长度需是8字节的倍数。
密钥支持用8位的数字或字符。
加密模式支持选择ECB、CBC、CFB、CTR、OFB五种模式。加解密配置需保持一致。加解密算法说明详情请参见加解密算法说明。
填充支持选择NoPadding、PKCS5Padding、 PKCS7Padding。加解密配置需保持一致。
偏移量称为IV,不同的IV加密后的字符串是不同的,IV为8位数字。加解密需要相同的IV。
输出格式支持Base64和Hex两种编码方式输出。
点击箭头,可查看输出值。
单击关闭。
目前支持的脱敏算法说明如下表。
算法名称
算法描述
遮盖(掩盖)
中文名称
对中文姓名中的姓氏进行脱敏,仅保留名字。
中文名称(名字脱敏)
对中文姓名中的名字进行脱敏,仅保留姓氏。
移动电话
对移动电话号码进行脱敏。
移动电话(隐藏长度)
对移动电话号码进行脱敏,会改变脱敏长度。
固定电话
对固定电话号码进行脱敏。
固定电话(隐藏长度)
对固定电话号码进行脱敏,会改变脱敏长度。
证件号码
对证件号码进行脱敏。
证件号码(隐藏长度)
证件号码进行脱敏,会改变脱敏长度。
银行卡号
对银行卡进行脱敏。
银行卡号(隐藏长度)
对银行卡进行脱敏,会改变脱敏长度。
地址
对地址进行脱敏。
电子邮件
对邮箱地址进行脱敏。
脱敏示例:输入username@example.com,输出u***@example.com。
淘宝昵称
对淘宝昵称进行脱敏
脱敏示例:输入淘宝达人001,输出淘***1。
生日
脱敏示例:输入2019-08-15,输出****-08-15。
关键字替换
自定义字符串脱敏位置,一共有三个参数,分别为待脱敏的完整字符串、脱敏部分的正则表达式、脱敏部分的替换字符串。例如输入string1, exp, string2,则会将string1字符串中符合exp表达式的部分替换为string2。
自定义掩码
自定义掩码字符串脱敏位置,参数成对输入,如输入n, m参数对,则对从n到m位置的字符串进行脱敏。
自定义掩码 (自定义替换值)
自定义掩码字符串脱敏位置,参数三个一组输入,如输入n, m, k参数组,则会将从n到m位置的字符串替换k。
哈希
SHA256
通用算法SHA256,哈希脱敏后结果是256位(长度为64的16进制字符)。
SHA384
通用算法SHA384,哈希脱敏后结果是384位(长度为96的16进制字符)。
SHA512
通用算法SHA512,哈希脱敏后结果是512位(长度为128的16进制字符)。
加盐SHA256
输入增加盐值的算法SHA256,更加安全,可以有效防止撞库。哈希脱敏后结果是256位(长度为64的16进制字符)。
加盐SHA384
输入增加盐值的算法SHA384,更加安全,可以有效防止撞库。哈希脱敏后结果是384位(长度为96的16进制字符)。
加盐SHA512
输入增加盐值的算法SHA512,更加安全,可以有效防止撞库。哈希脱敏后结果是512位(长度为128的16进制字符)。
MD5
通用算法MD5,哈希脱敏后结果是128位(长度为32的16进制字符)。
加盐MD5
通用算法MD5,哈希脱敏后结果是128位(长度为32的16进制字符)。
Base64
Base64就是一种基于64个可打印字符来表示二进制数据的方法,需要注意的是Base64后的结果可以被直接解码出来,安全性较低。
其他
高斯噪音
高斯噪音脱敏,用于数值型字段。输入一个数值,输出值随机,但总体上满足高斯分布。
不同引擎支持的脱敏方式
计算引擎 | 脱敏方式 | 支持的脱敏算法 |
MaxCompute | 安全策略算法包、数据库内置函数 |
|
Hologres | 数据库内置函数 | 不支持高斯、sha256、sha384、sha512、加盐sha256、加盐sha384、加盐sha512、加盐md5。 |
脱敏方式中,UDF脱敏是使用安全UDF的安装包进行数据脱敏保护,能够支持更灵活的数据方式,但是需要对应的项目安装之后,才可以使用;DB脱敏是使用计算引擎的原生函数进行脱敏保护,无需安装即可使用,但是会存在部分脱敏算法无法支持。
部分环境中,可能会存在同个租户内存在多个计算引擎的情况(如MaxCompute + Hologres),这时候建议选择多个计算引擎都支持的脱敏算法,不然可能会因为脱敏算法不支持,导致脱敏失败。
- 本页导读 (0)