日本語訳 · 原著 Daniel Bourdeau『Unsolved Historical Ciphers』は CC BY 4.0 で公開されている。本ページは JIC による翻訳で、原著者の公式版ではない。訳文に相違がある場合は英語原文が優先する · 英語原文を見る ↗
33 29 a m 22 29 17 16 z g l u 16 a 47 m
23 22 13 m 31 29 m a 41 l l 22 29 a
27 16 f i 16 22 29 m a 47 a 12 o

ワルシャワ → モラヴィア? · 数字による同音異字(ホモフォニック)暗号、1文字あたり記号は最大2つ · 1627年

「Di Varsouia 24 Xbre 1627」

1627年12月24日 · Österreichisches Staatsarchiv, HHStA, Staatskanzlei Interiora, Chiffrenschlüssel Kt. 14 Fasc. 20 f. 176 · DECODE R1408

300の数字の符号群と散在する文字からなり、平文は日付行だけ。DECODE には解読が登録されていない · 鍵は暗号文のみから復元した。難しい暗号ではない:1文字あたり記号が最大2つの同音異字(ホモフォニック)換字で、アルファベットは数字の上に通常の順序で並んでいる · 綴られた語はすべて解読し、10の語コードは文脈から注解した

Daniel Bourdeau · 投稿 · 更新

方法:暗号文のみから鍵を復元 · 範囲:完全

要約。S. Tomokiyo は、オーストリアの文書館にある可変長の数字コードについての論文でこの1ページの手紙を転写し、日付行から言語がイタリア語であることだけを記した。数字と文字は区切りなしに書かれている。彼の区切り方では、2桁の符号群が295、3桁の符号群が13、ばらばらの a と m が108、そして文字の組がいくつかになる。12 から 33 までの2桁の符号群は普通のイタリア語の頻度分布を示し、文字 a と m はテキストをまったく担っていない。5-gram の言語モデルと辞書の被覆率でスコアを付けるソルバー(焼きなまし法)は、ランダムな初期値からもシードを与えた初期値からも、一つの鍵に収束する。その鍵は通常の順序のアルファベット(奇数 13–33 が a から m、偶数 14–32 が n から z)であり、ソルバーにはそのことを一切教えていない。文字の組は子音を、まれな符号群 01–09 と 40–50 は音節と小辞を、3桁の符号群は語を表す。綴られた語はすべて解読されている。差出人は、最近ニコルスブルクで歓待を受けた者で、「this Most Serene [Queen]」の息子の一人に約束されたオルミュッツの聖堂参事会員職がまだ与えられていないこと、「these Majesties」がそれを望んでいることを宛先人に伝え、それを実行するか、すぐに返答してほしいと頼んでいる。状況:綴られた語はすべて解読済み。10の語コードと3つの小さな符号群は文脈から注解したもので、画像と鍵の束があれば確定できるだろう。

01 文書

DECODE の公開記録:1ページ、暗号、Non-decrypted(解読の登録なし)、暗号の種類 Simple substitution, Homophonic substitution、数字の記号セット、文中に平文あり、転写の登録あり、仮の日付 1600–1799年。画像と文書はログインが必要で、見ていない。Tomokiyo:「The only cleartext at the beginning ‘Di Varsouia 24 Xbre 1627’ indicates the language is Italian … the numbers and letters are written without space in the original manuscript, but I believe my grouping into two- or three-digit groups is fairly straightforward. It is possible that some letters should be grouped (e.g., ‘zg’, ‘pr’, ‘fi’, ‘ll’).」彼の転写を、それらの組でつなげたもの:

