第13話 暗号魔法陣

 暗号化魔法陣のアイデアを考えていた。


 古典的な換字暗号の例としては古代の皇帝ガイウスが用いたものが有名である。例えば文字を3つ隣のものに置き換える、といった具合に文字を置き換える。この場合、文字の種類を何文字にするか次第ではあるが(!や?といった記号や数字を含めることもできる)置き換えパターン数としてはたかだか文字数分にしかならない。文字種が30文字なら暗号のパターンは30文字 -1 の29パターンである(もとのママは暗号にならないので1パターン少なくなる)。29パターン程度であれば力ずくで試して解読することも容易だ。


 しかし、理屈の上では30文字を他の30文字に置き換える組み合わせは実に 265 252 859 812 191 058 636 308 480 000 000 通り考えが及ばないほどの組み合わせに及ぶ。とはいえ、欠点もありどの文字がどの文字に対応付けるかという情報が膨大になる。単純に考えても30文字に及ぶ「鍵」が必要なるわけであって、本文に対して「鍵」が随分と長い。手作業でこの換字表を用いて復号するのも大変だが、たとえ魔法陣でやるにしてもこの「鍵」を魔法陣に入力するのは大変である。暗号魔法陣を使い始めるまでの準備時間がかかりすぎで、よほど悠長なシチュエーションでなければ使ってられないだろう。


 なので、ある程度簡略化して利便性と暗号強度のバランスを取らなければならない。予め何パターンかの文字の換字表を用意しておくことはできないだろうか。どの文字とどの文字が対になるかをひとつずつ設定してしては手間がかかりすぎる。一括で組み合わせを差し替えることができるのであれば利便性は高いだろう。


「なにか良い方法はないものか……」


 一息ついてジョッキに大麦水を汲む。大麦水は大麦を煮込み、濾し取ったもので、安全な水とされている。薄いエールやワインを飲む人もいるが、私は大麦水のほうが好きだ。特にこの季節、秋の播種はしゅの時期ならではの麦芽を使った大麦水はほんのり甘い。


 以前、描き誤りを削ろうとしたときに失敗して切った左手の怪我はすっかり治ってしまったが、アンネ先生に貰ったアミュレットは染糸を三編みにした簡素なものであった。戒めとして今でも着けたままだ。また夢中になって怪我などしないようにしなければ。


……そうか。これだ。


 糸は複雑に絡まり合い、端と端では並びが異なる。これはある文字から他の文字への対応付けに似ている。このアミュレットの編み紐のように30本で編んだ紐があれば、それは30種の文字の対応付けに他ならない。



 試作品プロトタイプを作ってみよう。


 2枚の板に穴をあける。試作なので8個の穴を丸く並べることにした。2枚の板は四隅に柱をつけて1インチほどの間を空けて平行に固定する。魔法陣は板や羊皮紙に導通インクで描くものだが、ここでは糸を導通インクにひたして2つの板の穴を通して糸を張る。糸の固定に一瞬悩んだが穴から板の端をぐるっと回して結ぶことにした。

この「糸車」状のものを入力用の魔法陣の上にのせ、そのさらに上に出力用の魔法陣の板を乗せる。導通インク同士の接点でうまく魔力が流れるかをテストしてみるが問題はなさそうだ。出力用魔法陣が内向きになってしまって出力結果が見えにくいが、そもそも接点を板に穴を開けて裏側におけば良いということに気づいた。


 試作1号機である。


 魔法陣は平面に描くものというのが常識であったが、パイのように層となって積み重ねたこの魔方陣は異形の姿といえる。しかし、多層化することで、導線を交差させることが可能となり、これはなかなか面白い応用が出来るのではないかと思い始めた。


 羊皮紙の魔法陣も穴を開けて裏面と繋げてしまえば導線を交差させることが出来るかもしれない。いや、そもそもこの導通インクに浸した導通糸が面白い。学友リュシアンの手紙で木の枝を魔導インクに浸すというところから着想を得たものだが、複数の魔法陣をつなぎ合わせることができそうだなと思案する。


 そもそも羊皮紙というのは羊の革であるから、最大の大きさというのは羊の大きさで決まってしまう。より大きな獣の皮を用いればより大きな魔法陣が描けるのは確かだが、そういった入手しにくい素材というのは総じて高価なのであった。しかし、複数の羊皮紙を重ねて連結して魔法陣を描けるとなれば、羊皮紙の大きさの限界を考える必要はなくなる。近年の魔導回路の大型化に対するひとつの答えでもあった。


 設計方法に手応えを感じた私は次の試作機の設計へと進める。




 レンズブルグ城の厩舎の脇に馬番の小屋がある。馬番に合言葉を伝えると奥に連れて行かれる。そこには入り口からは見えないようになっているが地下への階段があった。地下に降り、ある部屋に案内されるとそこで待つように言われる。待つことしばし。やがて伯爵がやってきた。レンズブルグ城から抜け道でもあるのかもしれないが、その抜け道そのものを私が知る必要はない。余計なことは知らないに限る。命に関わる。


「やあ。こんなところで済まないね」


 伯爵はいつもは意図的になのかアラン、アランと私の名前を呼びかけるが今日はそれがなかった。人に聞かれるのを警戒しているのかもしれない。


