中文译本 · 原作 Daniel Bourdeau《Unsolved Historical Ciphers》 以 CC BY 4.0 发布,本页由 JIC 翻译,非原作者官方版本,译文如有出入以英文原页为准 · 查看英文原页 ↗
44 ϝ 4 ʤ ⧺ ℓ ʒ ‡ π ӻ ⊥ φ k 6 Ƶ 80 ∫∫ 33 Ƒ d ξ s
y a n s m u e · i a u o i s d c s e i o u r n · 315 = 贝阿恩人

布尔戈斯 → 法国 · 带虚码和代码组的同音替换密码 · 1592年

A. Pelissier 致 Pierre Jeannin,布尔戈斯,1592年9月13日

Pierre Jeannin
收信人Pierre Jeannin

BnF Français 3982 no. 22, ff. 46r–50r · 九页,377 段密文,约 18,400 个符号 · Tomokiyo 列为“mostly in cipher, only partially deciphered”(大部分为密文,仅部分解读)· 天主教联盟派驻腓力二世宫廷的代理人,写于1593年三级会议前四个月

Tomokiyo 为 Pelissier 密码复原的密钥适用,并已套用。它那些形近的符号,借助 Pelissier 十月信件中与明文解读对齐的 1,764 个符号作了校准,然后用拆分后的符号类别把整封信重新解密了一遍。解密是部分的:94% 的加密词能读通(90% 确定无疑),每一处缺口都已列出

Daniel Bourdeau · 发布于 · 更新于

方法:用已知密钥读出 · 完成程度:部分(密文的 93%)

摘要。Pelissier 是天主教联盟派驻西班牙的代理人,这是他1592年9月写给马耶讷公爵的谋士 Pierre Jeannin 的长篇报告。明文段落一直都能读懂。而加密段落占了信的大部分,承载着谈判本身,这封信存世时只有同时代一位解读者零星写下的几处行间注释。Satoshi Tomokiyo 根据同一卷中两封有完整解读的后来的信(第 45 和 46 号,1592年10月27日)复原了 Pelissier 的密钥,但他没有解读第 22 号,也没有找到已发表的解读。他的密钥适用于这封信。在密文中,腓力赐给 Pelissier 500 杜卡特,让他留下等候消息。Pelissier 主张眼下不要召开三级会议,而应派两支军队上阵,一支把亨利四世从塞纳河逼退到卢瓦尔河,另一支解救巴黎和鲁昂,费用为每月约 300,000 埃居。他报告了法国国内主张承认纳瓦拉的种种说法,以及有人怀疑腓力想让法国保持分裂。他警告说马耶讷的权威正遭到削弱,而他仍在等待 Idiáquez 父子一再承诺的 50,000 埃居。第一次解密只得出约一半到三分之二的密文。密钥没有问题;剩余部分是由于转录时把形近的符号合并了。于是用 Pelissier 自己的十月信件校准了密钥,即与明文解读对齐的 1,764 个符号,再用拆分后的符号类别把每一页重新解密。现在 94% 的加密词能读通,其中 90% 确定无疑;剩下的 256 处缺口是单个难认的符号、纸上的破洞和几个人名,都标为待解,没有臆测。根据上下文认出了两个新代码组:310,可能是萨伏依公爵;441,可能是法国。按明文词的比例计算,93% 能读通,低于本项目对完整解密要求的 95%,所以解密为部分;这些缺口、310、441 以及那位告解神父的名字仍待解决。

01 这封信

BnF fr. 3982 是 Mémoires de la Ligue 诸卷(fr. 3974–3995)之一,汇集了1580和1590年代的联盟通信,其中很多是加密的。第 22 号从 f. 46r 到 f. 50r,地址在 f. 50v:九页写得密密麻麻,每页约五十行,日期为“A Burgos le xiij septembre 1592”,署名“Vre bien humble et obeissant serviteur Pelissier”,标有 Tripta(寄出的第三份副本)。法语明文和密文在同一行内交替出现,密文用一小套类似字母的符号、数字和记号写成。

BnF fr. 3982 f. 46r 顶部:五行法语明文,然后是几行带细小行间注释的密码符号
f. 46r:“Monsieur J’entreprins mon voyage de la court si a contre temps que arrivant a Valladolid ou le Roy avoit sejourné deulx moys…”,然后是第一段密文。密文行之间的小字是同时代解读者写的。他的注释寥寥无几、零零散散,这就是这封信全部的“部分解读”。图像:Bibliothèque nationale de France, fr. 3982 f. 46r,经由 Gallica(btv1b9060543f,画布 100)。

02 密钥