33 29 a m 22 29 17 16 zg lu 16 a 47 m 23 22 13 m 31 29 m a 41 ll 22 29 a 27 16 fi 16 22 29
m a 47 a 12 o m 33 29 a m pr 21 17 21 m 29 14 a 14 29 17 16 th 24 18 28 zg 25 a 33
29 m 40 23 29 19 16 m 19 a m 27 13 28 21 22 p 45 26 16 m a 29 14 ll 21 fi 26 29 16 06 a
13 a 20 28 21 24 26 13 a 50 21 zg 21 14 29 24 01 33 13 m 100 m 113 m 09 a 28 16 31 21 22 m 46
23 21 22 29 zg 21 m 28 14 a 17 13 05 29 17 13 26 16 a 19 m 16 31 33 29 32 a 13 lu a 28 14 16 a m
44 31 29 a 123 m 24 28 16 29 m a 23 29 25 31 29 m n a 27 13 28 21 14 19 16 m 29 16 a 03 a 24
13 18 28 26 16 m 29 fi m 160 a 17 16 22 26 21 m 47 m a ll 13 th a 28 16 31 16 14 26 13 m 19
29 a m 120 m 05 m 21 m 151 a 24 26 13 ll 13 a 33 21 24 24 13 a 29 fi a 21 24 50 17 28 26 29
16 06 a 01 154 m 19 21 01 lu 21 22 13 14 16 m a 157 a 20 28 21 24 ll 21 a m 33 13 21 24 26 13 a m 27
16 m 24 26 33 13 ll 16 m 16 23 29 17 29 16 a m 09 m 09 28 16 26 16 m 50 22 28 29 ll 16 zg 21
m 154 m 29 16 a 31 21 a 24 16 14 16 m 43 a m 24 28 18 31 29 17 13 22 42 a 154 a 23 16 m 13 m
28 16 31 21 22 m 23 13 22 m 21 pr 21 26 28 13 22 21 m 160 m a 223 a 159 m 18 22 29 33 13 a 04
a 01 a 19 21 25 14 29 m 45 22 06 m a 24 28 15 29 26 16 m 13 a 33 21 a 15 21 14 29 25 14 13 m 22 29
24 18 16 24 26 13

442トークン:2桁の符号群295(異なり36)、3桁の符号群13(100 113 120 123 151 154 157 159 160 223)、m 56、a 52、ll 7、zg 5、fi 4、lu 3、pr 2、th 2、そして o、p、n が各1。

解読にかかる前から3つのことがわかる。数字 12 から 33(30 は一度も出現しない)が308の数字トークンのうち265を占め、その度数 —— 35、35、29、27、続いて 18、17、17、15、13、10、9、9、7、7、5、4、4、2、2、1、1 —— は、その長さの単一アルファベットのイタリア語テキストの度数である(e a i o がそれぞれ30近く、n l r t s c d が10から18)。符号群 01–09 と 40–50 は文字にしては少なすぎ、母音の同音字にしてはどれも一様に少なすぎる。そして全体の4分の1を占める文字 a と m は文字ではありえない。記号として扱うと、どちらも焼きなましで同じ母音になってしまうが、そんなことはイタリア語のテキストではありえないので、これらは冗字(ヌル)である。解読文では語末に現れる。各語の後に一つ落としていくのが書記の癖だったのである。

02 鍵の復元

  1. 数字だけでの 5-gram 焼きなまし法(冗字は除き、テキストは3桁のコードで区切り、ルッカの手紙のために作ったイタリア語モデルを使用):6つのシードは一致しないが、一つはすでに avere, questa, un caricato, aiuto, subito, bene と読める。頻出する19の数字に異なる文字を強制しても役に立たない。5-gram が253個では、モデルは e t r s のごった煮を好む。
  2. ユニグラムの単語分割スコアは di la il di la に退化する。破棄した。
  3. 5-gram と辞書の被覆率:言語モデルのスコアに、3文字以上の辞書語で覆われた1文字ごとに1ナットを加え、入れ替えは頻出する数字に限定し、まれな符号群には文字を自由に割り当てた。ランダムな鍵から始めると、6つのシードのうち2つが同じ鍵に収束する(−371 と −409)。ステップ1の結果をシードにすると、3つのシードすべてがそこに到達する。その段階で解読は次のようになった:… un caricato d olmi. ad uno gli … suoi figlio hauendo io saputo in corte … uolonta di re … stata messa in esecutione … queste maesta ho stimato oficio … uoto seruitore io le so non suplicare … a uoler fare … prima … subito a me benigna risposta。
  4. 対照実験。同じ目的関数を暗号文の3通りのシャッフルに適用すると、最高でも −843、−865、−893 にとどまる。真の順序では −371 である。
  5. アルファベットは順序どおりである。収束した鍵では、a b c d e f g h i l m が 13 15 17 19 21 23 25 27 29 31 33 に、n o p q r s t u が 14 16 18 20 22 24 26 28 に置かれている。焼きなましにはそれを知るすべがなかった。これで一度しか現れない2つの数字も決まる:32 は z(偶数の系列は u x z と続く)であり、a のすぐ下の 12 はアルファベット外の記号である。
  6. 残りは文脈から。まれな記号のそれぞれについて全出現箇所を並べ、そのすべてに合う一つの値を与えた:zg = r(rico·rdo, Nicolspu·rg, confe·rire, servito·re)、lu = d(ricor·do, a·d uno, desi·derano)、fi = n(ho·nori, inte·ntione, in)、ll = t(al·tri, sta·ta, ques·te, servi·tore)、th = l(Nico·lspurg, ta·l)、pr = ff(fece, e·ffetuare)。01 si、05 non(ca·non·icato、non è)、06 ne、09 de、40 と 46 con、41 al、42 la、43 di、44 de、45 da、47 che、50 se。単独の o、p、n は、それ以外は完全な語の中にあり、冗字か転写の誤りと見なした。

