ヒル暗号は選択平文攻撃に対してなぜ脆弱?仕組みと解読方法を徹底解説
ヒル暗号とは
ヒル暗号(Hill Cipher)は、レスター・S・ヒル(Lester S. Hill)によって考案された、複数文字を単位とする多表式暗号です。平文を暗号文へ変換する暗号化、そして暗号文を平文へ戻す復号の段階において、行列の概念と線形合同法の考え方を組み合わせた符号化システムとして知られています。
ヒル暗号では、暗号化・復号に行列の掛け算を利用するため、平文中の同一の文字が必ずしも同一の暗号文字に置き換えられません。また、多表式暗号であるヒル暗号は、対象テキストが一定サイズのブロックに分割されて処理されるという点で、ブロック暗号にも分類されます。
一つのブロック内の各文字は、暗号化・復号の手順の中で互いに影響を与え合うため、同じ文字が同じ文字へ対応付けられることはありません。
既知平文攻撃への弱点
ヒル暗号は古典暗号アルゴリズムの一つであり、暗号文ファイルだけを頼りに解読する場合、暗号解読者にとっては非常に困難な対象です。しかし、暗号文ファイルに加えて平文ファイルの一部でも入手できれば、驚くほど簡単に解読できてしまいます。この暗号解読手法は「既知平文攻撃(known-plaintext attack)」と呼ばれています。
ヒル暗号の基礎:行列演算
ヒル暗号の基盤となるのは、行列の乗算と逆行列の計算です。その核心は n×n の行列にあり、n はブロックサイズを表します。
鍵となる行列 K は可逆行列、すなわち逆行列 K-1 を持つ行列でなければなりません。復号に使用される鍵が K-1 行列であるため、鍵には必ず逆行列が存在する必要があります。
ヒル暗号の処理ステップ
- 平文を同じサイズのブロックに分割します。
- ブロックを1つずつ暗号化します。このとき、ブロック内の各文字が他の文字の暗号化に寄与します。
- 鍵は m×m の正方行列で、m はブロックサイズを定義します。これを鍵行列 K と呼びます。
平文ブロックに m 個の文字 P1, P2, …, Pm があるとき、対応する暗号文ブロックの文字 C1, C2, …, Cm は次の式で表されます。
C1 = P1K11 + P2K12 + P3K13 (mod 26)
C2 = P1K21 + P2K22 + P3K23 (mod 26)
C3 = P1K31 + P2K32 + P3K33 (mod 26)
これらの式は、列ベクトルの形で次のようにまとめられます。
(C1, C2, C3)T = K × (P1, P2, P3)T (mod 26)
一般化すると、ヒル暗号の暗号化・復号は以下の式で定義できます。
C = KP (mod 26)
P = K-1C (mod 26)
既知平文攻撃・選択平文攻撃による解読
ヒル暗号は既知平文攻撃によって容易に破られてしまいます。長さ m の平文・暗号文ペアを m 組入手できると仮定します。
Ci = KPi (1 ≤ i ≤ m)
未知の鍵行列 K は、次のように計算できます。
K = Ci Pi-1
鍵が一度求まってしまえば、暗号全体は簡単に解読されてしまいます。さらに「選択平文攻撃」では、攻撃者が任意の平文を選んでその暗号化結果を取得できるため、必要な平文・暗号文ペアを意図的に収集することが可能です。その結果、鍵行列 K の特定はいっそう容易になり、ヒル暗号は実用性の高い現代暗号としては不十分であることが分かります。
-
SMB1はランサムウェア攻撃にどれほど脆弱?危険性と無効化の手順を徹底解説
SMB(Server Message Block)は、コンピュータネットワーク分野でよく知られるプロトコルです。SMBは1980年代に、当時IBMに在籍していたBarry Feigenbaum氏によって設計されました。主な目的は、ネットワーク上のノード間でプリンター、ファイル、シリアルポートへの共有アクセスを提供することです。また、プロセス間通信のためのトランザクションプロトコルを運ぶこともできます。 Server Message Blockは主にWindowsコンピュータで利用されており、サーバー側コンポーネントには「LAN Manager Server」、クライアント側コンポーネントには「
-
攻撃対象領域(アタックサーフェス)とは?サイバー攻撃のリスクを最小限に抑える方法
ハッカーがあなたのネットワークに侵入してデータを盗むために使えるすべての経路や手法の総数を「攻撃対象領域(アタックサーフェス)」と呼びます。この領域は可能な限り小さく保つことが極めて重要です。ハッカーにとって攻略すべき侵入経路が少なければ、彼らは早々に諦めて、より脆弱な標的へと移っていくからです。一般的な攻撃対象領域は「デジタル」と「物理」の2種類に分けられます。 攻撃対象領域とは何か デジタル攻撃対象領域:ソフトウェア、ウェブサイト、サーバーなど、企業や組織のシステムにデジタル的に接続できるあらゆるものに関わる脅威を指します。例えば、フィッシングメールによるインターネット経由の潜在的なリス