数据脱敏
粘贴日志、工单或聊天记录,自动认出手机号、身份证、银行卡、邮箱、车牌和 IP 地址并打码。发截图、发包、发工单前先过一遍。
手机号留前三后四、身份证留前六后四、银行卡留前四后四、邮箱只遮用户名
粘贴文本后自动识别0 字符
脱敏结果
输入内容后这里会显示脱敏后的文本。
各类规则的命中情况
| 类型 | 命中 | 识别规则 |
|---|---|---|
| 邮箱 | 0 处 | 只遮 @ 前面的部分,域名保留,否则整行看不懂 |
| 身份证号 | 0 处 | 18 位,按出生日期和校验位这位形状来认,不校验校验码是否正确 |
| 手机号 | 0 处 | 11 位,1 开头、第二位 3 到 9 |
| 固定电话 | 0 处 | 区号加号码,连字符可有可无 |
| 银行卡号 | 0 处 | 16 到 19 位连续数字 |
| 车牌号 | 0 处 | 按省份简称加字母的格式认,新能源号牌也能认出来 |
| IPv4 地址 | 0 处 | 四段都要在 0 到 255 之间才算,逐段遮盖并保留点号 |
覆盖到哪些、覆盖不到哪些
共有 7 类规则:手机号、固定电话、身份证号、银行卡号、邮箱、车牌号和 IPv4 地址。这几类的共同点是格式固定,用正则就能稳定认出来,不需要联网也不需要模型。
认不出来的是姓名、地址、微信号、淘宝或游戏 ID、自定义编号。这些没有固定格式,「张伟」既可能是人名也可能是菜名。所以本页只做格式识别,不猜测,也不做模糊匹配——宁可少遮,也不要把正常文字改得面目全非。
为什么有的内容会被「误伤」
正则只看形状,看不懂语义。一串 16 到 19 位的数字,无论是银行卡号还是订单流水号,都会被当成银行卡遮掉;形如 11 位、1 开头的数字,哪怕是编号也会被当成手机号。遇到这种情况,把保留方式调成「整段遮盖」反而更安全,或者先用文本行处理把无关行去掉再来脱敏。
反过来,被拆散的数字也认不出来:写成 138 1234 5678 的手机号里空格不算分隔符,写成 138-1234-5678 同样不行。真要先清理格式,可以先用全角半角转换和文本行处理把文本整理一遍。
脱敏不等于合规
很多合规要求里,手机号要遮中间四位、身份证要遮到只留前六后四,本页的默认值就是按这个习惯来的。但要注意两点:一是遮盖只是降低风险,不是完全匿名,把原文和脱敏结果放一起就等于没遮;二是图片里的文字、截图上的水印、文件名里的信息,这个工具都处理不到。
最后,所有处理都在这台浏览器的内存里完成,页面没有任何上传接口。如果处理的是很敏感的材料,建议断网操作,或者干脆在离线环境里用脚本处理。