「これが試作3号です。魔法陣設計の方向性が見えてきたので一度意見を伺おうと思って持ってきました」


 荷をほどき小箱を差し出す。受け取った伯爵はそっとその蓋を開け、眉をしかめる。


魔法陣の巻物魔法のスクロールでも入っているのかと思ったが、これは……」


「はい。この箱自体が魔法陣です」


 箱を開けると中蓋のような形で魔法陣が描かれているのが見て取れる。中蓋を開けると中には円盤が3枚重ねて置かれていた。


「使い方を説明しましょう。各円盤を好きな順序で並べ替えます。このとき、裏返して使うこともできます。さらに、円盤ですから任意の向きに配置することができます。この状態で中蓋を閉め、そして左手で魔法陣を起動します。起動したらその状態で右側の文字のボタンを押します。そうすると別の文字の部分が光って置き換え文字が出力される仕組みです」


 一通り操作してみせると伯爵に箱を手渡す。伯爵はしげしげと箱を観察すると円盤を配置し、魔法陣を起動して文字の換字の様子を確認していた。円盤の配置をやり直し、換字のされ方が切り替わるのを確認すると口を開く


「この円盤の配置こそが鍵となるというわけか」


「はい。解読する際には正しく逆順に配置して暗号文を入力することになります」


「3枚の配置パターンが裏表あるから……48パターンかね?その上で円盤の回転の組み合わせが30×30×30で270,000通りになるか。これは手当たりしだいで組み合わせを見出すのは難しそうだな」


「使用する円盤が異なる者同士では通信できないという特徴もあります。利用者をグループ分けして別の円盤を配給すれば横の漏洩を防げます。また、万一敵方に鹵獲されたとしても定期的に円盤を取り替える運用をしていれば漏洩の被害は小さくすみます」


「面白い。素晴らしい仕組みだ。このような形で出てくるとは全く予想していなかったな。また新しい魔法陣の構成方法を思いついたというわけかね?」


「一般に魔法陣は巻物魔法のスクロールにしますが、これは敢えて板で作ったほうが利便性が上がると思いました。複数の魔法陣を連結して使うというアイデアを試していたのですが、そうなると羊皮紙よりも板で組み木のように扱うほうが形としては良いかと思いました」


「魔法陣がパーツの組み合わせで機能性が変わるプログラマブルというのは非常に面白いアイデアだ。換字のパターンの複雑さ、運用の簡便さ、漏洩対策。いままでの暗号とは一線を画したものになっているだろう。この点は素晴らしい。だが、だ」


「流石ですね。わかりますか。その点を改善しなければなりません」


「だからこそ、君はこれをもって試作品と言ったわけだ。このままでは使い物にならない」


 この暗号魔法陣の試作3号には重大な欠陥があった。暗号文を解読できてしまうのである。このような換字式暗号の解読法については700年も前にエルフの賢人キンディーが記した本に記されていた。


 ある文字を他の文字に置き換える換字式暗号だが、ただ何文字かずらすという方式に比べて文字の換字表は非常に複雑になり、換字表そのものを手当たりしだいで探り当てるのは困難である。30文字であれば30の階乗というとてつもない組み合わせ数になる。


しかし、暗号文中の同じ文字は常に同じ文字に変換されるので、文字の出現頻度や、頻繁に用いられる単語の組み合わせは暗号文にも現れてくる。暗号文の中に登場する文字の出現数を数えて表にするとその傾向が明らかになる。この表からどの文字がどの文字に対応づいているかの候補がかなり絞り込め、頻出単語はさらにその組み合わせを探るヒントとなる。


これをクリアしないことには安全な暗号とはいえない。今までの暗号と復号が魔法陣によって手軽になりました、というのは評価ポイントではあるものの、そもそもの暗号の解読ができてしまう以上はこの試作3号機をもって採用というわけにはいかなかった。



----------

アランの暗号機の試作1号機は単一換字式暗号でした。単一換字式暗号はアブー・ユースフ・ヤアクーブ・イブン・イスハーク・アル=キンディー(Abū-Yūsuf Yaʿqūb ibn Isḥāq al-Kindī, 801年 - 873年?)によって解読方法が記されています。1843年に発表されたエドガー・アラン・ポーの短編小説「黄金虫」にはまさにこの単一換字式暗号の解き方が出てきます。


この解読方法は15世紀ごろには欧州にも広がり、ヴィジュネル暗号のような多表式換字の考案の動機となりました。

  • Xで共有
  • Facebookで共有
  • はてなブックマークでブックマーク

作者を応援しよう!

ハートをクリックで、簡単に応援の気持ちを伝えられます。(ログインが必要です)

応援したユーザー

応援すると応援コメントも書けます

新規登録で充実の読書を

マイページ
読書の状況から作品を自動で分類して簡単に管理できる
小説の未読話数がひと目でわかり前回の続きから読める
フォローしたユーザーの活動を追える
通知
小説の更新や作者の新作の情報を受け取れる
閲覧履歴
以前読んだ小説が一覧で見つけやすい
新規ユーザー登録無料

アカウントをお持ちの方はログイン

カクヨムで可能な読書体験をくわしく知る