中文译本 · 原作 Daniel Bourdeau《Unsolved Historical Ciphers》 以 CC BY 4.0 发布,本页由 JIC 翻译,非原作者官方版本,译文如有出入以英文原页为准 · 查看英文原页 ↗
f x i n e t i g · a y i a s n
c h a s t e a u · [v] i l a i n s
a/i b/p c/f d/q e/t g/u l/y m/z n/s o/r h/x

南锡 → Vaudémont 伯爵 · 互逆字母对密码,带重复点、一个虚码和音节数码,与法语明写部分夹杂书写 · 1592年6月18日

洛林公爵查理三世致 Vaudémont,1592年6月18日

洛林公爵查理三世
发信人洛林公爵查理三世
Vaudémont 伯爵
收信人Vaudémont 伯爵

BnF Français 3621 no. 97, f. 109 · 公爵写信给在前线的儿子,谈未兑现的承诺、工兵和弹药、Chasteauvillain 以及 La Fauche 的驻地 · DECODE 记录9449将其列为 Non-decrypted,也没有已发表的密钥,但 Satoshi Tomokiyo 曾在2025年报告读出了它(只发表了开头一行;因此本次解读是独立的再次破解,而非首次破译;此事在本次解读完成后才发现)

9月18日由一位贡献者仅凭密文复原密钥 · 9月22日对照该密钥从原页重新转录:每个字母代表十一组固定字母对中的另一方 · 1,105个密文词符中解读出790个(部分);特殊符号、十一个数码和四段内容仍未解决

Arya Sanketbhai Patel · 发布于 · 更新于

方法:仅凭密文复原密钥 · 范围:部分(密文的72%)

摘要。这是洛林公爵查理三世写给其子 Vaudémont 伯爵的一封信的抄件,南锡,1592年6月18日,装订在 BnF Français 3621 中,编为第97号。DECODE 把这份文件列为 Non-decrypted(未知有解读);没有发表过它的密钥,而寄予希望的猜词材料,即同一卷的第22号,是其他信件的明文解读,上面没有密文。2026年9月18日,一位贡献者仅凭密文从这份孤本抄件中复原了密钥。这些字形是普通的草书字母;一个在已知密钥的对照上检验过的求解器得出了一部44个符号的密钥,它两次拼出 chasteau,而同一页的明文中正好写着 Chasteauvillain。9月22日,对照该密钥从原页逐行重新转录了这封信,结果发现密钥更简单:一种互逆字母对替换(a/i b/p c/f d/q e/t g/u l/y m/z n/s o/r h/x),字母下加两点表示重复,一个带圈的 æ 作为虚码分词符,几个特殊符号,以及至少部分表示音节的数码(31 = ma,139 = vous,145 = me,C级)。那44个符号源于转录中两对字形被混为一谈:书记体的 e 与 c,带圈的 h 与 b。按同一规则量度,1,105个密文词符中解读出790个,占71.5%;9月18日的密钥对其中40.6%给出相同的词。重新转录还把 prisonniers 订正为 pionniers。范围:部分。未解决的有:大部分特殊符号、14个数码中的11个,以及四段错乱的内容;目前不知道有这种密码的密钥或第二封信。9月18日的密钥复原由 aryasn2026 在 pull request #4 中贡献,经审阅后合并;9月22日的重新转录由本项目完成。

01文件,以及寻找加密原件

第97号在第109张(Gallica canvas 227):“Coppie d’une lettre … de Charles de Lorraine à monsieur de Vaudemont”,南锡,1592年6月18日。这一卷是 Nevers 公爵1591–92年的截获信件与通信档案。这项任务附带一条指示:先查找1592年1月截获信件的加密原件。它们不在这一卷里。第22号(第31张)只是一份明文解读:三封截获的 Vaudémont 信件的法语誊清本,整张纸上没有任何密文,标题为“Dechiffrement des lettres de Monsieur de Vaudemont à Monsieur de Lorraine [son] pere, interceptees et apportees à Monsieur de Dinteville, le XX[e] Janvier 1592”。DECODE 的记载与此一致:它对第22号的记录(9444)标为 Decrypted。这一卷中其他的加密件(Birago 第31号和第36号、Potier 第79号、Dinteville 第114号和第116号)都是 Nevers 自己的通信者及其密钥,而不是洛林方面的。所以第97号是一份孤本,没有同系的其他信件。

