01 五封信
這一卷(ark btv1b52503046q,486幀,127張)是 Ruffo di Scilla 親王家族的親筆信收藏,1854年售出,1857年由 BnF 購得;Morel-Fatio 於1892年將其編目為第172號。其中一百件是歐洲大多數君主寫給斐迪南和伊莎貝拉的信。有五件全部或部分加密。條目編號依據著錄;張號是該卷自身的編號,而幀號必須根據著錄來對應,因為 Gallica 上幾乎每一幀的標籤都是 NP。
| 件號 | 張 | 幀 | 字母 | 密碼 | 狀態 |
|---|---|---|---|---|---|
| 第5號 | 5–6v | 32–35 | 那不勒斯的費德里科三世致天主教雙王,San Germano,1497年1月11日;義大利語,部分加密 | Joan Ram Escrivà 的第1號密碼 | 已破解並刊印,Parisi 2020 |
| 第92號 | 116–116v | 440–441 | Gonzalo Fernández de Córdoba 致 Lorenzo Suárez,1500年8月17日;抄本寄 Almazán;西班牙語,明文與密文混合 | Cifra general de los Reyes Católicos | 本文證實了金鑰並部分讀出信件 |
| 第93號 | 118–118v | 446–447 | Lorenzo Suárez [de Figueroa,駐威尼斯大使] 致天主教雙王,威尼斯,1504年2月24日;全文加密 | 秘書處體例;碼組首字母 c/g/h/l/m/n/p/q/r/t/z | 未解 |
| 第94號 | 120–121v | 452–455 | 西西里總督致斐迪南,墨西拿,1503年4月27日;西班牙語,明文與密文混合,四頁 | 秘書處體例;碼組首字母 g/l/m/n/p/r/v/z | 未解 |
| 第95號 | 122–122v | 458–459 | 無收信人的密信,1497年1月8日;全文加密,scriptio continua(連寫) | 字母表由 G. Lasry 重建,2022年 | 本文部分讀出 |
這一卷中任何地方都沒有儲存第93、94或95號的解讀。f. 121v 上有總督那封信的抬頭 Alto y muy poderoso prinçipe Rey y Señor、蠟封,以及後人沿左邊距豎寫的一條西班牙語批註:Del virrey de Siçilia en çifra。這就是檔案中任何人對它說過的全部話。
五封信都是同一個機構的風格,這裡集中描述一次,因為下文的一切都以此為基礎。斐迪南秘書處的密碼同時包含兩樣東西:一份同音替換字母表,每個字母有三到五個自創符號;以及一份由兩字母、三字母和四字母碼組(子音、母音、子音)構成的名碼本,用普通拉丁字母以同一筆跡寫成,代表詞、名字和音節。名碼本是單部本:詞彙按字母順序排列,碼組以固定順序排在旁邊,因此碼組的首字母大致表明其明文在字母表中的位置。這一時期有三份這樣的金鑰已刊印或已重建,每份使用不同區段的首字母。正因如此,才能在一個詞都沒解讀出來的情況下,判斷一封信用的是哪份金鑰。
02 第5號:2020年已有印本解讀
首先檢查的是有沒有現成的解讀。用館藏號而不是密碼去搜尋,找到了 Ivan Parisi 的 Un cifrario in prestito per una lettera segretissima di Federico d’Aragona re di Napoli ai Re Cattolici nel BnF, Espagnol 318,載於 Studi di storia medioevale e di diplomatica,n.s. IV(2020),第157–177頁,開放獲取,DOI 10.54103/2611-318X/14378。文中刊印了整封信。
這篇文章的要點是一個反常現象。阿拉貢的費德里科——那不勒斯最後一位阿拉貢王朝國王——於1497年1月11日寫信給斐迪南和伊莎貝拉,確認他九歲的兒子、卡拉布里亞公爵 Ferrando 與一位西班牙公主聯姻的預先協議。他讓人把秘密部分用西班牙大使的密碼加密,那是發給當時駐那不勒斯的 Joan Ram Escrivà 的金鑰。Parisi 根據一個西班牙語使用者才會犯的錯誤認定了加密者:寫這份密文的人在 possano、obedientissimo 和 promesso 中沒有使用雙 s 符號,義大利人不會犯這種錯,西班牙人卻會。所以,那不勒斯國王把草稿交給了大使,由大使謄清並加密。
信中第一行明文就點出了他的名字(Da poi de havere resposto ad micer Joan Scrivà, oratore de le Maiestate Vostre),這是該葉上唯一表明這是一份借來的金鑰的線索。Parisi 列出的名碼本元素在3000畫素的 Gallica 影象上清晰可辨,並與影象吻合:
qix del, qao duque, qav de, qae con, qed cosa,
qie como, rae el, rof en, ru mensajero, saf Italia,
sul la, tad no, tay parte, vee que, vet si,
vog sobre, xer 和 xoq Vuestras Altezas, xit una, pam bien。注意首字母的區段:p、q、r、s、t、v、x。這一點在§05中會很重要。
03 第92號:對照註釋證實金鑰
f. 116 的開頭寫著發信人的說明 la respuesta q[ue] enbio a los s[eño]res en xbij de ag[osto] 1500,正文以明文開始:
Muy mag[nifico] Señor: a los xiiij d[e]l presente recebi v[uest]ra letra con hun breve d[e]l papa y otras dos cartas del embax[ad]or veneçiano con uno suyo, dando priesa en my yda a la resistençia del turco. E porq[ue] esto es conforme a la voluntad e mandami[ento] q[ue] yo tengo de sus al[teza]s, en virtud de Jhu Xpo yo me dispongo a ello con toda la celeridad y presteza q[ue] el caso requiere…
隨後兩頁明文與密文交替。寫信的是“大將軍” Gonzalo Fernández de Córdoba,收信人是著錄中的那位 Lorenzo Suárez(Lorenzo Suárez de Figueroa,西班牙駐威尼斯大使,1506年卒於任上,Galende Díaz 列出了他本人的加密信件),內容關於對土耳其人的遠征。這是為秘書 Miguel Pérez de Almazán 儲存的抄本。Tomokiyo 關於西班牙密碼的頁面指出,“大將軍”在這封信中“used this cipher”(用了這份密碼,即斐迪南和伊莎貝拉約1500–02年的通用密碼),並把這封信本身列為沒有已知解讀。
這一點可以檢驗,因為後人在 f. 116r 的行間寫了部分解讀。這位註釋者解讀了幾個詞就停下了;他的詞就是對照。
h boy zez xiz 7 xuy baz。在刊印的金鑰中 boy 是 Tiempo, zez Por, xiz Esta,
xuy En, baz Tanto; 7 是字母表中的 r,而 h 是字母表中的 e,即註釋者拼作 y 的那個連詞。圖片:Bibliothèque nationale de France,Espagnol 318 f. 116r,來自 Gallica(btv1b52503046q)。Juan Carlos Galende Díaz 於1994年刊印了這份金鑰,依據的是 Real Academia de la Historia 收藏的一卷十二份密碼(B.R.A.H. 9/15):他的附錄1就是 Cifra general de los Reyes Católicos,即該卷的 ff. 7–9。對照註釋,他的圖版給出八處獨立吻合,沒有衝突:
| 該葉上的註釋 | 密碼 | 刊印金鑰中 |
|---|---|---|
| lo | yuy | Lo |
| y · tpo | h · boy | (字母表 e)· Tiempo |
| por | zez | Por |
| estar | xiz + 7 | Esta + r |
| en | xuy | En |
| tanto | baz | Tanto |
| el negoçio | xix zol | El · Negocio |
| de | xup | De |
| puede | zuy | Puede |
| 無 | zik | No |
| — | bob | Que |
於是一行以註釋為錨點的文字可以一路解下去:
ct h boy zez xiz 7 xuy baz ff k …
pt y tiempo por esta r en tanto p g …
得到 …y tiempo, por estar en tanto…,正是註釋者在其上方寫的內容。f. 116v 結尾一半是明文,程式碼嵌在句子中,不用金鑰也能看出句意:…no desconfio que mucho se pudiera aprovechar … esta var … zin se ha ofreçido … yo me desnudo y descargo y me satisfago en que n[uest]r[o]…,其中 zin = Nápoles, xar = después, biz = toda,
xuy = en。其下是後來清點者的筆跡:Inventº 11 Ottº 53。
這樣,第92號的金鑰就確定了,剩下的是轉錄和解讀:碼組是普通拉丁字母,容易轉錄,而字母表符號必須逐一與一份1994年影印的十六世紀密碼錶比對。這裡把金鑰轉錄為
keys/cifra_general.txt:圖版(第167–173頁)上的683個碼組,外加二十一個人物符號:Papa = A,Emperador = B,Rey de Françia = F,Rey de Spanya = G,Reyna de Spanya = 4,Principe de Spanya = C,Rey de Inglaterra = S,Rey de Napoles = □,Duque de Calabria = R,Infanta doña Juana = oTT,Don Fadrique prinçipe de Altamira = S†。
兩頁的解讀(2026年9月21日)
現在兩頁都已逐行轉錄,正面36行,背面11行,依據的是 Galende 在第167頁刊印的符號字母表。這份筆跡偏愛幾種樣例行中沒有出現的字形:A 的第五種寫法(一個反寫的 C 加一道交叉線)和 E 的第五種寫法(一個 q 下方寫個 k)承擔了大部分母音,帶橫的 T 是金鑰中表示 LL 的“雙字母”符號(vituallas、Pulla、llamó),而明文筆跡中的 con- 縮寫也出現在密文裡(contenté con el、con color de)。約四分之三的詞已解讀。與明文段落合在一起,這封信說的是:
…no deve pasar … si no grande remuneración … por estar en tanto peligro el negocio, e a tanto lexos … [威尼斯佔據著] Pulla [的] Brindizi y Otranto … que sera bien que [他們給我們] puertos de Italia donde esta armada se pueda recoger quando el tiempo lo requiriese, por no aver de bolver tan lexos para … poner nuestros dolientes y heridos y ropa e vituallas,[並整修] estos navios … sin los ynconvenientes de estar en casas agenas。[當教皇召我] para el cerco de … le demandé lo mismo por [借] Garcilaso, y lo ovo por bien … de buena voluntad; e por que los alcaydes eran españoles y criados del Rey nuestro Señor, yo me contenté … me parece deveys, Señor, fablar en esto con color de nuestro descanso y reparo. … segund su necesidad no creo que nada desto les sea ynposible … yo me desnudo y descargo y me satisfago en que [此事] en las manos。
這是 Gonzalo Fernández de Córdoba 在1500年秋聯合進攻凱法利尼亞島的土耳其人之前,透過西班牙駐威尼斯大使與威尼斯討價還價:他會帶來艦隊,但要在義大利為艦隊擁有自己的港口,就像教皇曾給過他的那樣。完整的逐行轉錄和解讀見 f116_reading.md.
有兩項外部核對。Tomokiyo 的 cryptiana 頁面原始碼中,以註釋形式保留著他本人對開頭部分的部分解讀,“[paresce?] me que tan buena obra como esta con tanto diferencia e trabaio desto armada no deve pasar caso solo cargo sin grande [r]emuneración”,這糾正了這裡起初當作印刷錯誤的三個碼組: zap is zag = me, bac is vac = armada,以及 xie = cargo,與刊印的一致。Sanuto 的 Diarii(第三卷,約第708–709欄)記載了八天後威尼斯方面聽到的同樣要求:西班牙大使告訴威尼斯駐羅馬使節,Gonsalvo 想要一道 cruciata、優先地位、“qualli porto li piace a li bisogni” 以及糧食;10月在科孚島外海,他又告訴威尼斯的艦隊督察,他想要一個與他們的港口“seperato”的港口。
第三遍把 Sanuto 的用語(cruciata、jubileo、優先地位)作為猜詞放到正面第8–11行檢驗。它們並不在那裡,因為這幾行權衡的是這項事業是否合雙王心意;但第二遍確定了 zie 是 parescer,正是 Tomokiyo 猜測的取值: zie 後接字母 R I A 和 tener,得到 pareceria tener,而且同一取值符合全部五處。第8–11行現在解讀為 si empresa a propósito de sus altezas … no hablo en ello … segun la necesidad dellos ay … en semejante acatamiento pareceria tener mas respeto a …。
尚未解讀的部分。有五個碼組無論出現在哪裡,都與 Galende 刊印的取值相矛盾: bog (三次,刊印為 Rey de Portugal,可能 boz = todo),以及 zeb, zems, xob, bue。要麼是1994年的圖版印錯了——它明顯印錯了別的一些——要麼是這封信用的是一份有出入的密碼錶抄本;手稿 BRAH 9/15 ff. 7–9 可以解決這個問題。另有約十段字母符號未能確定(I 級),大多是在這一解析度下無法區分 q 形的 N 和反寫9形的 S。引文中的詞,符號確定且西班牙語通順的為 C 級,根據上下文補全的為 M 級。
04 第95號:有金鑰而無文字
f. 122 是一葉寫得密密麻麻的31行文字,沒有地址,沒有稱呼,通篇沒有一個明文詞,日期為1497年1月8日,比卷末費德里科的那封信早三天。2022年5月,George Lasry 把一個“近似的”解答發給了 Tomokiyo,Tomokiyo 將其發表:一張字母表的圖片,每個字母一到三個符號,另有一排未指派的符號和少數幾個碼組—— bac bnh bon dah daf dae oht bed dal boo del。從未有人刊印過明文。
憑肉眼把符號與那張圖片對照是行不通的:÷ 與 ≐,普通的7、帶小 o 的7和帶橫的7——這些區別在印刷的重建表上一清二楚,在1497年倉促的手跡中卻並不分明。所以改為用機械方法把這一葉拆開。先做自適應閾值二值化;再把連通分量按水平重疊歸併成字形,並把附加符號掛上去,得到31行共963個字形,每行中位數31個;然後對歸一化的28×28點陣圖做 Ward 聚類;最後對照 Lasry 的金鑰,憑肉眼在樣張上給各個類——而不是單個符號——打標籤。
在做任何解讀之前,先檢驗標籤是否正確,檢驗的依據就是頻率分佈。乾淨的類約佔963個字形的三分之二,所以它們在整葉中所佔的比例都被壓低了大約三分之一;要緊的是排序。按整頁所有字形計算,e 佔9%,a 佔7%,o 佔5%,n 佔5%,然後是 s、c、u、r、d、m、t 和 i,q 墊底,約1%。這正是西班牙語的排序 e–a–o–n–s,而它來自別人重建的金鑰和一次未使用任何語言資訊的聚類。q 的1%也說得通,因為 q 在西班牙語中少見,但從不缺席。
etem uygrane sdcosa erono:…[so]bre muy grandes cosas … ero no…,grandes 中的 d 晚了一個符號。空白處是兩個符號相互接觸、被切分程式當成一個的地方。圖片:本專案在 BnF Espagnol 318 f. 122r 第17行上的標註(Gallica)。在31條標註過的長條上逐行核對,解出來的是關於法國人的西班牙語。已核實的片段:…emos franceses…(第4行); bac que puedan merc[ed] … de Francia…(6);…dos cosas … a traer…(7);…con esto…(8);señoría … que esta … por(11);que me toca … mucho … sera … que bnh … haga(12);con esto … acorde … lo bueno…(13);…quedar … que … Francia…(15);…si a tratado … que gouernad … pero(16);…muy grandes cosas … no creo que…(17);…certaran … pues que se … esto … la parte aun(18);que se … encubren … que … quieren go- | -uernar(19–20,跨行);por obra creo que … amigo(22);escreuir a…(23);dificultad … en los…(25)。名碼本碼組以明寫字母出現在符號串中間:
bac, bon 兩次, bnh 四次, dal,可能還有 bed. bnh 是出現頻繁的那個,最可能是一個人名或地名。
其間修正了 Lasry 的兩處指派:形如 n 帶交叉尾巴的符號是 m(Lasry 作 y);他的兩種7形確證是不同的:普通的7是 d(構成 puedan),帶小 o 的7是 s(構成 franceses 和 escreuir)。它們靠聚類能區分開,憑肉眼卻不行,這就是第一次憑肉眼轉錄時把兩者弄反了的原因。
約三分之一的符號仍未解決。逐行解讀以
f122r_reading.md的形式存放在倉庫中,逐行列出,未解讀的地方用
… 標出。試過三種獨立的方法:在長條上憑肉眼轉錄;聚類加語言模型的混合方法;以及一個無需切分的解碼器,它把每個模板沿行滑動,再用動態規劃拼接。三者在同樣的三分之二上一致,在同樣的三分之一上失敗,這說明瓶頸在於 Gallica 4,077畫素掃描件上的符號形狀,而不在於方法。
05 第93號和第94號:密碼家族已認定,金鑰無法獲得
這兩封沒有被解讀。總目對它們的說法“unidentified cipher”(不明密碼)可以收窄。兩者都是按該機構密碼的寫法寫的:單個自創符號,與兩到四個拉丁字母組成的碼組交錯。第93號中的碼組是 gto pie roe hug heg mat gnd gab zoe
mae cpm lnq hoe hac zup qup gre zen gne;第94號中是 gag rah mnb mms nob gik luy mei nen mok pol pat par paq vaz mal nyb nyl gob gib lob moe nak rag
lue。單獨的符號是 + ÷ ʒ ff ıı :/ ⧻ 7.
碼組首字母的區段是區分的依據,因為名碼本是單部本:
| 金鑰 | 碼組首字母 | 使用者 |
|---|---|---|
| Escrivà 的第1號密碼(Parisi 2004,附錄 II) | p, q, r, s, t, v, x | 第5號 |
| Cifra general de los Reyes Católicos(Galende Díaz 1994,附錄1) | v, x, y, z, b, c | 第92號 |
| “大將軍”的 Gran cifra,1501–04年(Bergenroth;CNI 2018) | h, l, m, p, q, r, s, u/v | ? |
| 第93號 | c, g, h, l, m, n, p, q, r, t, z | — |
| 第94號 | g, l, m, n, p, r, v, z | — |
兩者都落在兩份已刊印金鑰的範圍之外,而在第三份的區段之內。有一條具體線索:Bergenroth 給出 LUQ = capitán,而第93號中有碼組 lnq;在這種筆跡中 u 和 n 是同樣的兩道豎筆。他還給出 muy = de,而
muy 出現在第93號中。這只是一條線索:他的列表和 CNI 的列表都不完整,這兩封信中的大多數碼組兩者都沒有收錄。
檢驗過一種替代假設,結果失敗了。如果那些碼組是一串串形似字母的符號而不是程式碼單元(Cifra general 自己的字母表就是這個樣子,它的 i 畫成3,o 畫成 b,n 畫成 q),那就不需要金鑰,一個普通的同音替換求解器僅憑這一葉就能復原金鑰。f. 118r 的第1–21行逐個符號轉錄,得到1,016個記號、40種不同符號,從八個起點出發,針對西班牙語5-gram模型做退火。最佳金鑰每記號得分−3.5 nats,而真實的西班牙語為−1.8,輸出也不是西班牙語。記號統計說明了原因:所有 p 符號中有66%出現在 pie之內, g 中有28%出現在 gto之內,而最常見的三元組(gto ×21, pie ×19,
gnꝺ ×15, heg ×13)過於集中,不可能是字母串。這些碼組是不可分割的單元。第93號和第94號是名碼本問題,需要金鑰。
工作到此為止。Gran cifra 只以 Bergenroth 十九世紀的重建本存世,藏於 BNE MSS 20.211/52,而 Biblioteca Nacional 的檢視器、檢索和影象介面一律返回機器人驗證頁面;Europeana 和 Hispana 上都沒有這份手稿;Internet Archive 上 Bergenroth 那十一卷 Simancas 抄本是手寫的,OCR 幾乎得不到任何東西(3.3 MB 文字中 cifra 只命中三次)。Arturo Quirantes 發表過兩張金鑰紙的照片,但一張是1494–98年第一次戰役的字母表(如他所提醒,符號庫相同而取值不同),另一張是第二次戰役的部分列表。還有第二個候選有記載但未發表:Galende Díaz 所用的 B.R.A.H. 9/15 卷宗以 ff. 1–6 的一份 Cifra del visorrey 開頭,他做了描述,但沒有複製。而第94號正是一位總督的信。
給後來者的日期資訊:第94號寫於墨西拿,1503年4月27日,切里尼奧拉戰役的前一天。第93號寫於威尼斯,1504年2月24日,在加里利亞諾戰役之後的幾周裡,那時那不勒斯剛剛永久落入西班牙之手,威尼斯正在決定如何應對。
06 方法,包括失敗的嘗試
這裡幾乎全部工作都是文獻檢索,而且順序很要緊:先查館藏號,再查密碼。搜尋 Espagnol 318 而不是“Spanish cipher 1497”,找到了 Parisi 的文章,一個下午就結了第5號;搜尋這個密碼家族,找到了 Galende Díaz 的附錄,那正是第92號的金鑰;搜尋 Tomokiyo 做過的工作,找到了 Lasry 為第95號復原的金鑰:cryptiana 說這封信“is solved”(已破解),並以圖片形式發表了他的字母表,但沒有明文。五封中有三封找到了現成的解讀或金鑰;這裡沒有復原出任何金鑰。
機器方面是一條把一頁符號變成字母序列的流水線,為第95號而建,可以複用:
seg.py (二值化), glyphs.py (分量歸併), cluster.py 和 montage.py (Ward 聚類和樣張), assign95.py (類到字母的對照表), lm.py (基於 Don Quijote 構建的西班牙語5-gram模型,規範化為當時字母表的二十二個字母),以及 hybrid95.py (一個在固定已核實的類的前提下搜尋得分最高的西班牙語的解碼器)。行距來自墨跡分佈的自相關:f. 116r 為113畫素,f. 118r 為128,f. 120r 為100,f. 122r 為114。
針對第95號未解決的三分之一做了三次嘗試,記錄在此,正因為它們沒有奏效。
- 在切分前把每個字形裁剪到它所在的行帶內,以免上一行的下伸筆畫汙染邊框。結果更糟:行帶把高的符號切成兩半,殘缺的形狀做最近鄰匹配時全都坍縮到 d 和 n 上。那些垃圾框是相互接觸的符號,而不是下伸筆畫。
- 無需切分的解碼器:用 FFT 相關把每個已標記的模板沿行滑動,用動態規劃從左到右拼接整行,得分與面積成正比,每跳過一列墨跡扣一次分,然後用語言模型對拼塊解碼。拼塊數正確時,它復原的行與憑肉眼轉錄的一樣,不多也不少;23%的拼塊,其前兩名字母的歸一化相關之差在0.05以內,而語言模型得到這樣的自由度,就在上面寫出了 Don Quijote(don quiiote que el que)。
- 對第93號的字母串假設,見§05。
執行這些程式的機器上有一項應用控制策略遮蔽了 Scipy 的 signal 模組,所以相關運算直接用 numpy.fft
完成;原始碼中保留了這一做法,以防有人碰上同樣的牆。
07 來源
- BnF, Département des Manuscrits,Espagnol 318,Gallica 上的 ark
btv1b52503046q;Archives et manuscrits 中的著錄cc349255。IIIFfull/full影象寬4,077–4,155畫素,只有這些才夠用;連續請求約六張後 Gallica 就返回 HTTP 429。 - Ivan Parisi,“Un cifrario in prestito per una lettera segretissima di Federico d’Aragona re di Napoli ai Re Cattolici nel BnF, Espagnol 318”,Studi di storia medioevale e di diplomatica,n.s. IV(2020),157–177——開放獲取。
- Ivan Parisi,“La correspondencia cifrada entre el rey Fernando el Católico y el embajador Joan Escrivà de Romaní i Ram”,Pedralbes 24(2004),55–116;附錄 II 收有第5號所用的字母表和名碼本。
- Juan Carlos Galende Díaz,“La escritura cifrada durante el reinado de los Reyes Católicos y Carlos V”,Cuadernos de Estudios Medievales y Ciencias y Técnicas Historiográficas XVIII–XIX(1993–94),159–178;附錄1即 Cifra general,第167–173頁。
- S. Tomokiyo,“Spanish Ciphers during the Reign of Ferdinand and Isabella”,以及他介紹 George Lasry 各項解讀的頁面,f. 122 的字母表以圖片形式發表於此。
- Arturo Quirantes,“El CNI y el (no tan secreto) código del Gran Capitán”和“Descubierta un segundo código del Gran Capitán”(2018),附有 BNE MSS 20.211 的照片。
- 工作檔案、影象、金鑰轉錄以及上文提到的所有指令碼:targets/esp318/,其中 NOTES.md 記錄了所做的嘗試。
