忍者ブログ
情報処理技術者試験の合格を目指す全受験者のための、1問1問「徹底解説」ブログです。単なる過去問の暗記ではなく、なぜその答えになるのかを本質的に理解できるよう解説します。書籍などでは学べない最新用語やトレンドを踏まえてご紹介します。

【情報セキュリティ】文字を1対1で置き換える!「単一換字暗号」|情報処理問題1000本ノック

暗号の歴史の出発点であり、文字の置き換えルールによって秘密を守る。しかし「言語の癖」によって解読されてしまう古典暗号、単一換字暗号を攻略しましょう。

1. 【 問題 】:古典暗号の仕組みと脆弱性

【 問題 】 暗号技術の一種である「単一換字暗号」に関する記述のうち、適切なものはどれでしょうか?

① 平文の文字の並び順(位置)を一定の規則で並び替えることによって暗号化を行う。
② アルファベットの各文字を、あらかじめ定めた別の1文字に1対1で置き換える方式であり、シーザー暗号もその一種である。
③ 暗号文に含まれる各文字の出現頻度を調べる「頻度分析」を用いても、解読することは不可能である。
④ 1文字ごとに異なる暗号化鍵(文字の対応表)を次々と切り替えて使用するため、現代のPCでも解読に膨大な時間がかかる。

2. 正解:

正解: ② アルファベットの各文字を、あらかじめ定めた別の1文字に1対1で置き換える方式であり、シーザー暗号もその一種である。

3. 解説:「A」はいつでも「X」になる

単一換字暗号(Monoalphabetic Cipher)は、文字そのものを別の文字に「換(か)える」方式です。鍵となるのは「どの文字をどの文字に変換するか」を記した1枚の対応表です。

【単一換字暗号の特徴と弱点】

■ 仕組み:1対1の固定変換
・例えば「A→X」「B→P」「C→M」というルールを決めたら、文章中のすべての「A」は例外なく「X」に変換されます。
・文字を3つ後ろにずらすことで有名な「シーザー暗号(カエサル暗号)」も、単一換字暗号の最もシンプルな一例です。

■ 致命的な弱点:頻度分析(ひんどぶんせき)
・文字を入れ替えただけなので、「元の言語が持つ文字の出現確率の偏り」がそのまま暗号文に残ってしまいます。
・例えば英語の文章では「e」や「t」が最も多く使われます。暗号文の中で一番多く登場する文字を数え上げれば、「これが元々の『e』だな」と推測され、パズルのように芋づる式に解読(頻度分析)されてしまいます。
[ 選択肢のひっかけポイント ]
★ ①:文字の位置を入れ替えるのは「転置(てんち)暗号」の説明です(換字とは対になる概念です)。
★ ③:文字の出現パターンがそのまま残るため、頻度分析に非常に弱いです。
★ ④:1文字ごとに対応表を切り替えるのは「多表(たひょう)換字暗号」の説明です。単一換字は1枚の対応表をずっと使い続けます。

1. 理解のコツ: 子供の頃に遊んだ「秘密の暗号表(あ→★、い→◆…)」と同じです。誰でも作れる手軽さがありますが、長い暗号文を作れば作るほど、文字の使い方の癖(特徴)がバレてしまうため、現代のコンピュータなら一瞬で破られてしまいます。
2. 試験対策の視点: 「文字を1対1で置き換える」「シーザー暗号」「頻度分析で解読できる」というキーワードがセットで出題されます。また、現代の共通鍵暗号(AESなど)の内部でも、この「換字(Sボックス)」と「転置(Pボックス)」という2つの仕組みを何重にも複雑に組み合わせることで、強固な暗号を作り出しています。


4. まとめ

「文字を別の文字へ固定で1対1に置き換える古典暗号」。これが単一換字暗号です。暗号としての歴史的価値だけでなく、現代暗号の基礎となる「データを形骸化させる(換字)」という重要な概念の原点として、試験に登場します。


PR