【情報セキュリティ】暗号アルゴリズムを数式で近似して破る!「線形解読法」|情報処理問題1000本ノック
基本情報技術者試験、応用情報技術者試験、情報処理安全確保支援士(登録セキスペ)の「情報セキュリティ・暗号技術」分野で頻出の重要キーワード。ブロック暗号に対する代表的な解読攻撃「線形解読法」の仕組みと、他の攻撃手法との違いを整理して攻略しましょう。
1. 【 問題 】:テクノロジ系(情報セキュリティ・暗号解読)
【 問題 】 共通鍵暗号(ブロック暗号)に対する解読攻撃手法に関する記述です。複雑な暗号化関数や処理を一次式(線形関数)で近似した確率的モデル(近似式)を作成し、大量の平文と暗号文のペアを統計的に分析することによって暗号鍵の特定・解読を試みる攻撃手法はどれか。
(ア)差分解読法
(イ)総当たり法(ブルートフォース攻撃)
(ウ)高階差分解読法
(エ)線形解読法
2. 正解:
正解:(エ)線形解読法
3. 解説:「『複雑な計算を扱いやすい一次式で近似』して秘密鍵を炙り出す!」
線形解読法(Linear Cryptanalysis)は、松井充氏によって提案されたブロック暗号に対する著名な攻撃手法です。
暗号の内部処理を「平文のビット ⊕ 暗号文のビット = 鍵のビット」のような**線形一次式(近似式)**として表現し、入力と出力の関係性がどの程度の確率で成立するか(偏り)を調べることで、鍵のビット情報を解析します。
| 解読手法 | 概要とアプローチ | 特徴・キーワード |
|---|---|---|
| (エ)線形解読法 | 暗号化関数を一次式(線形関数)で近似した確率式を作り、平文と暗号文のペアから鍵を推定する。 | 近似式 統計的分析 |
| (ア)差分解読法 | 2つの平文の「差分(入力変化)」と「暗号文の差分(出力変化)」の伝播確率を追跡して鍵を分析する。 | 入力の差分と出力の差分 確率分布 |
| (ウ)高階差分解読法 | 差分解読法をさらに発展させ、高階の差分(高次多項式)を用いて特定の暗号関数構造を破る手法。 | 差分解読法の発展型 |
| (イ)総当たり法 (ブルートフォース) |
考えられるすべての鍵パターン(全選択肢)を試して正解の鍵を力任せに探す。 | すべての組み合わせ 全片っ端テスト |
1. 理解のコツ:
・複雑に絡み合った曲線グラフ(非線形な暗号処理)を、直線(一次式・近似式)にあてはめて見当をつけるイメージです。
2. 試験対策の視点:
・問題文に「近似式」「一次式」「線形関数」「統計的」と来たら、迷わず線形解読法を選択しましょう!
・対となる「入力の差分と出力の差分の関係」というフレーズがあれば差分解読法になります。両者は現代の暗号アルゴリズム(AESなど)の安全性を評価する際の2大基準となっています。
4. まとめ
暗号化処理を一次式(線形近似式)で近似し、大量の平文・暗号文ペアから統計的に鍵を特定・推測する解読攻撃。これが線形解読法です。差分解読法や総当たり法との定義の違いをはっきり区別して覚えておきましょう!