<http://www.schneier.com/blog/archives/2004/10/...>

 Data Encryption Standard(DES)は,米規格基準局(NBS:National Bureau of Standards)が70年代なかごろに開発した暗号アルゴリズムである。DESは,公開されて,なおかつ無償で利用できる最初の現代暗号アルゴリズムだった。20年以上もの間,DESは商用暗号化システムの“基盤”を担ってきた。

 20年間以上,DESはメインフレーム・コンピュータのデータベースから,ATMと銀行間の通信,パトカーと警察署間でのデータ転送まで,あらゆるデータを守るために使用されてきた。あなたが誰であろうと,日々の生活で幾度となくDESにデータを守られていたことは間違いない。

 2004年9月,米標準技術研究所(NIST:National Institute of Standards and Technologies,NBSの後継組織)は,DESを政府標準暗号から外すことを提案した。私に言わせれば,この提案は,連邦政府の最も重要な――ASCIIよりも重要な――標準技術が終わりを迎えたことを表している。

 現在,暗号技術はコンピュータ・セキュリティの中で最も基本的なツールの一つであるが,30年前は学問分野の一つでしかなかった。インターネットが物珍しかった当時,暗号技術は数学の一分野とさえ認められていなかった。暗号は常に興味の対象だったが,紙と鉛筆を使ってアルファベットをいじる程度のものだった。政府が第2次大戦当時,秘密の研究所で暗号を研究したことで,暗号技術はコンピュータ時代に入り,数学として扱われるようになった。しかし,暗号技術を教えてくれる教授もいないし,暗号技術を議論する学会もない状態だったので,米国での暗号研究は国家安全保障局(NSA)がすべて指揮していた。

 そしてDESが登場した。

 70年代初頭,当時としてはとても進歩的な発想だったが,NBSは自由に使える標準暗号が必要だと考えていた。NBSはその標準暗号を非軍事用にしたかったので,アルゴリズムを公募することにした。このNBSの求めに唯一まじめに応えたのが,米IBMの研究所が開発したDESである。1976年,DESは「扱いに注意を要するが機密ではない」通信用として,米国政府の標準暗号アルゴリズムに指定された。「扱いに注意を要するが機密ではない」通信の例には,人事,財務,物流情報などが挙げられる。さらに,ほかには使える暗号がないという理由だけで,さまざまな企業が――暗号アルゴリズムが必要なときには――必ずDESを使うようになった。もちろん,誰もがDESを安全だと信じていたわけではない。

 IBMが標準技術としてDESを提出した当時,DESを解析できる知識を持った人はNSAの外部にいなかった。NSAはDESに2つの変更を加えた。アルゴリズムを少し変更し,暗号鍵の長さを半分以下に短くしたのだ。

 暗号アルゴリズムの強さは,「数学的に優れているか」と「鍵の長さ」という2つの条件で決まる。アルゴリズムを確実に破る方法の1つは,可能性のある鍵をすべて試してみることだ。現代暗号のアルゴリズムは,こうした“総当たり攻撃”が不可能なほど長い鍵を使う。地球上のすべてのシリコン原子を使って組み立てたコンピュータで数100万年計算しても,総当たりでは破られないような長い鍵を使っている。そこで暗号研究者は,もっと手っ取り早い方法を探す。仮にアルゴリズムが数学的に弱ければ,正しい鍵をより短い時間で見つける方法があるだろう。つまり,鍵を探すのではなく,アルゴリズムを“破る”のだ。