情報セキュリティにおける単一換字暗号(モノアルファベット暗号)とは?仕組みと脆弱性を解説
換字暗号の基本概念
換字暗号(Substitution Cipher)は、最も古い暗号アルゴリズムの一つです。平文メッセージの各文字を、暗号文では別の文字に置き換えることで暗号化を行います。
この置き換え方式は決定論的かつ可逆であるため、正規の受信者は暗号文の文字を逆置換するだけで、元の平文を復元できます。
単一換字暗号(モノアルファベット暗号)とは
換字暗号の一種である「単一換字暗号(Monoalphabetic Substitution Cipher)」は、「単純換字暗号(Simple Substitution Cipher)」とも呼ばれます。
この暗号は個別の鍵マッピング関数Kに基づいており、特定の文字αを、常に対応する文字K(α)に一貫して置き換えます。
単一換字暗号では、平文の各文字は常に暗号文の同じ文字に対応します。「モノ(Mono)」が「一つ」を意味するように、平文の各文字には、暗号文側の置換文字が一つだけ割り当てられるのです。
シーザー暗号との違いと鍵空間の大きさ
シーザー暗号も単一換字暗号の一種であり、各平文文字に対して同様の置換方式で暗号文文字を生成します。しかし、シーザー暗号は鍵の候補がわずか25通りしかないため、ハッカーにとって鍵の解読は容易です。この弱点を補うために、単一換字暗号が活用されます。
単一換字暗号では、置換文字としてアルファベット26文字のランダムな順列を使用できます。26文字の順列の総数は26!、つまり約4×1026通りに達します。これにより、ハッカーが総当たり攻撃(ブルートフォース攻撃)で鍵を入手することは極めて困難になります。
単一換字暗号の特徴
単一換字暗号は、平文の記号と暗号文の記号の関係が常に一対一であり、その対応関係が暗号化プロセス全体を通じて固定されるという特徴を持つ換字方式です。
脆弱性:頻度分析による統計的攻撃
しかしこの暗号方式は、暗号解読(クリプトアナリシス)に対して大きく脆弱であるとされています。例えば、平文メッセージ中に「T」が何回現れても、常に「J」に暗号化されるとします。
平文が「TREE」であれば、暗号文は「ADOO」のようになります。この例では、平文の2つの「E」が、暗号文ではどちらも「O」に暗号化されていることから、この暗号が単一換字暗号である可能性が示唆されます。
ハッカーは総当たり攻撃を用いる必要すらありません。「あらゆる脅威となる統計的攻撃(All-Fearsome Statistical Attack)」を利用すれば鍵を推定できます。ハッカーが平文の言語的特徴を把握していれば、鍵空間の大きさにかかわらず、統計的攻撃によって容易に暗号を破ることが可能です。
統計的攻撃では、暗号文中の文字の出現頻度分布を測定し、それを英語の文字頻度統計と比較することで、平文の復元を試みます。
-
情報セキュリティにおけるIDEA(国際データ暗号化アルゴリズム)とは?仕組みと特徴を解説
IDEA(International Data Encryption Algorithm)とは?IDEAは「International Data Encryption Algorithm(国際データ暗号化アルゴリズム)」の略称で、ジェームズ・マッセイ(James Massey)と来学嘉(Xuejia Lai)によって考案された共通鍵方式のブロック暗号です。1991年に初めて定義され、128ビットの鍵長を用いて64ビット単位のデータブロックを暗号化します。IDEAの主な特徴鍵長:128ビットブロック長:64ビット構成:8つの同一ラウンド+出力変換使用する演算:XOR(排他的論理和)、加算、乗算の
-
情報セキュリティにおける多表式換字暗号(ポリアルファベット暗号)とは?
多表式換字暗号(ポリアルファベット暗号)とは、複数の換字アルファベットを用いた置換に基づく暗号方式の総称です。多表式換字暗号では、平文の各文字が、文中での位置に応じて異なる文字へと暗号化されます。各文字とその置換先の関係は一対一ではなく、一対多の関係になるのが大きな特徴です。例えば、「a」という文字は、文章の冒頭では「d」に、中盤では「n」に暗号化されることがあります。多表式暗号には、元の言語の文字頻度を隠せるという重要な利点があります。そのため、攻撃者が個々の文字の出現頻度統計を利用して暗号文を解読することが非常に困難になります。最初の多表式暗号:アルベルティ暗号歴史上最初の多表式暗号は、1