这封信把法语明文和密文夹杂写在同一行上,附言则是明文。明文涉及的事务与密文相同:许诺了却未交付的弹药、Chaumont、Buzonville 先生、对 Chasteauvillain 的图谋。

02从未有人发表过密钥

DECODE 记录9449就是这封信,馆藏号、发信人、收信人和日期都对得上,其状态字段写着 Non-decrypted;Français 3621 在 DECODE 中的八条记录里,只有这一条和第116号是这个状态。DECODE 中没有任何密钥记录归于查理三世或 Vaudémont。其他洛林密码的密钥已有发表,但都不是这个体系:约1620年 Bréval 致亨利二世的,以及1593年8月1日 Bassompierre 致查理三世的,二者均由 Satoshi Tomokiyo 重建。Desenclos 和 Lasry 2024年关于 Français 3995 中亨利四世与 Nevers 之间密码的论文从未提到 Français 3621,而 Henri Lepage 1864年编的查理三世神圣联盟时期通信集止于1591年,也没有印出任何密码表。

此前确实有人读出过。上述搜索找的是已发表的密钥,却漏掉了一条已发表的声明。Satoshi Tomokiyo 的未解历史密码清单把这封信(“Duke of Lorraine (1592)”,DECODE R9449)标为他已于2025年破解,并引用了开头:“J’ay este infiniment mal satisfait du peu d’execution …”。他没有发表密钥,也没有发表更多文本。这个条目在2026年9月6日、本次尝试之前就已存在;它是在9月24日、本次解读完成之后才被发现的,没有被利用。这里的解读开头是同样的词,这独立证实了第一行。

Nevers 密钥簿 Français 3995 中有四张1592年的密钥表,其 DECODE 特征与这种密码相符,已逐一取来检视。四张都不是这部密钥。

表实际是什么
fol. 32一部隐语词典,列出暗中的对应词——Nouvelles = “Draps de soye”,Necessité = “Medecine”——用几何符号和数字2–40表示。不是字母密码。
fol. 83–84一种全数字密码,带一行 Nulles。“Duc de Lorraine”在其中是名码本第46项,所以这是别人的、提到洛林的密钥。
fol. 98表上自有的批注:“1592 / Chifre d’entre le Duc de Parme et le Roy Cath[olique] en l’an 1592 / lequel sert aussi p[our] le Duc de Sessa et don Diego de Ybarra”。
fol. 103一部 Nevers 圈子的名码本,其折页列出 Gondi、Nemours、Guise 和 Montpensier,每个字母有三个同音符——不是一对一的字母对密码。它展示了这个圈子里一部完整密钥的内容:音节数码1–72、双字母数码73–98、词数码99–353,以及地名表,其中洛林是30,梅斯是68。

039月18日的密钥复原(贡献稿)

早先的一次尝试把这一页当作由自创符号构成的密码:切分字形,按形状聚类,再求解聚类序列。切分是成功的(基线是倾斜的,作 −0.031 的剪切变换后,整块文字分成21个行带),但聚类是多余的。这些字形是普通的草书小写字母,与明文用的是同样的字母,有些带点或横杠,另有少数几个特殊符号,放大到原尺寸的一倍半就可以直接从原页转录。贡献者的转录记录了1,109个词符:1,071个字母符号,共44种形式,以及38个名码本数码。其字母频率与法语前十四位逐位吻合,重合指数介于单表替换和完全同音替换之间。

BnF Français 3621 第109张的一行密文,显示的是一个个独立的草书字母,而不是几何符号
BnF Français 3621 f. 109,第十五行开头(重读中的 L14)。前八个字形 f x i n e t i g 拼出 chasteau。图片:Bibliothèque nationale de France, fr. 3621 f. 109,来自 Gallica btv1b52524472n view 227。

在一个已知密钥、规模相同的对照上,早先那次尝试的随机移动模拟退火只复原了37–56%的字母,每字符得分 −2.64,而真密钥得分为 −1.62:问题出在搜索上。一种从局部最优点重启的最陡上升搜索,能以98.7–99.6%的正确率复原已知密钥。途中堵上了两个陷阱(会删掉所有难处理位置的自由虚码,以及一个退化的 etenete… 密钥)。找到的密钥不仅对照模型,还对照手稿作了核验:它解读为 chasteau 的那个八字形组在密文中出现两次,而同一页的明文中正好写着 Chasteauvillain,正文和附言里都有。

