第8回
暗号は最後の砦?
1. はじめに
昨年末はストレージが大きな話題になりました。一つは、いわゆる「桜を見る会」に関係したデータ復旧の可否の問題、もう一つは、公的機関で廃棄となったストレージデバイスからの情報漏えいの問題です。後者に関しては、そのデータの重要さにもよりますが、物理的な破壊が安全策となります。しかしながら、一般にはストレージデバイスの再利用も考慮すれば、論理的な再フォーマットだけでなく、データの上書き処理による記録信号の破壊が薦められています。さらに廃棄だけではなく、盗難による漏えいも考慮すれば「暗号化」が有効です。情報漏えいの最後の砦が「暗号」なのです。
2. 必ずしも理解されていない暗号
「暗号」という言葉自体が、あまりにも一般化しているため、必ずしも情報制御技術としての暗号は正確に理解されていません。そのため、暗号として最も重要な安全性の評価に対しても、大きな誤解を生じることが多いようです。
暗号は評価されなければなりません。評価されない暗号は、その安全性を議論、検証できないからです。暗号を評価するためには、暗号化関数の詳細、すなわち暗号の詳細な仕組みを公開する必要があります。この点が、一般の人たちの暗号に対する考えとの大きな相違点になっています。プログラムや設計回路、利用方法を含めて、すべて公開しなければ安全であるか否か評価できないのです。公開しなければ、トラップドアと呼ばれる仕掛けを作られる可能性もあります。これは暗号の設計者だけが暗号を解ける仕組みです。ゲームの「隠しコマンド」に対応します。
数十年前の昔はともかく、現在、暗号は科学技術の一分野であり、コンピュータサイエンスや数学の応用分野として確立しています。一般的な「暗号」の意味から滲み出る「不確かなもの」では決してなく、論理的な学問であり、万民が利用する技術なのです。したがって、暗号の構成や安全性の評価に対して、定性的な評価だけではなく、すべての人が認めるべき定量的な評価が求められます。残念ながら、暗号すべてに対してユニバーサルでかつ普遍的な安全性の定量的必要十分条件は確定していません。しかしながら、暗号研究者や技術者が共有する評価基準に基づいた定量的な評価が必要であり、評価されていない暗号は、その安全性を保証することができず暗号とは言えないのです。暗号にとって評価が重要となるゆえに、国際標準化機構(ISO)や国家による評価機関、あるいはそれらと連携を有する、数々の暗号に関する国際会議や学術研究会において評価が行われているのです。
3. 暗号化の限界と意識
現在の暗号は、一般に暗号の仕組みをすべて公開し、その安全性を鍵と呼ばれる、いわゆるパスワード(純粋なビット列)の秘匿のみに依存しています。したがって、鍵を安全に管理することは、実際の暗号システムにとって最重要の問題なのです。最近、暗号が解けた、という報告が毎年のように聞かれます。しかし、ほとんどの場合、暗号自体が解けたのではなく、暗号を使ったシステム全体としての、鍵の管理や、鍵の生成方法を含めた運用における脆弱性によるものです。以前、RSA暗号が解読されたというニュースが話題になりました。事実は解読されたわけではなく、RSA暗号を利用しているPGPと呼ばれる電子メール暗号化システムにおいて、鍵の生成方法が不完全であったため、鍵が容易に導出できたということでした。無線LAN暗号化方式であるWEPに関しても、WEPに使われているRC4と呼ばれる暗号において、鍵の生成方法(正確にはIVと呼ばれる初期値の取り方)が不完全であったため、WEPは容易に、その104ビット鍵を導出できたのです。決してRC4が容易に解読できるわけではありません。
禅問答のようですが、「解読できない暗号は解読できる!」と言える場合があるのです。評価が高い暗号は、それ自体については解読することは非常に困難なのですが、使い方を誤ると簡単に解けてしまう場合があるのです。現在のところ、十分信頼性の高い128ビット鍵のAES(事実上の米国標準暗号)ですが、AESを使っているからと言って、必ずしもその暗号システムが安全なわけではありません。また、128ビット鍵のAESよりも256ビット鍵のAESが安全というわけでも決してありません。逆に鍵が冗長に生成される可能性もあり、暗号化復号速度が劣化することから、思わぬ脆弱性を招く場合もあるのです。