中文译本 · 原作 Daniel Bourdeau《Unsolved Historical Ciphers》 以 CC BY 4.0 发布,本页由 JIC 翻译,非原作者官方版本,译文如有出入以英文原页为准 · 查看英文原页 ↗
261 · 108 · 30 · 109 · 112 · 33 · 525 · 255 · 219 · 292 · 24 · 493
97 · 17 · 126 · 230 · 337 · 272 · 34 · 127 · 311 · 508 · 163 · 292
91 · 99 · 113 · 131 · 145 · 29 · 541 · 396 · 151 · 567 · 291 · 520

凡尔赛和枫丹白露 → 皮埃蒙特 · 两部式代码(Grand Chiffre de 1691)· 1691年

路易十四和卢福瓦致卡蒂纳,1691年7月至9月

路易十四
发信人路易十四
卡蒂纳
收信人卡蒂纳

Mémoires et correspondance du maréchal de Catinat(巴黎,1819),t. II pp. 295–342 · 七份急件 · 12,362个码组 · 放弃皮埃蒙特的决定

用 Bazeries 的 Grand Chiffre 码表解码;他以明文刊印的两封信用作对照(字符吻合率98%和99%)。其余五封约9,700个码组,除了 Bazeries 从其中两封摘录的片段外,没有找到刊印的明文。

Daniel Bourdeau · 发布于 · 更新于

方法:用已知密钥读出 · 范围:完整

摘要。1819年,Le Bouyer de Saint-Gervais 出版他叔祖卡蒂纳的文件时,把宫廷发来的七份急件按原样以三位数码组刊印,并承认自己读不懂。1893年,Étienne Bazeries 正是根据这几页重建了代码,并借第一封信中的一句话——卢福瓦下令把 Bulonde 关在皮内罗洛、“avec un masque”(戴上面具)——来指认铁面人。他以明文刊印了那封信和8月19日的信,以及第三封信的开头,就此止步。他发表的码表能解出全部七封。把它用于巴伐利亚州立图书馆对1819年那一卷的 OCR 文本,并在法语读不通的地方对照页面图像核查,共复原出12,362个码组:卢福瓦的两封信(7月8日和9日)和路易十四的五封信(1691年8月19日、24日、29日,9月6日和14日)。最长的一封是9月14日发自枫丹白露、印了二十页数字的信,国王在其中权衡体面的做法与稳妥的做法,选择了稳妥:战季结束时把皮埃蒙特军团撤回阿尔卑斯山这边,1692年不再派回,守住各山口,尽可能久地保住卡尔马尼奥拉以配合与教皇的谈判,然后将其拆毁焚烧,并在冬季拿下库内奥。范围:完整。1819年版中有六个码组印成了超出码表范围的数字,另有约七十分之一码组的残余 OCR 错误;未查阅万塞讷的原件。

01 文献

1691年的皮埃蒙特战役以围攻库内奥(Coni)失败开场——Bulonde 于6月28日违令撤围——结束时法军仍停留在都灵与皮内罗洛之间的平原上,既拿不下库内奥,也无法在当地过冬。指挥官是卡蒂纳;陆军国务大臣卢福瓦于7月16日去世;他的儿子巴贝齐厄继任,国王则亲自给卡蒂纳写信。宫廷发给卡蒂纳的加密急件保存在这位元帅的文件中,以数字形式刊印于1819年Mémoires第二卷 pp. 295–342,书记员原本留作明文的段落也照样印出。Bazeries 称,除了8月19日那封的底稿存于 Dépôt de la guerre 之外,这些急件“n’ont pas été enregistrées”(未曾登记存档):果真如此,1819年的印本就是其余六封唯一的文本。*

