本地文本脱敏工具
遮盖常见邮箱、链接、电话号码和卡号样式,或使用自定义文字与正则规则,输出脱敏文本。
可复核的脱敏结果
选择识别类型,将匹配区域替换为类型标签、逐码点遮盖字符或固定文字。重叠匹配会合并,因此包含邮箱的 URL 作为一个区域替换。报告只包含区域计数和标签,不包含原始匹配或片段。复制与下载只导出脱敏后的结果。
自定义规则
附加规则是包含 type(literal 或 regex)、pattern、flags、label 的 JSON 数组。标签使用 1–24 位大写 ASCII 字母、数字或下划线,并以字母开头。正则标志支持不重复的 i、m、u,自动使用全局 Unicode 匹配;literal 规则会转义正则字符。最多 10 条规则,每个模式最多 200 字符,不接受零长度匹配。
模式识别的边界
内置识别采用启发式规则。电话样式要求 7–15 位数字及加号或常见分隔符;卡号样式要求 13–19 位数字并通过 Luhn 校验,均不证明真实电话或银行卡。姓名、地址、特殊标识和未识别格式可能保留。分享前必须复核完整结果。输入上限为 200,000 个 UTF-16 单位和 5,000 个匹配,Worker 可取消,5 秒后终止。
常见问题
遮盖后能保证匿名吗?
不能。工具只应用所选模式及自定义规则,不能推断所有敏感信息,也不能证明法律意义上的匿名化。
替换文字会展开美元符号表达式吗?
不会。固定文字按字面插入,$& 等表达式不会重新插入原始匹配;遮盖字符模式保留换行。
输入会上传或保存吗?
不会。处理在本机 Web Worker 中进行,不向 API 上传文本,也不写入本地存储。更改选项会取消旧任务并清除旧结果。
其他语言
参考资料
我们如何确保结果正确
我们使用以下自动化测试验证此工具。下方保留测试用例的原始名称,便于查看实际断言和复现。
- 验证方法
- 检查邮件、URL、电话和卡号样本的完整范围及重叠处理,并确认不匹配的文本保留。
- 对比依据
- 明确文本范围、UTF-16 偏移和 Luhn 有效/无效样本。
- 验证范围
- 提取或脱敏规则并不能保证识别所有敏感文本。
测试源码与用例(点击文件名查看)
-
text-redaction-tools.test.js
- contact redaction includes complete URLs and merges overlapping email regions
- common separated phones and Luhn cards are recognized, invalid cards are left untouched
这些测试覆盖列出的样本和边界,不代表所有输入都已证明正确。往返测试和使用同一依赖库的检查,不属于独立交叉验证。