同一页上的一行法语明文:aussi si dieu nous fault la grace de prendre Chasteau
同一页上的明文:“aussi si dieu nous fault la grace de prendre Chasteau[villain]”。图片:Bibliothèque nationale de France, fr. 3621 f. 109,来自 Gallica btv1b52524472n view 227。

在44个自由参数上做4-gram 搜索,可能从随机输入中产生看似法语的文本,所以同一流程原封不动地在打乱的零模型上也跑了一遍(符号和频率相同),并盲评打分:

4-gram 得分词典覆盖率6个字母以上的不同词数
手稿−2.1083.0%33
五个零模型,均值(范围)−2.7374.6%1.2 (0–3)

三十三个长词,对比零到三个:转录之下确实是法语。贡献者根据故意合并字形的对照估计,字形转录中仍有约四分之一是错的,并建议手持密钥重新转录这一页。9月18日的解密结果例如 chasteauilainss [145] nntaises deramenermonarme dooites esquartiers de-,整词是对的,词与词之间的连接是错的。

049月22日的重新转录及其订正

重新转录按建议进行:取 canvas 227 的原生 IIIF 图像(4046 × 5762),作 −0.031 的剪切变换,切成21个行带,每个行带以2.3倍放大分五块查看,每个词都对照9月18日的解密结果核对。把9月18日的值按对排列,体系就已显现:字形 a 给出 i,字形 i 给出 a;o 给出 r,r 给出 o;q 给出 d,d 给出 q;n 给出 s,s 给出 n。手写中的每个字母都代表十一组固定字母对中的另一方,覆盖当时的全部22个字母:

字母对a / ib / pc / fd / qe / tg / ul / ym / zn / so / rh / x
写作 a 读作 i,反之亦然↔↔↔↔↔↔↔↔↔↔↔
符号值示例等级
字母下加两点该字母重复:ṇ = ss,c̤ = ff,c̈ = ttpromesses, assister, passer, affin, remettreH
带圈的 æ虚码,分词符peu · d’execution,belles · promessesH
Θschemins,auditsH
31ma(音节)com-31-nder,de-31-nde,31 resolutionC
139vouschemins, 139 tiendrés;et 139 ne manquiésC
145meaffin que 141 ne 145 delaissentC
λ、m̄、U、E、π、γ、ꜗ、下部带横杠的 t、形如数字4的符号未解约60个词符I
13, 57, 88, 98, 103, 121, 122, 123, 137, 141, 146未解17个词符I

因此,名码本至少有一部分是音节性的,就像 fr. 3995 中那些密钥的音节数码一样,而不只是一份人名和地名表。

9月18日的密钥之所以有44个符号而不是十一组字母对,主要是因为转录中有两处合并。转录中的 c 其实是两个字形:书记体的 e(代表 t)和 c(代表 f)。搜索只能把合并后的形式映射为 t,于是信中每个 f 都丢了(intiniment、satistait)。这就是旧密钥对 b、f、g、x、z 完全没有值的原因,而早先那一页已经指出,这个空缺正是转录错误的字形的去处。它的 B 同样是两个字形:类似 beta 的 b(p)和带圈的书记体 h(x,因而是 h):du peu,但 ceulx 和 d’execution。被搜索分摊到额外同音符上的带点和带横杠的变体,其实是重复字母。修正这些之后,旧解密中的大部分短连接词无需再猜就变成了通顺的法语。

解读中的变化:

05解读

重新转录后的连续文本,按手稿行序逐行排列(行号从 L00 起;未编号的行在原页上是明文)。 [?] 表示未解读的词;方括号中的词存疑(M级);方括号中的数字是未解码的名码本数码。u/v 和 i/j 按当时的写法合并。