Tomokiyo 的联盟页面根据 f. 115 上的完整解读,复原了 Pelissier 在第 45 和 46 号(马德里,1592年10月27日)中所用的密码。它是一个同音替换字母表,每个字母一到七个符号。有些符号是两位数(24、26、28、30、33、36、44、56、60、80)。有一个符号表示 et,有表示双写字母 rr、ss 和 uu 的符号,还有六个虚码。这里不转载他的表;它在他的页面上。第 22 号早六周,用的是同一个密钥,另有两处增补:

凡是注释能辨认的地方,都可以用来检验密钥。它们在 de、auisa、meschans、roy、les tirer、Noyon、a la main qu、n’auoit、en atendant、quar la bataille、mais le retour、de crainte、langaiges、Valentia、a gens matez des 和 (qu’ay)ant pleu a Dieu 等处都与密钥一致。有一处注释的分歧颇有启发。在“nos forces”上方,注释者写的是 os a orc:他照搬了码表中的 ϝ = a,而文意需要的是 f。1592年解读这封信的人用的是同一张码表,也在同一个符号上失了手。

校准。Tomokiyo 的码表给每个符号指定一个字母;它没有说明如何区分在潦草页面上看起来相似的符号,而第一次解密正是卡在这里。因此,把他据以构建密钥的两封信与 f. 115 上的明文逐个符号对齐:第 45 号(f. 111r)的 835 个符号和第 46 号(ff. 113r–v)的 929 个符号。这样就用已知明文解决了形近符号的问题:

十月的信和第 22 号出自同一人之手,相隔六周;页面转录者又在第 22 号中单独发现了几种书写习惯:一个 α 形符号和一个带横杠的 5 表示 g,一个小盒形 ∐ 表示 e,高高的双长 s 表示 rr,还有一个带环的 ℓ,视上下文表示 u 或 e。完整的指南(附每种字形的样例截图)见 targets/pelissier1592/GLYPHS.md 和 cal/atlas/.

f. 46v 的五行:密文被法语明文隔开,如“a l'arrivee du roy en ce dict lieu de Burgos”
f. 46v。明文(“a l’arrivee du Roy en ce dict lieu de Burgos Je retornay treuver le seigneur Don Joan, lequel m’ayant donné une heure particulliere”)直接接入密文。密文开头是“i’exposay pour fondement de mon discours qu’il n’est rien plus requis en un estat que la conservation de la reputation”。图像:Bibliothèque nationale de France, fr. 3982 f. 46v,经由 Gallica(btv1b9060543f,画布 101)。

03 信中说了什么

解读出的词按原样引用,保留信中的拼写。下面的各页概要用中文写成。逐页的完整文本(缺口已标出)见 targets/pelissier1592/READING.md.

04 如何解密

  1. 逐符号转录。从 Gallica 全分辨率扫描件中以 1.5 倍放大把每页切成宽度为三分之一的条带。每个符号写成一个词元(其字形的名称),每段明文全文照录。七个并行代理完成了 ff. 47r–50r;ff. 46r–46v 在这里完成,并作为示范样例。
  2. 用密钥解码。每个词元带有密钥赋予它的字母,两个符号形近时还附有备选。一个那个时期法语的四元组语言模型在备选中作出选择,并给出分词。没有任何求解器改动过密钥。
  3. 第二轮。凡是没能解码成法语的行,都以 2.5 倍放大重新转录符号,每一页上真正的误读都得到了更正。只有当符号在纸叶上明显不同时才作改动,绝不仅仅因为改了就会出现法语。每页的解密文件都列出了注释及其是否一致。
  4. 校准与第三轮。把密钥自身的来源信件与其明文对齐(第 02 节),把形近符号族拆分为不同的词元,再据此对照扫描件把全部九页的每一行重新转录。待解的词从 413 个降到 256 个,存疑的词从 278 个降到 158 个。

一种失败的做法。有两次——一次逐页,一次针对整封信——用求解器(爬山法)以密钥为起点,按语言模型调整符号到字母的映射。两次它都漂移到一个退化的映射,其中每个高频符号都是 e,而带噪声的转录总会奖励这种映射。密钥是对的。错误在词元上,它们把密钥区分开的符号合并了:

第 02 节的校准纠正了这一点:这些拆分大多已成为独立的词元,并在已知明文上得到证实。

05 尚未解决的部分

一切都在代码库的 targets/pelissier1592/下:说明见 NOTES.md,读文见 READING.md 和 reading_46r.md … reading_50r.md,词元转录 t46r.txt … t50r.txt,解码器 beam.py 连同 cands.txt,符号词表见 TOKENS.md,校准后的指南见 GLYPHS.md,第 45 和 46 号的对齐及其样例截图见 cal/.

06 来源