如何使用解码器
本工具在您提供符号到字母映射表的情况下解密同音密码消息。以 JSON 格式输入映射关系并粘贴密文——解码器会将每个符号替换为对应的字母,对于未知符号则标注 [?]。
输入要求
- 符号映射(JSON): 一个对象,其中键为密文符号,值为明文字母。点击"加载示例"查看格式。
- 密文: 使用您映射中定义的符号所组成的加密消息。
快速开始
- 在第一个字段粘贴您的 JSON 符号映射
- 在第二个字段输入密文
- 点击"解密"
- 查看输出——方括号标注了映射中未找到的符号
在没有密钥的情况下破解同音密码
当没有映射表可用时,密码分析通过逐步细化的猜测来进行。这个过程比破解简单替换密码更费力,但同样的基本原则适用。
基于频率的方法
- 统计密文中的每个符号并按频率排序
- 分组频率相近且较低的符号——这些符号可能代表同一个高频字母(E、T、A)
- 测试分配方案:将最可能的字母代入,检查是否能识别出单词
- 迭代细化,利用上下文线索、二元组模式(TH、HE、IN)和常见词结构
二元组和三元组分析
即使单个符号的频率趋于平坦,字母组合仍然遵循可预测的模式。通过观察符号对(TH、HE、AN、IN)和三元组(THE、AND、ING),可以揭示哪些符号组代表哪些字母,因为配对关系在同音编码后依然保留。
计算机方法
现代密码分析工具使用爬山算法:
- 从随机映射假设开始
- 测试小的变化(交换两个符号的分配)
- 根据英语语言统计数据评分每个候选解密结果
- 保留改进,丢弃更差的结果
- 经过数百万次迭代后收敛到正确映射
这是最终于 2020 年破解佐迪亚克杀手 Z340 密码所使用的关键技术之一,彼时该密码已抵抗了 51 年。
大密码:200 年的解密挑战
路易十四的**大密码(Grande Chiffre)**从 1626 年创建到 1890 年法国密码分析家 Etienne Bazeries 将其破解,一直未被攻克。使其异常难以破解的原因有以下几点:
| 特性 | 对安全性的影响 |
|---|---|
| 600 多个符号 | 密钥空间庞大,频率极度平坦化 |
| 命名符(Nomenclators) | 整个单词被编码为单个符号 |
| 空符号 | 随机插入的无意义诱饵 |
| 密钥材料丢失 | Rossignol 父子去世后,参考副本不复存在 |
| 密文数量有限 | 流传至今可供分析的消息相对较少 |
Bazeries 的突破来自于识别可能代表常见法语短语的重复序列,然后系统性地对剩余文本测试假设。
常见问题
没有映射表能破解同音密码吗?
可以,但需要大量密文(通常 1000 个以上的符号)和高级统计分析。每个字母分配的符号越多,分析人员需要的文本就越多。简单系统(50-100 个符号)可能在数小时内被破解;设计良好的系统(500 个以上符号)可能会抵抗更长时间。
手动解密需要多长时间?
对于拥有 50-100 个符号的基础密码,有经验的密码分析家可能需要数小时到数天。像大密码这样复杂的历史系统需要数月乃至数年。计算机工具可以大幅加快这一过程。
为什么这类密码比简单替换更难破解?
标准频率分析针对的是明文字母与密文符号之间的一一对应关系。同音密码将每个字母分散到多个符号上,平坦化了频率分布。分析人员必须转而依赖二元组模式、可能词和迭代测试——这些技术需要更多密文和更大的计算量。
同音密码今天还在使用吗?
不再用于严肃的安全场景。AES-256 等现代算法的安全性远高于此。然而,该密码在讲授密码学原理、理解历史通信和娱乐解谜方面仍具价值。
有效加密所需的最小符号集是多少?
历史实践中符号数量从 50 到 600 不等。100-200 个符号可为教育目的提供合理的频率平坦化效果。符号越多,安全性越好,但密钥材料也越大,越难管理。
佐迪亚克杀手是如何使用同音替换的?
佐迪亚克杀手的 Z408 密码(1969 年)使用了大约 54 个唯一符号的同音替换方案。Donald 和 Bettye Harden 通过模式识别和可能词猜测在一周内将其破解。Z340 密码将同音替换与换位相结合,抵御了所有攻击,直到 2020 年一支团队通过计算机方法将其破解。