README.md

    数据脱敏

    用户在使用网站、App、小程序等应用时,不可避免的会留存一些用户个人敏感数据,比如手机号、身份证号、家庭住址、公司地址等敏感信息。 应用在存储用户敏感数据时可能是明文或密文存储,用户在使用应用过程中会访问到这些敏感数据,如果直接以明文方式返回,网络传输过程中可能 会被非法拦截到导致敏感数据泄漏。对于敏感信息用户可能并不会真正查看全部的原始明文,如果以密文方式返回会增加加解密的开销, 密文一般都比明文大也会增加网络传输开销,当敏感数据比较多时开销会剧增。敏感数据脱敏是安全性与性能之间权衡后的折中方案, 在应用返回数据前将敏感数据脱敏后返回给用户,脱敏后的数据和原始明文差不多一样大,没有增加网络开销也没有加解密的开销。

    数据脱敏对象

    数据脱敏是针对基础数据进行遮罩处理,将敏感数据指定部位替换成遮罩符号,一般是针对字符串数据进行脱敏处理。

    数据脱敏类型

    常见的用户敏感数据有手机号、证件号、银行卡号、地址、密码等,不同的敏感数据处理规则也不一样

    数据脱敏规则(脱敏场景)

    [DesensitizedRule.java] enable 是否开启脱敏 prefixNoMaskLen 前置不需要打码的长度 suffixNoMaskLen 后置不需要打码的长度 mask 遮罩符,用什么字符或字符串代替原始字符

    数据脱敏策略

    除了上述提到的替换字符方式外,针对数字类型科室用随机数替换、剪切原始数据、使用统一数字代替等,本质上都是替换字符,只不过替换的策略不同

    1、指定遮罩符替换 2、随机数替换 3、替换为统一值 4、剪切,比如剔除指定位置字符本质还是替换字符,用空字符替换。指定位置补充字符 5、密文

    项目简介

    用户在使用网站、App、小程序等应用时,不可避免的会留存敏感数据,比如手机号、身份证号、住址等敏感信息。如果直接以明文方式返回,网络传输过程中可能会被非法拦截到导致敏感数据泄漏。如果以密文方式返回会增加加解密的开销,密文一般都比明文大也会增加网络传输开销。敏感数据脱敏是安全性与性能之间权衡后的折中方案,脱敏后的数据和原始明文差不多一样大,没有增加网络开销也没有加解密的开销。

    发行版本

    当前项目没有发行版本

    贡献者 1

    开发语言

    • Java 100.0 %