一文讲透【静态脱敏实操】

1:直接上工具类


    cn.hutool
    hutool-all
    5.8.16

2:Hutool 支持的脱敏数据类型
现阶段最新版本的 Hutool 支持的脱敏数据类型如下,基本覆盖了常见的敏感信息。

  1. 用户 id
  2. 中文姓名
  3. 身份证号
  4. 座机号
  5. 手机号
  6. 地址
  7. 电子邮件
  8. 密码
  9. 中国大陆车牌,包含普通车辆、新能源车辆
  10. 银行卡

3:使用 Hutool 工具类一行代码实现脱敏

Hutool 提供的脱敏方法如下图所示:

一文讲透【静态脱敏实操】_第1张图片

import cn.hutool.core.util.DesensitizedUtil;
import org.junit.Test;
import org.springframework.boot.test.context.SpringBootTest;

/**
 * 
 * @description: Hutool实现数据脱敏
 */
@SpringBootTest
public class HuToolDesensitizationTest {

    @Test
    public void testPhoneDesensitization(){
        String phone="13723231234";
        System.out.println(DesensitizedUtil.mobilePhone(phone)); //输出:137****1234
    }
    @Test
    public void testBankCardDesensitization(){
        String bankCard="6217000130008255666";
        System.out.println(DesensitizedUtil.bankCard(bankCard)); //输出:6217 **** **** *** 5666
    }

    @Test
    public void testIdCardNumDesensitization(){
        String idCardNum="411021199901102321";
        //只显示前4位和后2位
        System.out.println(DesensitizedUtil.idCardNum(idCardNum,4,2)); //输出:4110************21
    }
    @Test
    public void testPasswordDesensitization(){
        String password="www.jd.com_35711";
        System.out.println(DesensitizedUtil.password(password)); //输出:****************
    }
}

4:金融行业需要对股票代码进行脱敏,这里提供一种思路:

用Map进行加密0-9 对应 自定义的10个英文字母,比如 0—U 1—q 等等;

如果股票代码是英文则把取英文字母的ascll码乘以2,3,5等等进行加密处理!

这样加密脱敏就完成了,解密就用自定义的密钥Map进行反向操作即可!

你可能感兴趣的:(#,Java中常用的类,java,服务器,前端)