L00 [?] j'ay esté [?] infiniment [?] mal satisfait [?] du peu d'execution [?] vous
L01 [57] [?] et ceulx de la [98] [?] ont, de tant de belles promesses [141] [?] avoient fait,
L02 [l'?] de me assister et de [122] [123] [?] pionniers [?] et [?] munitions [?] [dressera]
L03 [?ien] fait. Vous [?] le faire l'entendre [?] clairement ausdits [57] [?], et les de-
L04 -putés de [?] [98], et vous ne [manquiés] à me [?] [demander] [?] [141] [?] conno-
L05 -issent le juste mescontentement [?]. Vous [?] dois avoir l'[137] [?]. Il [?] f-
L06 -auldra [?] de prudence, affin [que] [141] [?] ne me delaissent [?] tout à cou-
L07 -p [?] et de munitions et chevaulx [?] [121] [?] et aultres commoditez [?]
    (clear) aussi si Dieu nous fault la grace de prendre Chasteauvillain
L08 [?] [57] me [?] demande [?] la plaine. I-
L09 -l fauldra [?] le remettre [13] ou le [?] luy [?] dire. Vous [?] escrire [?] afin de [?]
L10 recepvoir mon commandement [?]. Ne [?] mettre [?] quelq[u'un] qui, pour y comma-
L11 -nder et conserver la plaine [?] quant à ne vous, ceulx de [88] [?] [?] pour fa-
L12 -ire [?] passer [?] les [?] leur [?] ses promesses ne me [?] induiront [et re-]
L13 [-solument] [?ien] [?] le fera [?] le [?] des [?] ... apres l'effect [?] de
L14 Chasteau[v]ilains. Me [ne fais] [es] de ramener mon armée [droites] [?] quartiers de
L15 la Faulche [?] et me preadvertir [?] jour. Vous me [?] [pour] [?] me ma-
L16 -nde [?] chemins. Vous tiendrés [?] s'il ne vous [?] fault, pour tant faire paroistre ausd-
L17 -its de [88] ma resolution [146] [?ien] le peu de moien que [?] secours. Vous me promet[tés] par de-
L18 -là pour [?] le [?] Chasteau[v]ilain, ainsy vous l'on avoit [?] promis [?]
    (clear) et de la ilz pourroient tascher de remedier, ou bien juger le peu de suiect qui me doibt occasionner
L20 [asseurté?] ses promesses [?] faire [?] passer oultre [?] [103] [?]

大意:公爵对所许诺之事执行之少感到极度不满。某些人(57,“ceux de la 98”)曾许下那么多漂亮的诺言,要以工兵和弹药相助;他的儿子要向他们以及98的代表们把话讲明,并务必要求他们承认 le juste mescontentement。需要谨慎行事,以免141一下子全都抛下我,因为弹药、马匹和其他补给都要靠他们。在关于攻取 Chasteauvillain 的明文行之后,必须派人到那里 pour y commander et conserver la plaine;公爵打算 de ramener mon armée ès quartiers de la Faulche(La Fauche 位于 Neufchâteau 与 Chaumont 之间,正是明文附言所描述的地区),并希望能 préadverti 那一天。Vous tiendrés [les] chemins. 他阐明了 ma resolution … le peu de moien que [j’ai] de secours、关于 Chasteauvillain l’on avoit promis 的事,以及是否要 passer oultre。

06解读了多少:量度

规则见 measure_reread.py:单位是密文词符(一个字母符号,带点的重复字母算一次;一个特殊符号;一个虚码;一个数码)。解读中的每个词按等级标注:H 可靠、C 可能、M 存疑、I 未解读;若一个词符所在的词为 H 或 C,则该词符算作已解读。每个词也都用字母对密钥机械地解密一遍,所以凡是偏离密钥的解读都会显示为校改。

符号单元读出分享
全部密文词符(字母、特殊符号、虚码、数码)1,10579071.5%
仅字母符号1,06776972.1%
名码本数码(31、139、145已赋值)382155.3%
之前:9月18日的密钥和词符,相同的词1,10544940.6%

已解读的词中有四处校改:Chasteau(v)ilain(s) 中漏掉的两个 v、q(u)e,以及一处 promesses,原页在这个词中间有一个特殊符号。71.5%低于文本算作完整的95%标准,所以范围记为部分。

数码1391453157141889813103121122123137146
使用次数107433221111111
值vous(C)me(C)ma(C)???????????

07仍不确定之处

有315个词符未解读。以下列出每个未解决的部分及其原因:

08资料来源

手稿版权:Bibliothèque nationale de France。

转录、密钥、脚本和对照:仓库中的 targets/lorraine1592/。