03 鍵

131517192123252729313314161820222426283032
abcdefghilmnopqrstu[x]z
2729729744359101335521717151801
llthzglufipr01050609404142434445464750a m
tlrdnffsinonnedeconalladidedaconchese冗字
7253424233111112133108

3行目は出現回数。未同定:12(敬称の主語、V.S. か?)、03(副詞)、04(接続詞)、そして語コード 100 113 120 123 151 154 157 159 160 223。二重の ll、zg、th などは平文の二重字ではなく、t r l d n f に対する鍵の代替記号である。書記がもっとも変化をつけたい子音である。

04 解読

Mi ricordo che, fra li altri honori che [12] mi fece in Nicolspurg, mi confido d’hauer dato intentione a questa Serenissima [100] [113] de uoler conferire un canonicato d’Olmiz ad uno de li [123] suoi figli; hauendo io [03] saputo in [160] corte che tal uolontà di [120] non è [151] stata messa in essecutione, sì [154] desiderano [157] queste Maestà, ho stimato oficio de deuoto seruitore, [154] io le sono, di suplicarla, [154] fo, a uoler far effetuare [160] [223] [159], prima [04] si degni darne subito a me benigna risposta.
ニコルスブルクで[閣下が]私に賜ったほかの栄誉の中でも、私はこの至聖なる[王妃]に、[閣下が]オルミュッツの聖堂参事会員職を[王妃の]ご子息のお一人に授けるおつもりであることを、確かにお伝えしたことを覚えております。[その後][この]宮廷で、[閣下の]そのご意向が、これらの両陛下がお望みのようには[まだ]実行されていないと知りましたので、献身的な僕として、私が王妃にとってそうであるように、閣下に、こうしてお願いする次第ですが、[この…]を実行に移していただくよう、[あるいは]まずはすぐに私にご親切なご返答をいただけるよう、お願いするのが務めであると考えました。

05 背景

ニコルスブルク(ミクロフ)は、1599年から1636年までオルミュッツ司教でモラヴィア総督でもあった枢機卿 Franz von Dietrichstein の居所であり、オルミュッツの聖堂参事会員職の授与権は彼にあった。1627年12月のポーランド王妃は、フェルディナント2世の妹であるオーストリアのコンスタンツェである。彼女の年少の息子たちは、まさにこの時期に聖職禄を与えられていた:Charles Ferdinand は1625年からブレスラウ司教、John Albert は1621年からエルムラント司教であった。したがってこの手紙は、皇帝ではなく Dietrichstein に宛てた、イタリア語で書く代理人の催促状として読める。彼は枢機卿の約束をニコルスブルクからワルシャワへ伝えた(あるいは mi confidò と読めば、枢機卿自身が王妃にそれを伝えたとそこで枢機卿から聞いた)。約束は果たされておらず、国王と王妃は待っており、彼は聖堂参事会員職か返答のどちらかを望んでいる。それはまた、この文書が往復書簡ではなく Chiffrenschlüssel の系列に収められている理由の説明にもなる。鍵とともに綴じられたのである。このどれも暗号文の中にはない。暗号化されたテキストには差出人も宛先人も名前がなく、日付行以外に平文があるとしても、それは DECODE のログインの向こうにある画像の上である。

06 方法とファイル

  1. 暗号文は Tomokiyo の論文から取り、彼の示唆どおりに組をつなげた。度数と一致指数(IC)を確認(targets/warsaw/ct.txt).
  2. 数字に対する 5-gram 焼きなまし法。文字を記号として含めた場合と含めない場合(targets/warsaw/solve.py, solve2.py).
  3. イタリア語コーパスから作った辞書と単語分割スコア(targets/warsaw/wordsolve.py).
  4. 収束した 5-gram +被覆率の焼きなまし法と、シャッフルによる対照実験(targets/warsaw/combo.py).
  5. 最終的な鍵とデコーダー(targets/warsaw/decode.py, plaintext.txt).

確認したこと:トークン数、ランダムな初期値とシードを与えた初期値からの収束、3つのシャッフルによる対照実験、アルファベットの順序、すべてのまれな記号の全出現箇所とその値との照合、全体を通じた語レベルのイタリア語。確認していないこと:写本の画像、差出人、宛先人、語コード。§05 の帰属は推論であり、繰り返し引用する前に検証すべきである。

07 出典

分析スクリプトと暗号文はリポジトリにある(targets/warsaw/).