スキップジャック暗号アルゴリズム
スキップジャック(Skipjack)は、
アメリカ国家安全保障局(NSA)が開発した
ブロック暗号の一種で、主にクリッパーチップに用いられることを意図していました。最初は
国家機密として分類されていましたが、1998年に機密解除され、その後一般的な研究の対象となりました。このアルゴリズムの開発背景や特徴を以下に詳述します。
歴史的背景
スキップジャックは、米国政府によるキーエスクロー方式の
暗号アルゴリズムとして提案されました。この方式は、法執行機関が
暗号化されたデータにアクセスすることを可能にするもので、LEAF(Law Enforcement Access Field)機構を通じて実現されます。当初、スキップジャックはその機密性から多くの疑念を集めていましたが、最終的に公開されたことでその設計理論が広く知られることになりました。
1993年には、政府外の研究者がこのアルゴリズムの評価を行い、
暗号技術そのものに問題がないことを確認しました。この調査は、スキップジャックの開発及びその機密指定の歴史への新たな洞察を提供することになりました。
アルゴリズムの詳細
スキップジャックは、80ビットの鍵を使用して64ビットのデータブロックを
暗号化または復号化します。アルゴリズムは32ラウンドから構成されており、これは不均衡なファイステルネットワークという基本構造に基づいています。この設計は主に固定電話機での使用を目的としていました。
技術的特徴
スキップジャックの設計には、40年以上前の数学的テクニックが用いられています。そのため、
組合せ数学や
抽象代数学の専門家の確かな研究に基づいています。具体的な構造に関しては、1987年からの長い評価の歴史があり、スキップジャックの
暗号特性は多くの先行研究によって裏付けられています。
暗号解読の挑戦
スキップジャックは、発表後まもなくしてエリ・ビハムと
アディ・シャミアによって攻撃手法が公にされました。彼らは不能
差分解読法を使い、機密解除からわずか1日で32ラウンド中16ラウンドに対する攻撃を発見し、さらにはそれを31ラウンドまで拡張しました。また、切詰
差分解読法でも28ラウンドまでの攻撃が成功したとされます。ただし、完全な32ラウンドの
暗号に対しては、いまだ実用的な攻撃方法が発見されていません。
現在の状況
2016年には、
アメリカ国立標準技術研究所(NIST)が米国政府でのスキップジャックの使用を認定しない
暗号規格の草案を発表しました。この動きは、現代の
暗号技術の進化に伴い、スキップジャックの位置づけを再評価する機会となりました。
結論
スキップジャックは、その特異な歴史背景と技術的考察から、
暗号学の重要な一部を形成しています。その評価は、公開後も続いており、過去の歴史を振り返るための貴重な資源といえるでしょう。