今天上午学校有事请了半天假,下午布置的任务简单,就实现数据的脱敏,然后下午学习到了数据脱敏的概念。
什么是数据脱敏:
第一次看到这两个字不清楚这是什么,问了gpt。了解到了概念。
脱敏是一种数据保护技术,它指的是对敏感数据进行处理,使其不再具备直接或间接辨识个人身份的能力。 在脱敏过程中,可以用各种方法去除、替换或加密敏感数据,以确保数据在传输、存储和使用过程中不会暴露敏感信息。 数据脱敏在保护个人隐私方面具有重要作用,在企业、政府和互联网领域得到广泛应用。
今天学习到了两种脱敏处理的方法。
一种是字符串拼接。
这种方法的好处是简单,方便后期的维护,以及方便阅读。在后期交接项目的时候也方便,今天请教了公司的前辈,推荐使用这种方法。
具体实现很简单:
//字符串拼接,将姓名的姓用星号代替
private String desensitizeName(String realName) {
//字符串拼接
if(realName != null){
String Name = "*" + realName.substring(1);
return Name;
}
return realName;
}
一种是利用字符串工具类StrUtil
利用该类的hide方法,也可以实现。该方法的源码如下:
public static String hide(CharSequence str, int startInclude, int endExclude) {
return replace(str, startInclude, endExclude, '*');
}
该方法参数分别为需要脱敏的字符串,开始位置,结束位置(也是包前不包后),用*号代替掉返回
其实使用正则表达式也可以实现脱敏,但是需要对正则表达式很熟练,作为一个新手,不推荐使用
另外今天学习到了一个新的单词:desensitized