跳到正文
Cipherloom密码织机

CIPHER/SUBSTITUTION/NOMENCLATOR

名册密码(密码本)

发布 2026 年 9 月 26 日 · · 8 分钟阅读

名册密码一半是密码,一半是字典。它照常替换字母,但同时为真正要紧的名字——国王、城市、将领、月份——单独分配编码,使攻击者最想找到的那些词恰恰保护得最好。三百年来它是欧洲外交的标准工具,而它的失效方式从来不是数学上的。

时代
中世纪
类型
替换
密钥空间
codebook size
难度
野战
密文栅格图版:名册密码(密码本)
图版 nomenclator-cipher · 替换

I现象

十六世纪威尼斯的一本名册密码分三部分:字母的两三位数字编码表、为该语言所需音节准备的音节表,以及一份包含数百个专有名词、各有编号的 nomenclatura。

本条目旁的实验台复刻了它的形状。字母获得两三位数字编码;THE、AND、KING、POPE、WAR、FRANCE 各自获得独立编码;词与词之间用斜杠分隔。

层次示例用途
字母编码L = 83处理任何未收录内容
单词编码THE = 01去掉最可预测的文本
空码未使用的编号填充与诱饵
同音码同一字母多个编码压平频率画像

最后一行才是真正的手艺。如果 E 有四个不同编码、加密者轮换使用,频率画像就被压平,古典攻击随之减弱。但攻击者其实已经不再需要字母了——因为名字本身就是消息:一份由 03 06 05 组成的电报,只要你缴获了一本密码本,就完全不需要任何密码分析。

II密钥空间

密钥空间就是密码本中的条目数,而它完全靠管理而非计算得来。一本外交名册密码可能载有 1200 个编码;教廷用的更多。

优势是真实的:密码本做到了算法做不到的事——让重要的词成为昂贵的词。频率分析假设每个明文字符给攻击者带来的成本相同,而名册密码刻意打破这个假设。

代价同样真实,而且是运行层面的:每个通信对象都要有自己的一本,每本都必须安全递送,凡是可能被缴获就必须更换,每个文书都必须在时间压力下准确使用它。

名册密码的安全参数不是熵,而是“必须保守秘密的人数”。

III加密步骤

  • 编制密码本:字母编码、常用词编码,以及一份专有名词表。把条目编在密集的号段里。
  • 加入同音码:给最高频的字母各分配若干编码,并加入一批毫无意义的未使用编号。
  • 逐词加密:若有单词编码就用单词编码,否则逐字母加密。
  • 按接收方知道的规则轮换同音码——严格按顺序是最简单、也是现存密码本中最常见的做法。
  • 清楚地分隔词,通常用斜杠或重复编码。字母层与单词层之间的歧义是最常见的错误来源。
  • 在句末插入空码,使消息长度不携带信息。
  • 销毁消息的工作副本。密码本应当是唯一存活的实物。

IV解密步骤

  • 先由分隔符确定词边界。
  • 把每个编码在书中查出。两三位编码是字母;以某个特定号段开头的四位编码通常是专有名词。
  • 展开同音码:若同一字母有四个编码,四个都映射到同一个字母,所以对照十分直接。
  • 若某个编码查不到,要么密码本已过期,要么来自另一个通信对象——这是实践中最常见的失效情形。
  • 把空码当作空白,读出电报。
  • 记住你手里拿着的其实是什么:有了密码本,这就不是密码分析,而是誊录。安全性来自管理,因此破法也必须来自管理。

V弱点

密码本是一件实物。 它可以被缴获、出售、抄录、拍照。苏格兰女王玛丽败落,不是因为她的名册密码被数学攻破,而是因为她自己那些信件的明文被查获——密码撑住了,运行安全没撑住。

编码层内部仍有重复。 即使使用同音码,同一个词仍会出现同一个编码;若敌人已知一个名字,那么它每次出现敌人都知道。

密码本的维护难以扩展。 一场战役中新添一名将领,就要向所有通信对象重新发放密码本,而重新发放既慢又贵又显眼。

泄密是彻底且无声的。 算法被破会同时对所有人失效,并被人察觉。密码本被缴获只对某一个通信对象失效,可能数月无人发现,而这数月里每一条消息都被读走了。

笔误很常见。 编码是密集排列的四位数字;抄错一位会产出一个看起来很正常、却解成乱码的密文,而标准补救措施——重发——让攻击者拿到的通信量翻倍。

VI实战挑战

密文

01 / 03 / 02 / 01 / 04

提示: 单词编码排在密码本最前面;字母编码从 17 起递增。实验台工具输出的正是这套记号。

展开答案

明文

THE KING AND THE POPE

本条目为历史与教育内容。相关描述不是绕开任何在用系统安全措施的指引,也不构成专业建议。

·史料

这个词来自拉丁语 nomenclator——罗马家庭中负责向主人低声报出走近公民姓名的奴隶。密码学意义上的名册密码出现于十四、十五世纪的意大利城邦,此后一直是威尼斯、教廷、西班牙与英国外交通信的支柱。1586 年牵连苏格兰女王玛丽的巴宾顿阴谋信件,用的就是一套约 200 个符号、字母编码与名册混用的密码;英方秘书处与托马斯·菲利普斯合作将其读出,并且决定性地截获了授权该阴谋的那段加了封的附言。

·继续读

名册密码在二十世纪的后代是“密码本式”通信,间接地也是一次一密:认识到你需要的不是更聪明的变换,而是用过一次即销毁的密钥材料。

另一个后代是“对选定内容采用不同保护”这一思路。现代系统也这样做:不同类别的数据用不同的密钥、不同的有效期——普通消息与签名密钥不会、也不应该按同一标准保护。

下一台织机:null-cipher 靠“看起来根本不像消息”来隐藏消息。

+相关织线