
# 配置和查看静态脱敏算法
DSC为您提供了多种[脱敏算法]，以便于全方位确保敏感信息不被泄露。其中，Hash脱敏、字符掩盖、删除脱敏、取整脱敏、仿真脱敏，DSC已内置了脱敏规则，用户在[创建数据静态脱敏任务](https://support.huaweicloud.com/usermanual-dsc/dsc_01_0038.html)时，可直接选择使用。
**加密脱敏** 和**关键字替换** 需要提前完成相关配置，才可以在[创建数据静态脱敏任务](https://support.huaweicloud.com/usermanual-dsc/dsc_01_0038.html)时使用。
- [加密脱敏]需要提前配置好KMS加密的加密主密钥和数据密钥长度。
- [关键字替换]需要提前配置好需要识别的关键字及替换字符串。
 #### 脱敏算法和对应的使用场景
表1脱敏算法说明 
| 脱敏算法   | 脱敏方式说明                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               | 使用场景                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
|:---|:---|:---|
| Hash脱敏 | 使用Hash函数对敏感数据进行脱敏。支持SHA256和SHA512。 - SHA256 将数据库表中字符串类型字段的内容用其SHA256的摘要值代替。 该算法执行完后，结果的长度可能超过原表中列允许的最大长度。该算法按照SHA256输出长度调整列的长度。   - SHA512 将数据库表中字符串类型字段的内容用其SHA512的摘要值代替。 该算法执行完后，结果的长度可能超过原表中列允许的最大长度。该算法按照SHA512输出长度调整列的长度。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             | - 敏感类型： 密钥类   - 适用场景： 数据存储                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
| 加密脱敏   | 通过加密算法和加密主密钥生成指定的数据密钥，使用数据密钥对敏感数据进行加密达到数据脱敏的效果。 DSC支持AES256和SM4两种加密算法。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       | - 敏感类型： - 个人敏感  - 企业敏感    - 适用场景： 数据存储                                                                                                                                                                                                                                                                                                                                                                                                                                                              |
| 字符掩盖   | 使用指定字符\*或随机字符（随机字符包含随机数字、随机字母、随机数字字母三种类型）方式掩盖部分内容。 支持以下六种脱敏方式： - 保留前n后m  - 保留自x至y  - 掩盖前n后m  - 掩盖自x至y  - 特殊字符前掩盖  - 特殊字符后掩盖   说明： 敏感数据保护服务中已预置多种字符脱敏模板。                                                                                                                                                                                                                                                                                                                                                                                           | - 敏感类型： 个人敏感   - 适用场景： - 数据使用  - 数据分享                                                                                                                                                                                                                                                                                                                                                                                                                                                              |
| 关键字替换  | 在指定列中查找关键词并替换。 例如，目标字符串为"张三在家吃饭"，算法执行完后映射为"张先生在家吃饭"，其中指定将"张三"替换为"张先生"。 该算法执行完后，结果的长度可能超过数据库允许的最大长度。该算法将超出部分截断后插入数据库。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           | - 敏感类型： - 个人敏感  - 企业敏感  - 设备敏感    - 适用场景： - 数据存储  - 数据分享           |
| 删除脱敏   | 将指定字段设置为Null或空值进行脱敏。 - Null脱敏 将任意类型字段设置为NULL。 对于列属性设置为"NOT NULL"的字段，该算法在拷贝时将该列属性修改为"NULL"。   - 空值脱敏 将指定字段内容设置为空值。 具体来说，将字符型的字段设置为空串，数值类的字段设置为0，日期类的字段设置为1970，时间类的字段设置为零点。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             | - 敏感类型： - 个人敏感  - 企业敏感  - 设备敏感    - 适用场景： - 数据存储  - 数据分享     |
| 取整脱敏   | 针对日期或数字特定参数进行取整运算。 - 日期取整 年之后字段全部取整。示例："2019-05-12 -\> 2019-01-01"或"2019-05-12 08:08:08 -\> 2019-01-01 00:00:00" 月之后字段全部取整。示例："2019-05-12 -\> 2019-05-01"或"2019-05-12 08:08:08 -\> 2019-05-01 00:00:00" 日之后字段全部取整。示例："2019-05-12 -\> 2019-05-12"或"2019-05-12 08:08:08 -\> 2019-05-12 00:00:00" 小时之后字段全部取整。示例："08:08:08 -\> 08:00:00"或"2019-05-12 08:08:08 -\> 2019-05-12 08:00:00" 分钟之后字段全部取整。示例："08:08:08 -\> 08:08:00"或"2019-05-12 08:08:08 -\> 2019-05-12 08:08:00" 秒之后字段全部取整。示例："08:08:08.123 -\> 08:08:08.000"或"1575612731312 -\> 1575612731000"   - 数字取整 针对指定数字进行取整运算。    | - 敏感类型： 通用敏感   - 适用场景： - 数据存储  - 数据使用                                                                                                                                                                                                                                                                                                                                                                                                                                                               |
| 仿真脱敏   | DSC 识别敏感数据后，采用**仿真数据**替换原始敏感信息。仿真数据严格遵循原始数据的格式规范、业务规则与数据分布特征，以完全虚构的数值替代真实敏感值；在保障个人隐私与数据安全的同时，完整保留业务校验逻辑和数据关联关系，可直接支撑研发、测试及数据分析等各类业务场景使用。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             | - 敏感类型： - 个人敏感  - 企业敏感  - 设备敏感    - 适用场景： - 数据使用  - 数据分享                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                |
   
#### 配置和查看脱敏规则
您可以对指定数据类型配置脱敏规则实现敏感数据静态脱敏，本章节介绍脱敏算法支持的数据类型及如何添加和测试脱敏算法。
- [Hash脱敏]
- [加密脱敏]
- [字符掩盖]
- [关键字替换]
- [删除脱敏]
- [取整脱敏]
- [仿真脱敏]
将字符串类型字段用Hash值代替。在关系型数据库中，当该字段长度小于Hash长度时，会将目标库中该字段的长度与Hash值长度设置相同，保证Hash值完整写入目标库。DSC默认配置了SHA256和SHA512两种Hash脱敏的算法。
Hash脱敏为DSC内置的脱敏规则，不需要配置，如果您需要测试脱敏效果，可参考以下方法查看脱敏结果。
1. [登录DSC服务控制台](https://console.huaweicloud.com/dsc/)。
2. 单击左上角的![](https://support.huaweicloud.com/usermanual-dsc/zh-cn_image_0000002561646283.png)，选择区域或项目。
3. 在左侧导航树中选择"安全治理 \> 数据脱敏"，并选择"脱敏规则"页签，进入Hash脱敏的页面。 
   图1Hash脱敏   
   ![](https://support.huaweicloud.com/usermanual-dsc/zh-cn_image_0000002561646275.png "点击放大")
   
   
4. 在选择的SHA256或SHA512算法所在列，单击"编辑测试"。
5. 在"编辑测试"页面中，"脱敏算法"选择"Hash脱敏"，输入"原始数据"，单击"测试"，"脱敏结果"文本框中展示已完成脱敏的数据。 
   图2Hash脱敏测试   
   ![](https://support.huaweicloud.com/usermanual-dsc/zh-cn_image_0000002561726293.png "点击放大")
   
   
 
通过加密算法和加密主密钥生成一种加密配置，达到数据脱敏的效果。
1. [登录DSC服务控制台](https://console.huaweicloud.com/dsc/)。
2. 单击左上角的![](https://support.huaweicloud.com/usermanual-dsc/zh-cn_image_0000002561646283.png)，选择区域或项目。
3. 在左侧导航树中选择"安全治理 \> 数据脱敏"，并选择"脱敏规则"页签。
4. 选择"加密脱敏"页签，进入"加密脱敏"页面。 
   - "主密钥算法"：在下拉框选择加密算法，DSC提供了"AES256"和"SM4"加密算法。
     表2主密钥算法介绍 
     | 密钥类型 | 算法类型 | 密钥规格    | 说明        | 用途                  |
     |:---|:---|:---|:---|:---|
     | 对称密钥 | AES  | AES_256 | AES对称密钥   | 小量数据的加解密或用于加解密数据密钥。 |
     | 对称密钥 | SM4  | SM4     | 国密SM4对称密钥 | 小量数据的加解密或用于加解密数据密钥。 |
        
     
   
   - "KMS加密"可以选择"从KMS密钥中选择"和"输入KMS密钥ID"两种方式：
     - "从KMS密钥中选择"：单击下拉框选择已有的其他KMS主密钥，如果没有可选择的主密钥，单击"创建KMS主密钥"进行创建，创建方式详情请参见[创建KMS主密钥](https://support.huaweicloud.com/usermanual-dew/dew_01_0178.html)。
     
     - "输入KMS密钥ID"：输入位于当前Region的密钥。
      
   
   - 单击下拉框选择"数据密钥长度"，有128、192和256三种供选择。
   
   
   
   
5. 配置完成后，单击"生成加密配置"。 
   如果您需要删除已配置的加密脱敏规则，可在目标规则所在列的"操作"列，单击"删除"。
   ![](https://support.huaweicloud.com/usermanual-dsc/public_sys-resources/note_3.0-zh-cn.png)
   单击![](https://support.huaweicloud.com/usermanual-dsc/zh-cn_image_0000002561726295.png)打开轮换策略，轮换周期到期后会更新当前加密配置提升安全性。
   
   
 
使用指定字符"\*"或随机字符，按照指定方式遮盖部分内容。
支持"保留前n后m"、"保留自x至y"、"遮盖前n后m"、"遮盖自x至y"、"特殊字符前遮盖"和"特殊字符后遮盖"六种字符掩盖的方式。
1. [登录DSC服务控制台](https://console.huaweicloud.com/dsc/)。
2. 单击左上角的![](https://support.huaweicloud.com/usermanual-dsc/zh-cn_image_0000002561646283.png)，选择区域或项目。
3. 在左侧导航树中选择"安全治理 \> 数据脱敏"，并选择"脱敏规则"页签。
4. 选择"字符掩盖"页签，进入"字符掩盖"页面。
5. 单击"添加"，配置字符脱敏规则。 
   图3添加字符脱敏   
   ![](https://support.huaweicloud.com/usermanual-dsc/zh-cn_image_0000002530726348.png "点击放大")
   
   
6. 按照如[表3]所示配置相关参数，输入"原始数据"，单击"测试"，在"脱敏结果"文本框中展示已完成脱敏的数据。
   
    表3字符脱敏参数配置 
   | 参数   | 说明                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
   |:---|:---|
   | 名称   | 输入字符脱敏名称，只能由中文、英文字母、数字、下划线或中划线组成，且不能超过255个长度。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          |
   | 选择规则 | 有如下规则供选择： - "保留前n后m"  - "保留自x至y"  - "遮盖前n后m"  - "遮盖自x至y"  - "特殊字符前遮盖"  - "特殊字符后遮盖"   |
   | 掩盖位置 | 输入选择的对应规则的数值，如选择"保留自x至y"，x输入3，y输入6，则保留第3位到第6位的字符。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
   | 掩盖方式 | 掩盖方式包含： - 固定字符：用固定字符替换指定位置字符。  - 随机字符：用随机字符替换指定位置字符。                                                                                                                                                                                                                                                                                           |
   | 掩盖字符 | "掩盖方式"选择"固定字符"时显示该参数，输入指定字符。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
   | 随机方式 | "掩盖方式"选择"随机字符"时显示该参数，随机方式包含： - 随机字母  - 随机数字  - 随机数字字母组合                                                                                                                                                                                                                        |
      
   
   
7. 测试确认无误后，单击"保存"。 
   ![](https://support.huaweicloud.com/usermanual-dsc/public_sys-resources/note_3.0-zh-cn.png)
   - 数据安全中心服务中已预置多种字符脱敏规则。内置的脱敏规则不支持删除，自定义的规则可以在规则列表的"操作"列，单击"删除"，删除规则。
   
   - 所有的规则都支持编辑，在规则列表的"操作"列，单击"编辑测试"，修改规则。
    
   
   
 
利用自定义的字符串替换数据中匹配到的关键字，达到脱敏的效果。例如：原始数据为a**bcde** fg**bcde** fgkjkoij，"关键字"配置为"bcde"，"替换字符串"配置为12，则"脱敏结果"显示为a**12** fg**12**fgkjkoij。
1. [登录DSC服务控制台](https://console.huaweicloud.com/dsc/)。
2. 单击左上角的![](https://support.huaweicloud.com/usermanual-dsc/zh-cn_image_0000002561646283.png)，选择区域或项目。
3. 在左侧导航树中选择"安全治理 \> 数据脱敏"，并选择"脱敏规则"页签。
4. 选择"关键字替换"页签，进入"关键字替换"页面。
5. 单击左上角"添加"，进入"添加关键字"界面。
6. 设置需要替换的"关键字"，以及"替换字符串"。 
   配置后，"原始数据"中匹配到的"关键字"将被设置的"替换字符串"替换，以完成数据脱敏。
   图4添加关键字   
   ![](https://support.huaweicloud.com/usermanual-dsc/zh-cn_image_0000002530726350.png "点击放大")
   
   
7. 输入"原始数据"，单击"测试"，在"脱敏结果"文本框中展示已完成脱敏的数据。
8. 测试确认无误后，单击"保存"。 
   - 在关键字替换规则列表的"操作"列，单击"编辑测试"修改脱敏规则。
   
   - 在关键字替换规则列表的"操作"列，单击"删除"删除脱敏规则。
   
   
   
   
 
系统内置"Null脱敏"和"空值脱敏"两种算法。
- Null脱敏：将任意类型字段设置为NULL。对于属性设置为"NOT NULL"的字段，该算法在拷贝时将该属性修改为"NULL"。
- 空值脱敏：将指定字段内容设置为空值。具体来说，将字符型的字段设置为空串，数值类的字段设置为0，日期类的字段设置为1970，时间类的字段设置为零点。
 
删除脱敏为DSC内置的脱敏规则，不需要配置，可参考以下方法查看脱敏规则。
1. [登录DSC服务控制台](https://console.huaweicloud.com/dsc/)。
2. 单击左上角的![](https://support.huaweicloud.com/usermanual-dsc/zh-cn_image_0000002561646283.png)，选择区域或项目。
3. 在左侧导航树中选择"安全治理 \> 数据脱敏"，并选择"脱敏规则"页签。
4. 选择"删除脱敏"页签，进入"删除脱敏"的规则展示页面。
 
1. [登录DSC服务控制台](https://console.huaweicloud.com/dsc/)。
2. 单击左上角的![](https://support.huaweicloud.com/usermanual-dsc/zh-cn_image_0000002561646283.png)，选择区域或项目。
3. 在左侧导航树中选择"安全治理 \> 数据脱敏"，并选择"脱敏规则"页签。
4. 选择"取整脱敏"，进入"取整脱敏"的页面。 
   系统设置了"日期取整"和"数值取整"两种算法。
   - "日期取整"算法对应关系型数据库中timestamp，time，date，datetime等与时间相关的字段。
   
   - "数值取整"算法对应double，float，int，long等数值类型，脱敏成功后，保持原字段类型不变。
   
   
   
   
5. 单击"编辑测试"，进入"编辑测试"界面，选择"取整脱敏"脱敏算法，配置"取整值"。 
   **脱敏原理**：结果值取靠近"取整值"倍数的向下值。例如："取整值"设置为5，"原始数据"为14，5的倍数向下靠近14的数为10，则原始数据14按此规则脱敏后为10，即"脱敏结果"为10。
   图5数值取整   
   ![](https://support.huaweicloud.com/usermanual-dsc/zh-cn_image_0000002530886356.png "点击放大")
   
   
6. 输入"原始数据"，单击"测试"，在"脱敏结果"文本框中展示已完成脱敏的数据。
7. 测试确认无误后，单击"保存"。
 
在敏感数据识别到敏感内容后，会使用仿真的数据替换敏感内容，目前仅适用于OBS脱敏任务和数据库脱敏任务。
仿真脱敏为DSC内置的脱敏规则，不需要配置，可参考以下方法查看仿真脱敏支持的数据类型。
1. [登录DSC服务控制台](https://console.huaweicloud.com/dsc/)。
2. 单击左上角的![](https://support.huaweicloud.com/usermanual-dsc/zh-cn_image_0000002568875078.png)，选择区域或项目。
3. 在左侧导航树中选择"安全治理 \> 数据脱敏"，并选择"脱敏规则"页签。
4. 选择"仿真脱敏"页签，进入"仿真脱敏"的规则展示页面。 
   表4支持的仿真脱敏类型 
   | 编号 | 敏感数据规则名称    | 仿真脱敏的类型    |
   |:---|:---|:---|
   | 1  | 身份证号（中国内地）  | 身份证号       |
   | 2  | 生日          | 随机日期（指定范围） |
   | 3  | 日期          | 随机日期（指定范围） |
   | 4  | 手机号码（中国内地）  | 手机号码       |
   | 5  | 邮箱          | 邮箱         |
   | 6  | 邮政编码（中国内地）  | 邮政编码       |
   | 7  | 地址（中国内地）    | 地址         |
   | 8  | 精确地址（中国）    | 地址         |
   | 9  | 唯一设备识别码IMEI | IMEI       |
   | 10 | IPv4地址      | ipv4       |
   | 11 | IPv6地址      | ipv6       |
   | 12 | 银行卡号        | 银行卡号       |
   | 13 | 姓名（简体中文）    | 人名         |
   | 14 | 车牌号（中国内地）   | 车牌号        |
   | 15 | 护照号（中国内地）   | 护照号        |
      
   
   
 
#### 相关文档
- 脱敏模板可配置敏感数据对应的脱敏规则，配置脱敏任务时，选择对应模板，可以自动关联对应模板里的脱敏规则，如何创建脱敏模板，详见[创建脱敏模板](https://support.huaweicloud.com/usermanual-dsc/dsc_01_1022.html)。
- DSC服务支持对数据库、大数据以及OBS类型数据进行脱敏，如何创建数据静态脱敏任务，详见[创建数据静态脱敏任务](https://support.huaweicloud.com/usermanual-dsc/dsc_01_0038.html)。
 
