機密を守り、秘密を暴く!中世ヨーロッパの暗号技術

高峰 遼一
高峰 遼一
どうも高峰です(@takamineryoiti
どうもアイリです
アイリ
アイリ
[toc+]

この記事からわかること

  • 中世ヨーロッパで利用されていた暗号
  • 中世ヨーロッパの暗号の弱点
  • 中世ヨーロッパを風靡した『解読不可能な暗号:ヴィジュネル暗号』

中世の時代において、暗号という技術が必要だったのは国家だった。

そのため、暗号とは常に国家のために存在し、国家の機密を守ることで他者との優位性を確保するためにのみ存在した。

では、そんな中世ヨーロッパではどうなのか?

 

今回はそこを解説していく。

 

中世ヨーロッパの暗号

中世ヨーロッパでは主に以下の暗号が利用された。

  • シーザー暗号(カエサル暗号)
  • 転置式暗号
  • 換字式暗号

これは、どれも比較的簡単な暗号であり、仕組みさえ知っていれば誰でも数分程度で解ける暗号である。

ではどれほど簡単な暗号なのか?

 

シーザー暗号(カエサル暗号)

シーザー暗号はよく耳にするため、多くの人が知っていると思うが改めて、解説する。

 

シーザー暗号とは『平文で使用される文字を別の文字に置き換える暗号』である。

これがどういう意味かというと、AというアルファベットをBとして書くということだ。

 

例えば

TAKAMINE(平文) → UBLBNJOF(アルファベット1文字をずらして暗号化)

のようなものだ。

 

これは、アルファベットが1文字ずれているため比較的簡単な暗号だが、中世ヨーロッパでは安全な暗号化の方法だった。

というのも、当時において文字の読み書きが可能な人間は限られていたため、このような比較的簡単な暗号でもその秘匿性は十分守られていた。

 

加えて、シーザー暗号はアルファベットをでたらめに並べ替えられるため、1文字ずらしでもAの次がBとは限らないなどのようなことも平然とあったため、暗号解読にも当時では時間がかかった

転置式暗号

転置式暗号はあまり聞き馴染みがないかもだが、その意味を理解するのは比較的簡単だ。

 

転置式暗号『平文の文字を並べ替える暗号』である。

つまり

TAKAMINE(平文)→ ENIMAKAT(暗号化)

と逆にするだけでもできる暗号だ。

 

一見してこれは誰でもすぐにわかるだろうと思われがちだが、中世ヨーロッパでは読み書きできる層はさほどいない。

そのため、安全性はあった。

また、ここでは簡単に逆にして暗号化したが、実際にはでたらめに並べ直して暗号化していたので、安全性はあった

 

換字式暗号

換字式暗号は聞いたことあるものの、あまりよく知らないという人が多いと思う。

これは、転置式暗号と並んで換字式暗号は暗号の中では基本中の基本である。

 

さて、そんな換字式暗号というのは『平文を1文字もしくは数文字単位で別の文字や記号等に変換する暗号』である。

 

つまり、

TAKAMINE(平文)→ 201111139145(暗号化)

するようなものだ。

今回の場合、各アルファベットをそのまま数字に置き換えたため、暗号化は比較的簡単である。

暗号化の方法を知る味方にも容易に解読可能なものである。

 

換字式暗号はこのように比較的簡単に暗号化しやすく、また暗号化の方法を知る味方にも解読は容易だった。

ただ、何も知らない第三者からは平文で8文字だったのが、突然12文字になっているため、仕組みを知らない限りは早々に解読はできなかった

 

 

そんな暗号たちだが、実は各々弱点が存在した。

次はその弱点を解説しよう。

 

中世ヨーロッパの暗号の弱点

上記でも述べたように、シーザー暗号、転置式暗号、換字式暗号はどれも当時としては優秀であった。

実際に、その有用性があったからこそ、長い間利用されてきた。

 

しかし、9世紀になるとアラビアに住むアラビア人によって「頻度分析」という手法が発見され、次第にその安全性は崩れていった

特に換字式暗号やシーザー暗号は簡単に解読されるため、「頻度分析」という手法が広まるにつれて安全性が急激に低くなった

 

では、そんな換字式暗号やシーザー暗号は「頻度分析」にどのようにして解読されるのか?

 

そもそもの話、換字式暗号やシーザー暗号は平文と呼ばれる元の文の意味は変えずに表面上のみを変えた暗号である。

つまり、元の文と暗号化された文では、文字数は同じで文としての構成も同じということだ。

 

そのため、暗号内で最も登場する文字=その言語でよく利用される文字という風にわかる。

 

例えば、英語を暗号化したとしよう。

すると、英語というのは「e」が最も利用されるアルファベットのため、暗号化された文章の中で最も登場頻度が多い暗号化された文字が英語における「e」であると考えていく。

そして、暗号化された文字の中で最も登場頻度の多いものをその言語で最も利用される文字として当てはめていくことで、文としての意味をなすようにする。

このようにして、換字式暗号やシーザー暗号は簡単に「頻度分析」に解読される

 

このような流れのため、換字式暗号やシーザー暗号はその弱点を突かれた解読法によって、その安全性を急激に低くした

 

では、転置式暗号はどうなのか?

 

転置式暗号には「頻度分析」などの分析方法はなかった。

むしろ、中世ヨーロッパの時代において、とにかく総当たりしか解読方法はなかった。

 

では、転置式暗号には弱点はなかったのか?と言われるとそうではない。

むしろ、転置式暗号の弱点とはその仕組みにあった。

 

転置式暗号は上記でも述べたように文字をバラバラに並べ直して暗号化するものだ。

そのため、転置式暗号で暗号化された文を解読されないようにでたらめに並べ直して暗号化した場合、味方に届いた場合の解読が難しくなったり、時間がかかったりと不便が多かった。

だからといって、容易にしてしまうと逆に敵に渡った際には、簡単に解読されてしまうという特徴があった。

そのため、転置式暗号には一定の規則性での変換があり、その規則性を知りさえすれば簡単に解読することができた。

 

そんな中、15世紀以降において、換字式暗号をより複雑化して暗号化するノーメンクラタ(ノーメンクラタ暗号)が登場する。

中世ヨーロッパの外交暗号

15世紀以降、暗号化が簡単かつ味方に届けば簡単に解読できる暗号が登場する。

 

それは、ノーメンクラタである。

これは当初、王や教皇などが、個人的または外交的にやり取りするために行われた暗号である。

 

そんなノーメンクラタは、まずやり取りする双方に「名辞とそれに当たるコード語を並べた一覧表」を持つことで機能する。

 

というのも、ノーメンクラタには以下の特徴がある。

  • アルファベットを別文字もしくは別記号に置換(例:A→1)
  • 数個の無意味な記号もしくは文字を入れる(冗字の導入)
  • 特定の文字や言葉を意味するコードを記入もしくは置換(例:「王」→ C、「城」→ K)

 

このような方法で暗号化されるため、従来の「頻度分析」の効果が少なくなってしまう

 

それは、なぜか?

「頻度分析」はその言語で多用される文字が最も多く登場することで効果を発揮する。

しかし、全くの意味をなさない冗字や特定の文字や言葉を意味するコードの前では、何が言いたいのかがわからない

それこそ「〇〇を〇〇へ持っていく」という状態になってしまい、肝心の部分がわからないということになる。

 

では、これらをどのように解読していったのか?

実際にその事例が存在するため、その事例をもとに解説しよう。

 

スコットランド女王、メアリ・スチュアートはイングランドのエリザベス女王の暗殺を企てて処刑された。

そんなメアリ・スチュアートはこのノーメンクラタを利用して共謀者とのやり取りをしていた。

 

だが、このノーメンクラタによる秘密のやり取りを、エリザベス女王の側近のフランシス・ウォルシンガムが密かに入手する。

ウォルシンガムは、メアリーと共謀者との秘密のやり取りを入手しては頻度分析やパターン、頻出フレーズの分析を行った。

 

これにはノーメンクラタの暗号としての特徴を利用したものだった。

頻度分析では冗字の存在はあれども、「CがKへ行った」程度はわかる。

だが、肝心の「C」と「K」の意味がわからない。

そして、「C」と「K」はメアリーと共謀者の間では意味の成す言葉であることを逆手に取った。

ウォルシンガムは暗号としての出現頻度やパターン、または文脈やメアリーや共謀者の背景を想像し解読作業を進めた

時に、メアリーや共謀者が暗号化する過程で起こしてしまったミスや不注意からも手掛かりを集めて、多大な労力と時間をかけて解読作業に取り掛かる

 

そしてついには、本来ならメアリーと共謀者のみにしか存在しなかったノーメンクラタの一覧表がウォルシンガムが解読過程で作られたことで、完全に解読されるに至り、暗号文とそれらを解読した一連の文章をエリザベス女王へ提出し、それが決め手となって当時のスコットランド女王メアリー・スチュアートは処刑された。

 

このように、どの暗号も時間を掛ければまず持って解読は基本可能である。

しかし、ノーメンクラタは従来よりも比較的時間がかかる他、鍵となる一覧表が第三者に漏れない限りは非常に強固な暗号になることには違いはない。

 

その上で、中世ヨーロッパでは時代が下るにつれて暗号の技術はさらに発展し、ついには中世ヨーロッパ史上で解読不可能と言われた「ヴィジュネル暗号」が15世紀末に登場する

 

中世ヨーロッパを風靡した『解読不可能の暗号:ヴィジュネル暗号』

このヴィジュネル暗号は、15世紀末以降の中世末期にて利用された暗号で、その解読の難しさから、解読するのは不可能であると長らく言われてきた

では、実際にどのように暗号化されるのか?

 

基本的に、鍵となる単語(鍵語)を作成し、送信者と受信者で共有する。

例えば、双方が同じ本を持ち、日付ごとで単語を変えるなどのルールを設けて暗号化を行えれば、解読するのは飛躍的に困難になる

4月10日に書かれたのであれば、共通の本の4ページの10番目の単語という風にすれば、何も知らない解読側は解読の手がかりになる鍵語を探すのだけでも大変になる。

 

このようなルールでヴィジュネル暗号が運用されれば、まず持って中世ヨーロッパでは解読は不可能になる。

なぜなら、解読する方の負担が尋常ではないほど重くなるからだ。

 

なら、ヴィジュネル暗号が最強なのか?

弱点はなく、ヴィジュネル暗号を解読するのは現代においても不可能なのか?

と思われるかもしれないがそうではない。

 

上記でも述べたように、どのような暗号でも解読はできる。

ただ、どれくらいの時間がかかるかである。

 

では、ヴィジュネル暗号で暗号化し、実際に解読してみよう。

まず、事前に鍵となる単語(鍵語)を設定しよう。

これは先ほど述べたように、日付ごとに変更してもよい。

ただ、重要なのは送信者と受信者が共通して認識していなければ意味がないということだ。

 

ここでは「OWL(フクロウ)」を鍵語としたとしよう。

まずは、ヴィジュネル暗号の内、下の画像のように鍵語を中心に暗号化の表を抽出する。

 

 

こうすることで左の縦の列が鍵語で構成された、暗号化の表が出来上がる。

基本的にこれが暗号文の元として利用されることになる。

 

特に一番上の行であるアルファベットは、暗号化の際に利用する平文の指標になる。

では、今回は「TAKAMINE」を暗号化したいと考えた場合、以下のように考えることになる。

 

「TAKAMINE」のTは、鍵語となる「OWL」のO行と対になるため「H」となる。

「TAKAMINE」のAは、鍵語となる「OWL」のO行ではなく、一個下のW行となるため「W」となる。

「TAKAMINE」のKは、鍵語となる「OWL」も同じように先ほどのW行よりも一個下のL行となるため「V」となる。

 

とこの時点で、「TAKAMINE」のTAKは「HWL」と変換され、元の状態とはかけ離れたものになる。

 

では、鍵語の下までいくとどうなるか?

今回の場合、Kを暗号化した後はどうなるのか?

それは、また最初の行に戻るのが正解である。

 

最終的に「TAKAMINE」をヴィジュネル暗号で暗号化した際、鍵語の「OWL」で暗号化すると暗号文は「HWLOITBA」となる。

この時点で、もはや原型がないため、よっぽどのことがない限りは解読は難しい。

だが、解読方法がないわけではない。

 

『解読不可能な暗号:ヴィジュネル暗号』の解読方法

次は解読方法を解説しよう

 

解読にあたってまず重要なのは、鍵語の存在だ。

鍵語を解読側が知っていれば後は時間の問題だが、鍵語を知らない場合は解読は進まない。

 

先ほどと同じく、鍵語は「OWL」とする。

 

その上で、「TAKATAKATAKATAKA」と平文(暗号化されていない文章)を送ったとする。

 

この場合、鍵語を知る人は平文に戻すことは容易である。

しかし、鍵語を知らない第三者には「HWVOPCYWEOGLHWVO」しか伝わらない。

 

第三者目線の場合、この文章が暗号化されているのは明確であるが、どのような方法で解けばいいのか不明である。

実際に、頻度分析をかけた場合、暗号文はどの文字もほぼ同じ割合で出現するため、効果が見られない。

 

これでは、ヴィジュネル暗号を解く方法のヒントはないのか?というとそうではない。

ヒントは暗号文にある。

今回の場合、「HWVOPCYWEOGLHWVO」に隠されているのだ。

 

実際に、ヴィジュネル暗号の解読法を確立したイギリスの数学者、チャールズ・バベッジは、ヴィジュネル暗号の周期性に注目した。

 

改めてこの文章を見ると、前の4文字と後ろの4文字が同じであることがわかると思う。

 

ここから、同じ文字列の間の距離(文字数)は鍵語の文字数の倍数になっていなければならないという事実に気が付く。

 

同じ文字列、同じ文字数で統計を取り、その文字数の最大公約数が鍵語の長さになると推測できると考えた。

ここまでくると、あとは鍵語の長さで文字頻度を数えれば、一番多い「e」であることが推測できる。

 

あとは、シーザー暗号と同じように、頻度分析で暗号は解読できる。

ただ、ここで重要なのは、鍵語の文字数間隔ごとで頻度分析を行うという点。

 

このように、ヴィジュネル暗号は単純な換字式暗号と比較して、解読の労力は莫大になり、時間はかかる

しかし、外交文書や軍事秘密の書類などに対して行えれば、解読する効果は絶大

 

その上、暗号化している人からすると、ヴィジュネル暗号は解読不可能なくらい安全だと誤解しているのであれば尚更である。

 

そして、このヴィジュネル暗号を解読した方法は、「カシスキーテスト」と言われる。

 

「カシスキーテスト」は、繰り返し登場する文字列、文字数を数える暗号解読の手法のこと。

6文字置き、2文字置き、3文字置きの順に同じ文字列、文字が登場することが多い。

そのため、鍵語の文字数はこのような数の公約数である可能性が高いという特徴を持つ。

 

この「カシスキーテスト」はドイツの暗号解読者、フリードリッヒ・カシスキーが独自に発見、発表したことからきている。

 

なお、この手法を最初に発見した、チャールズ・バベッジはこの手法を公表しなかった。

その理由は定かではない。

 

とはいえ、ついに中世時代より解読不可能とされてきたヴィジュネル暗号が解かれ、現在ではより高度な暗号が皆の秘密を守っている

 

中世ヨーロッパの暗号技術 まとめ

 

中世の時代、暗号を求めたのは国家だった。

そのため、暗号は常に国家のために存在し、その機密を守ることで、他国との優位性を確保した。

 

しかし、中世の時代、存在したのは比較的簡単な暗号。

  • シーザー暗号
  • 転置式暗号
  • 換字式暗号

 

これらは、全て仕組みさえ知っていれば、誰でも数分程度で解読できた

 

しかし、これでは国家の機密は守れない。

だが、暗号などそう簡単に発明できるわけでもない。

 

そうして長いこと時間がかかりできたのが、ノーメンクラタ暗号。

従来の暗号よりは比較的強固なこの暗号は、確かに有益だった。

 

しかし、それは完全なものではなかったのだ。

そのため、スコットランド女王メアリー・スチュアートは処刑された。

 

そんな中、堂々と中世末期に登場したのがヴィジュネル暗号。

その暗号の難しさは、並大抵のものではなく、文字通り当時の人々に解読不可能と言わせた程だった。

 

しかし時も流れ、このヴィジュネル暗号は最終的には解かれた。

ただ、中世という時代においてはついぞヴィジュネル暗号が解かれることはなかった。

 

そのため、中世ヨーロッパ風の異世界を舞台とした作品にはうってつけの暗号かもしれない。


この記事が参考になったら下のアイコンからシェアしてね‼️
アイリ
アイリ

-Archive
-,