« 最後は短いジョギング、レース準備完了(のつもり♪) | トップページ | 宮本武蔵、真実の歴史と虚構の物語の間で・・ »

暗号の解読~簡単な換字式暗号の問題例

今日は、今シーズンのランニングのトレーニングが終了した翌日で、連休前。

既に今週は11000字以上書いてることだし、超手抜き記事で終わらせよう

・・・と思ったけど、記事ローテーション的には理数系が欲しい所。そう言えば、

個人的な暗号のコネタを書いてから半月経ってるし、簡単に暗号記事を1本

アップしとこう。

    

記事のカテゴリーとしては、言語カテゴリーが無いことだし、やはり数学か

な。あるいは、ゲームか♪ もちろん、現在の情報化社会を支えてるのは数

学的な暗号理論なんだろうけど、以下に書くような低いパズル・レベルのも

のだと、むしろ言語の分野だと思う。実際、私が初めて学校で暗号の話を

聞いたのは、国語の授業だった。

   

    

         ☆          ☆          ☆

高校のD先生は、ちょっと頭が切れる感じの人で、得意げにこんな感じの話

をしてたのだ。「すべての暗号は、必ず解読できます」。ただ、その中で一番

難しいのは、解読するための枠組み(ビンゴみたいに穴があいた紙や板)を

使うもの。送信者と受信者だけがそれを持ってると、傍受する第三者による

解読は難しい・・・・・・。そんな話だったと思う。

    

私は話を聞きながら、それは変だろ!と内心、突っ込んでた。暗号として、

記号の列が1つある時、何か強い条件(制約)が与えられてなければ、そ

れが表しうるものは無限にある。だから、答えの候補らしきものをいくつか

見出すことなら出来るだろうけど、正解を1つ特定することは出来ない。そ

う思ったのだ。

    

ここで、「換字式暗号なら有限では?」と思う人がいるかも知れないが、仮に

換字式と分かってたとしても、原理的には無限通りの表現内容を持ちうる。

と言うのも、暗号1文字に原文1文字が対応するかどうか分からないからだ。

    

正確に言うと、暗号文の区切り方は有限としても、区切られた暗号の各ユニッ

トが原文何文字を表すのか、その可能性は原理的に無限に存在する。例え

ば、apcqyという5文字の暗号列で、「apc」に日本語100文字、「qy」にアル

ファベット200文字を割り当てることも可能。あらかじめ送信者と受信者の

間で決定しておけばよい。

  

もちろん、実際には暗号の数文字に対して原文の数文字(普通は1~2文

字同士)が対応するのが普通だろうから、その仮定のもとで解読を試みて

もいいけど、唯一の正解を論理的に特定することは出来ない。たまたま当

たる程度が限界なのだ。実際、私が上の「apc」にどんな意味を込めたか、

誰にも特定できないはずだ。。

    

     

           ☆          ☆          ☆

ただし、各種の強い条件がある場合や、問題の出し方が特殊な場合は、あ

る程度は論理的に、正解へとたどり着けることもある。その1つの例が半月

前の記事に書いた暗号だ。そこでは、コメント欄のやり取りの中でヒントも追

加しておいた。

     

要点だけ再掲すると、私の友人「いがやたかほ」(猪谷貴穂)のメールアドレ

スが、「a3a-13au3a@・・・・・・」となってた。もちろん、元の半角を全角文

字に変更してるし、個人情報保護のため、仮名と仮暗号へと変えてある。さ

て、この暗号化の規則は?、というのが与えられた問題だった。

   

この場合、最初から答(=原文)が分かってるし、たかが個人のユーザー名

だから、それほど複雑な規則のはずはない。そもそも、他の友人が直ちに

見破ったという話だったのだ。では、私の解読作業の実際を書き記してみる。

        

    

         ☆          ☆          ☆

原文は常識的におそらく、漢字ではなく、ひらがなやカタカナか、アルファ

ベット(igaya takaho、あるいは、takaho igaya)だろうし、文字を交換す

る「換字式暗」だろうと推測できる。

    

もちろん、文字交換に加えて、文字の順番を変える「転置式暗号」を組合せ

てるかも知れないが、それだと別の友人が直ちに見抜くことは出来ないは

ず。「a3a-13au3a」という文字列の順番の変え方は多過ぎるからだ。せ

いぜい、姓と名の順を逆にする程度だろうから、わざわざ転置式と考える

必要もない。

      

一方、文字を飛び飛びに配置する「分置式暗号」を組み合わせてる可能性

もほぼ無い。分置式とは、例えば「pkixce」というアルファベット6文字の列

から、3文字目と6文字目を取り出して、「ie」(家)と読むような形式のこと。

     

