文档

脱敏算法

更新时间:

脱敏算法运用哈希脱敏、遮盖掩码等方式对敏感数据(如姓名、账号、手机号等)进行脱敏处理,本文为您介绍如何查看和测试系统内置的脱敏算法。

页面介绍

  1. 在Dataphin首页,单击顶部菜单栏资产

  2. 按照下图指引,进入脱敏算法页面。

    image

    参数

    描述

    算法名称

    算法的脱敏名称。

    算法类型

    算法的脱敏类型。

    功能描述

    算法的脱敏功能描述。

    脱敏示例

    算法的脱敏例子。

    脱敏实现方式

    脱敏实现方式分为数据库内置函数安全策略算法包两种方式。

    • 数据库内置函数:使用数据库内置的函数实现数据脱敏。无需单独安装算法包即可使用,但是会有部分高级脱敏方式不支持。

    • 安全策略算法包:使用安全模块的算法包进行脱敏。需要所在项目安装安全策略后才能使用,否则会被降级为默认脱敏方式。

    对应函数/算法

    项目安装安全脱敏策略算法后可使用。

脱敏算法说明

在脱敏算法页面,为您展示哈希算法、遮盖掩码等不同算法类型的信息及可选择对应的算法进行测试操作,如何测试,请参见测试脱敏算法

image

点击说明按钮,查看算法函数使用说明步骤:

image
  1. 安装资产安全策略:脱敏算法是项目内的安全函数,部分引擎需要项目安装资产安全策略之后才可以脱敏,部分引擎使用引擎自带函数,可以直接脱敏,详情请参见项目安全策略不同引擎支持的脱敏方式

    说明

    若是引擎自带函数,则无需安装算法包(如:AnalyticDB for PostgreSQL项目和云上Hologres项目)。

  2. 选择算法:根据需求场景选择算法,对敏感数据的查看进行脱敏,可选遮盖脱敏或哈希脱敏算法,对数据进行加密存储和传输,后续使用还需要原始值,选择对称加密或非对称加密算法。

  3. 注册密钥:对于需要密钥的算法(如对称加解算法),需要提前在密钥管理进行密钥的注册。详情请参见密钥管理

  4. 引用函数:在研发模块进行数据处理脚本编写或即席查询时,即可在SQL语句中引用安全函数;配置脱敏规则时,也可以选择所需的安全函数。

测试脱敏算法

  1. 在脱敏算法页面,单击test图标,进行脱敏算法测试。

    image
  2. 测试脱敏算法对话框,测试算法。

    例如:中文名称脱敏算法,在输入值中输入张三,点击image箭头,在输出值中输出*三。

    image

    例如:高级算法DES原生加密脱敏算法,需配置以下参数:

    • 待脱敏内容长度需是8字节的倍数。

    • 密钥支持用8位的数字或字符。

    • 加密模式支持选择ECB、CBC、CFB、CTR、OFB五种模式。加解密配置需保持一致。加解密算法说明详情请参见加解密算法说明

    • 填充支持选择NoPadding、PKCS5Padding、 PKCS7Padding。加解密配置需保持一致。

    • 偏移量称为IV,不同的IV加密后的字符串是不同的,IV为8位数字。加解密需要相同的IV。

    • 输出格式支持Base64和Hex两种编码方式输出。

      点击image箭头,可查看输出值。

      image..png
  3. 单击关闭

    目前支持的脱敏算法说明如下表。

    算法名称

    算法描述

    遮盖(掩盖)

    中文名称

    对中文姓名中的姓氏进行脱敏,仅保留名字。

    中文名称(名字脱敏)

    对中文姓名中的名字进行脱敏,仅保留姓氏。

    移动电话

    对移动电话号码进行脱敏。

    移动电话(隐藏长度)

    对移动电话号码进行脱敏,会改变脱敏长度。

    固定电话

    对固定电话号码进行脱敏。

    固定电话(隐藏长度)

    对固定电话号码进行脱敏,会改变脱敏长度。

    证件号码

    对证件号码进行脱敏。

    证件号码(隐藏长度)

    证件号码进行脱敏,会改变脱敏长度。

    银行卡号

    对银行卡进行脱敏。

    银行卡号(隐藏长度)

    对银行卡进行脱敏,会改变脱敏长度。

    地址

    对地址进行脱敏。

    电子邮件

    对邮箱地址进行脱敏。

    脱敏示例:输入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

安全策略算法包、数据库内置函数

  • 若脱敏方式为安全策略算法包,则支持所有算法。

  • 若脱敏方式为数据库内置函数,则不支持高斯、sha256、sha384、sha512、加盐sha256、加盐sha384、加盐sha512、加盐md5。

Hologres

数据库内置函数

不支持高斯、sha256、sha384、sha512、加盐sha256、加盐sha384、加盐sha512、加盐md5。

说明
  • 脱敏方式中,UDF脱敏是使用安全UDF的安装包进行数据脱敏保护,能够支持更灵活的数据方式,但是需要对应的项目安装之后,才可以使用;DB脱敏是使用计算引擎的原生函数进行脱敏保护,无需安装即可使用,但是会存在部分脱敏算法无法支持。

  • 部分环境中,可能会存在同个租户内存在多个计算引擎的情况(如MaxCompute + Hologres),这时候建议选择多个计算引擎都支持的脱敏算法,不然可能会因为脱敏算法不支持,导致脱敏失败。

  • 本页导读 (0)
文档反馈