Mémoires de Catinat,1819年,第二卷 p. 320:路易十四1691年9月14日加密信的开头
Mémoires et correspondance du maréchal de Catinat,t. II(1819),p. 320:9月6日信的结尾和国王9月14日信的头几行,后者一直延续到 p. 342(Bayerische Staatsbibliothek,bsb10720287,扫描页354)。图像:Mémoires et correspondance du maréchal de Catinat,t. II(1819),p. 320,Bayerische Staatsbibliothek bsb10720287 扫描页354,经由 MDZ。
字母页码码组数此前的明文
卢福瓦 → 卡蒂纳,凡尔赛,1691年7月8日295–2991,074Bazeries 1893,pp. 42–46
卢福瓦 → 卡蒂纳,凡尔赛,1691年7月9日299–3041,611前130个码组,Bazeries pp. 47–48
路易十四 → 卡蒂纳,凡尔赛,1691年8月19日305–3091,259Bazeries pp. 292–300,据底稿
路易十四 → 卡蒂纳,1691年8月24日309–3151,193一段,Bazeries p. 266
路易十四 → 卡蒂纳,1691年8月29日315–318492无
路易十四 → 卡蒂纳,凡尔赛,1691年9月6日318–320402无
路易十四 → 卡蒂纳,枫丹白露,1691年9月14日320–3426,331无

02 代码与解码

Grand Chiffre de 1691 是一套587个码组的两部式代码:每个字母有两三个同音符,另有辅音加元音的音节、词干(Envoi、Trouv、Expliqu)、整词(Sa Majesté、Pignerol、Carmagnole)、十来个标记句末的虚码,以及一个取消前一码组的码组。Bazeries 花了三年时间根据这些信件重建了它,并把他的码表(留有91个空项)印在Le Masque de fer书末;这份码表此前为Feuquières 那封信从 Gallica 扫描件转录过,这里原样使用。

数字取自巴伐利亚州立图书馆对该卷的 hOCR,逐词带坐标框。OCR 误读成多余“1”的斑点(它会被解码为Passage)按框的大小剔除,透印过来的字形去掉,编者的脚注标记和页眉删除,各封信按印出的标题切分。每个码组逐一查表,虚码之间的单元连接起来,再用从三卷卡蒂纳文集、Rousset 的Louvois、Feuquières 回忆录和 Bazeries 的书中提取的词表进行分词,这样sa maj este vou loit sca voi r就变成sa majesté vouloit scavoir。分词只是方便读者;受检验的是码组层面的解码。

对照。Bazeries 以明文刊印了7月8日和8月19日两封信。在统一重音符号和 i/j、u/v 之后,我们对 OCR 数字的解码与他的文本在2,690个字符中吻合2,640个(98.1%),在3,233个字符中吻合3,204个(99.1%)。剩余的差异是 OCR 读错的单个码组(26 Vous被读成24 Le)、他的明文与印出的数字不一致的几处,以及他对两个码表条目的意译。随后,所有无法切分成词的段落——共137处——都从页面图像上裁切下来逐一目检:发现并改正了七处 OCR 错误,有六个码组原来在1819年版里就印成了大于587的数,其余都是被正确转录的17世纪拼写。

03 国王和卢福瓦写了什么

卢福瓦,7月9日。国王越想库内奥的事越觉痛心,既为他军队的声誉,也为这个地方将给冬营带来的代价;倾全军围攻已不再可能。两项任务:加固卡尔马尼奥拉,让敌人“n’osent le regarder”(不敢正眼看它);并摧毁敌人冬季可能据守、威胁通往卡萨莱和皮内罗洛道路的每一个据点:Villeneuve d’Ast 和 Quiers“vous les devriez brusler absolument”(您务必将其烧毁),但要放过教堂,都灵与阿斯蒂之间的城堡也一样处理,一切都要做得“de manière qu’il ne paroisse point qu’elles vous aient esté prescrites”(看上去不像是有人命令您这样做的)。夺取 Bene;如果敌人能在卡里尼亚诺过冬,就把它烧了。德意志人到来之前寻求会战,到来之后则避战,让他们因欠饷而生病、开小差。责令农民把粮食运进国王的驻军城镇,派军需官督促各总督执行。萨伏依公爵的言论“mériteroit bien”(确实该受)向都灵投两千枚炸弹的惩罚,都灵的桥也值得一毁,“mais ce sont des vues que Sa Majesté vous met devant les yeux et non des ordres”(但这些只是陛下摆在您面前的想法,并非命令)。

路易十四,8月24日。Chamlay 带去国王对战争中尚存的各种方案的考虑。敌人会进军萨伏依,还是在都灵附近集结、吃光草料,迫使卡蒂纳先退回山那边?罗马的谈判使得尽可能久地留在阿尔卑斯山那边显得非常可取。卡萨莱:栅栏、十八个月的钱款、粮食、更多骑兵、炮手。宫中有人认为,加固 Villefranche,并在萨卢佐、萨维利亚诺和福萨诺驻军,就能让军队在皮埃蒙特过冬;国王对此说个不停,但卡蒂纳不可让国王的愿望压倒自己的判断。在任何计划中,皮内罗洛都是“le premier objet”(首要目标)。另外,国王非常希望在战季结束时拿下库内奥。