この場合、元の暗号よりも字数がかなり減ることになる。「a3a-13au3a」

という10文字(ハイフン込み)をかなり減らした場合、もはや文字交換で「い

がやたかほ」などを表すことは出来ないはず。

      

   

          ☆          ☆          ☆

という訳で私は、単純な換字式暗号だろうと推測した。さらに、私の質問へ

の応答によって、暗号と原文は1対1の対応だと分かってる。しかも原文は、

ひらがなか、アルファベットだ。

     

ここで場合分けしてみる。暗号「a3a-13au3a」が、ひらがな「いがや た

かほ」、または「たかほ いがや」と対応してるなら、10文字が6文字(空白

込みなら7文字)になってるわけで、文字数が合わない気がする。1文字と

1文字の対応ではないし、2文字と1文字の対応でもない。原文の母音の

「い」だけが1文字の暗号、他は2文字の暗号としても、1+2×5=11文

字の暗号になってしまう。

       

一方、暗号「a3a-13au3a」がアルファベット「igaya takaho」、または

「takaho igaya」と対応してるなら、暗号10文字に対して原文が11文字

(空白を入れると12文字)。これまた、文字数の対応が上手くいかない。

  

したがって、どちらにせよ、暗号2文字が原文1文字になる対応と、暗号1文

字が原文1文字になる対応と、2種類が組み合わさってるものと思われる。

    

    

         ☆          ☆          ☆

そこで改めて、暗号「a3a-13au3a」を見直すと、同じ文字(aと3)が繰返

し使われてるという特徴に気付く。ということは、少なくともどちらか1つは母

音を表すのではないか。

  

しかし、原文の母音は、ひらがなで「いああ ああお」、アルファベットで「iaa

 aao」。姓と名を逆転させても、やはり暗号とはなかなか合わない。暗号の

aが、原文の母音「あ」や「a」に対応するのだろうと思うけど、暗号のハイフン

を文字として考慮しても、ピッタリは合わない。

    

そもそも、これほど難しい暗号規則を、どうして別の友人はすぐに見破った

のか。その点も不思議だ・・・と言うと失礼かも♪

     

とにかく私は白旗を上げて、答えを聞いてみた。すると、意外な応答が返っ

て来たのだ。簡単に言うと、「公約違反」 (^^ゞ 色んな意味で、1対1にはなっ

てなかったのだ。。

      

     

          ☆          ☆          ☆

正解の案(笑)として示されたのは、暗号から原文への次のような対応。

   

    a3 → t    a → a    1 → i    3 → g    u3 → y

    

これだと、暗号「a3a-13au3a」に対して、2つの原文が対応してしまう。

もちろん、正しく(?)「ta-igaya」とも読めるが、「aga-igaya」とも読める。

この多義性を避けるには、例えば、「aのすぐ次に3が続く場合は、ag では

なく、t と読む」といった約束事が追加で必要だ。

     

さらに、たとえ「ta-igaya」と読めるようにしたとしても、これでは元の名前

と1対1になってない。「いがや たかほ」でも、「いがや たまこ」でも、「ta-

igaya」となってしまうからだ。。

      

   

           ☆          ☆          ☆

という訳で、私は直ちに「公約違反」だと反論♪ 納得できる再反論は返っ

て来てない。まあ、たかがこの程度の暗号でさえ、解読するのも作成する

のも大変だという話だ。

      

それでは、今日はこの辺で。。☆彡

    

                                  (計 3027文字)

| |

« 最後は短いジョギング、レース準備完了(のつもり♪) | トップページ | 宮本武蔵、真実の歴史と虚構の物語の間で・・ »

ゲーム」カテゴリの記事

数学」カテゴリの記事

コメント

ありがとうございました。
こういう経緯なんですね。。
私は、a→3a だと思ってましたが、そうすると
i→1となり筋が悪い、、、で白旗でした。

投稿: gauss | 2014年3月22日 (土) 01時06分

> gauss さん
  
わざわざどうも♪
この程度でも意外と面倒ですよね。
   
僕は1対1とは限らないと分かってれば
解けてたと思うのですが、
半ば負け惜しみかも。。(^^ゞ
 
1対1という言葉を、友人が緩く解釈してる
可能性を考えてみるべきでした。
ま、暗号も含めて、言語は難しいってことで。。

投稿: テンメイ | 2014年3月22日 (土) 22時55分

コメントを書く



(ウェブ上には掲載しません)


コメントは記事投稿者が公開するまで表示されません。



« 最後は短いジョギング、レース準備完了(のつもり♪) | トップページ | 宮本武蔵、真実の歴史と虚構の物語の間で・・ »