同形异义字与易混淆字符转换器

同形字转换器 — 检测并清理 Unicode 易混淆字符

转换是尽力而为:映射的易混淆项和 NFKC 折叠是确定性的,但某些合法的 Unicode 不会被标记。

您的文字

粘贴或键入 — 结果会在您键入时更新(对于长输入会稍微去抖)。

已扫描 0 个字符
0 个可疑项
保留可读的 Unicode
转换方式
原文(可疑字符已标记)

原始视图中的可疑字符带有下划线并标记为“可疑”。除了突出颜色。

清洁输出
人物分析

尚无可分析的字符。在上面粘贴文本以查看同形文字和易混淆的细分。

检测视觉上易混淆的 Unicode 字符,转换为更安全的 ASCII 或规范化 Unicode。浏览器本地处理。

这个同形文字转换器的作用

同形文字转换器可检测看起来像普通拉丁字母或数字(容易混淆的字符)的 Unicode 字符,并显示它们是如何标准化或替换的。您还可以运行生成同形文字以从纯 ASCII 构建确定性的类似欺骗的字符串以进行测试。这个免费的易混淆转换器和 unicode 易混淆检查器完全在您的浏览器中运行 - 将其用作 unicode 规范化工具、欺骗文本清理器或相似字符转换器以确保安全和审核。

如何使用这个 unicode 标准化工具

  1. 在输入区域中粘贴或键入要检查的文本。
  2. 选择“保留可读 Unicode”、“严格 ASCII 回退”或“生成同形文字”,具体取决于您是要清理粘贴的文本还是从 ASCII 构建测试样本。
  3. 并排比较原始文件(带有亮点)和输出;查看分析表以了解代码点和原因。
  4. 使用“复制输出文本”来复制结果,或使用“清除”来重置。

转换模式:可读 Unicode vs unicode 到 ASCII vs 生成

  • 保留可读 Unicode 首先应用捆绑的易混淆映射,然后在更改字符时应用 NFKC 规范化。输出可能仍包含未标记的非 ASCII 字母。
  • 严格 ASCII 回退使用相同的检测规则,但更喜欢地图中的 ASCII 替换。不在地图中的角色将保持原样,除非 NFKC 对其进行更改;这种模式对于欺骗文本清理工作流程来说更严格、更好。
  • 生成同形文字从左到右遍历您的输入,并将每个 ASCII 字母或数字替换为来自同一捆绑映射的单个确定性同形文字(清理的逆过程)。没有选择替代的字符仍保留 ASCII。

这里什么才算可疑

在清理模式下,当某个字符已知与定义的替换易混淆时,或者当 NFKC 规范化改变它时(例如全角数字),该字符将被标记。在生成模式下,“可疑”标记每个 ASCII 字母或数字被替换的位置。这不是完整的 unicode 安全审核——只是确定性规则。

常见用例

  • 检查粘贴字符串中的欺骗性用户名、域或同形文字攻击。
  • 对相似角色技巧的审核和信任与安全审查。
  • 开发人员在同形文字检测器视图旁边调试编码问题。

限制和安全注意事项

捆绑的地图涵盖了常见的西里尔字母、希腊字母和全角相似字母 - 并非所有 Unicode 都容易混淆。生成模式仅用于授权测试;不要用它来欺骗人们或绕过保护。结果是确定性的,而不是基于机器学习的风险评分。始终结合人工审核来做出高风险决策。

隐私

页面加载后,所有检测和转换都在 JavaScript 中本地运行。没有文本发送到服务器进行处理。

常见问题解答

什么是同形字?

同形文字是一种看起来像来自不同脚本或编码的另一个字符的字符,例如类似于拉丁语“a”的西里尔文“а”。攻击者在欺骗域、用户名和消息中使用它们。该工具用代码点和替换来显示这些字符。

这与 Unicode 标准化有何不同?

Unicode 规范化(例如 NFKC)以标准方式折叠兼容性和宽度变体。该工具将 NFKC 与一个小的显式易混淆映射相结合,以便您了解每个字符被标记的原因 — 这比普通的 unicode 标准化工具传递更有用。

严格的 ASCII 模式会改变合法的非英语文本吗?

严格 ASCII 回退会替换捆绑的易混淆映射中出现的字符或 NFKC 下的更改。其他非 ASCII 字母保持不变。如果合法文本包含这些映射字符,则仍然可能会发生更改,因此请检查分析列表。

我的文本会发送到服务器吗?

不会。页面加载后,检测和转换仅使用 JavaScript。此易混淆转换器不会上传您的粘贴进行分析。

这能抓住所有恶搞吗?

不。覆盖范围是确定性的且基于地图,而不是机器学习。它有助于常见的相似字符技巧,但并不是完整的安全审核。

生成同形文字模式有什么作用?

它将输入中的 ASCII 字母和数字替换为来自用于清理的同一捆绑映射的确定性相似值,这对于在授权环境中构建测试字符串非常有用(例如审核 QA)。它不是为了模仿或绕过保护。