路易十四,8月29日和9月6日。蒙多维人提出的一份条约固然好,但只能用来试探他们,因为军队已无法再在那里驻扎。驻日内瓦的代表报告说,敌人已向该城请求借道进入萨伏依,并将经瓦莱进入沙布莱。Larray 已把一个爱尔兰营投入布里扬松,以防 Barbets 夺取它。如果卡蒂纳要渡过波河,务必赶在敌人行动之前。Chamlay 已经到了。

路易十四,9月14日,枫丹白露。Chamlay 已作汇报,国王“avec peine”(痛心地)看到,结论是在战季结束时把皮埃蒙特军团撤回山这边,且不再派回。他详细列出了正反两方面。反对撤军的理由:敌人将主宰意大利,盟友和中立诸侯将被迫宣布与他为敌,卡萨莱将顾不上,他军队的声誉受损,敌人会因一种“quoyque fausse dans le fonds”(尽管本质上是假象)的示弱而受到鼓舞。支持撤军的理由:没有都灵就无法在皮埃蒙特维持给养;那里地方“fort estroit et extrêmement couvert”(十分狭窄、极其遮蔽),被几小时内就会涨水、无法架桥的急流切割;卡萨莱路途遥远;每个战季部队都疾病流行,又没有医院收容;敌人可以凭借多拉河和波河,自由选择接战或避战。接着是卡蒂纳的防御计划:守住普罗旺斯、多菲内和萨伏依的各山口,占据皮内罗洛附近的 Saint-Pierre 高地和苏萨高地,给养更省,病员更少,多余的骑兵放在索恩河畔、随时可调往德意志,让萨伏依公爵自己选择:要么让盟军闲置在他残破的国土上,要么把它打发走、眼看法军卷土重来。“J’ay comparé les inconvénients et les avantages d’un parti avec ceux de l’autre … et je me suis déterminé à préférer le parti solide à l’honorable.”(我比较了两种方案的利弊……决定宁取稳妥而舍体面。)

随后是命令。把战季延长到诸圣节,甚至圣马丁节,并把卡尔马尼奥拉守到最后,因为这两者都能为与教皇及意大利诸侯的谈判作掩护,那场谈判或许能让他从卡萨莱脱身,“et mesme peut-estre de la guerre de Piedmont”(甚至或许从皮埃蒙特战争中脱身);不能让敌人知道他打算永远撤出皮埃蒙特,所以卡尔马尼奥拉的工事要继续修,“avec un peu moins de vivacité et de dépense”(只是少些劲头、少些花费)。命令一到,能运走的就运走,粮食由骑兵驮在马臀上运往皮内罗洛,其余的扔进水里,拆毁工事,烧掉栅栏、城门、干草和粮食。确保皮内罗洛的仓库不受炮击,否则“me donneroit beaucoup de mortification en présence de mon armée”(当着我军的面,将令我深感屈辱)。为了布里扬松的道路,守住 Pragelas 和 Pérouse 两条山谷。重新越过山后,在冬季拿下库内奥;火炮和物资已下令运往里昂和格勒诺布尔。加固布里扬松及面对 Luzerne、Saint-Martin 和 Angrogne 各山谷的边境。冬营按卡蒂纳的备忘录安排。撤退时务必谨慎周密,让敌人无机可乘。

完整的解码文本,已分词,附印本原样的码组和分页,见仓库中的targets/catinat1691/letters。

04 仍不确定的部分

05 方法与复现

python extract3.py in targets/catinat1691/ 根据存储的 hOCR 和更正文件重建解码文本; validate.py 报告与 Bazeries 两份明文的吻合程度; verify_crops.py 重新生成可疑码组的拼版图。码表是 targets/feuquieres/grand_chiffre_1691.tsv。页面图像和 hOCR 来自巴伐利亚州立图书馆的 IIIF 和 OCR 服务。

06 来源

* 根据 Bazeries 的说法推断,未在 SHD 清册中核实。