跳到内容

🛡 文本敏感信息脱敏

自动检测并脱敏文本中的邮箱、电话、IP、信用卡、JWT、AWS 密钥、Bearer 令牌。适用于分享日志或截图前清理。

完全免费 无需注册 浏览器内完成 5 种语言 深色模式

🔒 关于隐私 (重要)

📖 常见的坑

用正则从文本中检出邮箱地址、电话号码、IP、卡号、JWT、AWS 密钥、Bearer 令牌等,并以替换、部分遮蔽、删除或标签化的方式隐藏。处理全部在浏览器内完成。能检出的只限于「形式固定」的东西——「检出 0 条」并不等于「没有机密」。姓名、地址、公司内部标识这类没有固定形态的内容,原理上就抓不到

情形 会发生什么 怎么处理
没被检出的机密就那样留着 正则只能抓住格式确定的东西。因此姓名、地址、公司内部工单号、埋在 URL 里的 ID、Slack 频道名、数据库名、服务器主机名都会原样留下。尤其容易被忽略的是文件路径C:\Users\yamada\Desktop\.../home/tanaka/含有真实姓名。错误日志中的堆栈跟踪则完整暴露了内部主机名、目录结构、所用库的版本——这些对攻击者都很有用。 动手之前,请先把「这段文本里有什么」列举出来。等看到检出结果再想就晚了,你会误以为「工具找到的才是机密」。列好之后,工具没抓到的请手工替换(用编辑器的批量替换就够)。然后请从头到尾亲眼读一遍遮蔽后的文本;日志很长的话,至少要读开头、结尾、以及错误前后如果分享日志的目的是让人诊断错误,那么只截取相关的几十行是最安全的做法——几乎从不需要交出全文。
部分遮蔽反而把原值缩小到可猜 a***z@example.com090-****-5678 这类部分遮蔽,有时对「缩小候选范围」的贡献大于对「隐藏」的贡献。域名留着就能看出所属机构;末四位留着,就能与别处见过的同一号码对上。卡号尤为危险:前六位(发卡机构)与后四位都在,中间六位里还有一位是校验位,实际搜索空间只有五位——十万种可能这种模式最危险之处在于,「已经打码了所以安全」的感觉,来得比真正的安全更早。 若无法控制谁会看到,请选择完全替换或标签替换——只保留类别(如 [EMAIL][CARD]),在可读性与安全性之间取得最好的平衡:仍能看出那个位置原本有什么,日志也不失其意义。部分遮蔽只在「你自己或小范围团队日后需要区分」时才合适。若目的是追踪某条日志属于哪个用户,用哈希的前几位比用原值更安全——同一性得以保留,值却无法还原。拿不准就用标签:只有当你说得出「为什么要保留」时,才保留信息。
值是藏了,结构却泄露了 JSON 日志里键名原样保留时,仅仅一行 "user_email": "***" 就足以确定那里曾有一个邮箱地址若遮蔽后的字符数与原值等长,长度也会泄露——足以推测令牌的种类,或缩小密码的暴力搜索空间。同理,当同一个值出现在多处、遮蔽后仍是相同字符串时,你就传达了「它们是同一个值」——这对追踪日志很方便,但同时也交出了「这两个请求来自同一个人」这条信息。 请连键名一起去掉,或用标签有意地把信息量拉平——替换成定长的 [EMAIL]长度信息就消失了,只留下类别。是否保留同一性,请有意识地做选择:故障排查时要追踪「同一用户的一连串请求」,保留是值得的;但若要对外共享,同一性本身就是个人的行为轨迹最终判断取决于「这段文本会被谁读到」——公司内部频道、公开 issue、发给供应商,三者可接受的粒度并不相同。先确定共享对象,再选择遮蔽的强度。

本工具是「公开前的最后一道检查」,而不是日志设计的替代品。根本的对策是一开始就不要把机密写进日志——采用结构化日志,并在输出环节按字段做遮蔽(多数日志库都提供这类过滤机制)。理由很简单:日志一旦写出,就会被复制到日志聚合平台、备份、监控工具、告警通知中,事后清除实际上不可能。「以后再打码就行」不是一条可行的策略。此外,截图请使用图像马赛克工具——但要选纯黑填充,而不是马赛克或模糊。另外,本页的处理全部在浏览器内完成,输入不会被发送——你可以在开发者工具的 Network 面板中确认。面对处理机密的工具,请把这项确认变成习惯——没有理由仅凭一句「我们不发送」就予以信任。

📖 使用方法

  1. 1
    粘贴文本
    将日志或文本粘贴到输入框。
  2. 2
    选择类型和方式
    勾选需要的类别,选择脱敏方式。
  3. 3
    检测并脱敏
    点击按钮查看结果并复制。

❓ 常见问题

文本会发送到服务器吗?
不会。所有处理均在浏览器中完成,无网络通信。
信用卡检测准确度如何?
对 13-19 位数字应用 Luhn 校验,误报率低。格式不同可能未检出。
部分还是完全脱敏更安全?
完全脱敏最安全。部分脱敏适合调试时保留可识别性。

🔗 相关工具

🐛 此工具出现问题了吗?

免费、无需注册。仅提供复现步骤也有帮助。报告将直接发送给运营者并用于改进。

※ 为复现问题,浏览器信息 (UA / 屏幕 / 语言 / URL) 将自动发送