現在地 HOME > 掲示板 > Ψ空耳の丘Ψ34 > 467.html ★阿修羅♪ |
|
Tweet |
(回答先: 電磁波盗聴も存在する、と三菱電機が言ってます。 投稿者 ぷち熟女 日時 2004 年 3 月 19 日 19:42:34)
う〜む、三菱電機って、暗号の解読までやってるのかー。
こちらの管理人さまなんかにも関心がおありになりそうなリンクが
一番最後にあったりしますよ。
=================================================================================
http://c4t.jp/introduction/cryptography/cryptography08.html
株式会社シーフォーテクノロジー > 暗号について > 暗号入門:暗号の攻撃法、暗号解読とは?
暗号についての基礎知識を解説
第8回 暗号の攻撃法、暗号解読とは?
2003/9/12
CONTENTS
第1回 暗号とは?
http://c4t.jp/introduction/cryptography/cryptography01.html
第2回 共通鍵暗号と公開鍵暗号の概要
http://c4t.jp/introduction/cryptography/cryptography02.html
第3回 共通鍵暗号方式
http://c4t.jp/introduction/cryptography/cryptography03.html
第4回 公開鍵暗号方式
http://c4t.jp/introduction/cryptography/cryptography04.html
第5回 ハイブリッド暗号
http://c4t.jp/introduction/cryptography/cryptography05.html
第6回 認証について
http://c4t.jp/introduction/cryptography/cryptography06.html
第7回 CA,PKI,鍵共有とは?
http://c4t.jp/introduction/cryptography/cryptography07.html
第8回 暗号の攻撃法、暗号解読とは?
(ぷち熟女注:ここに転載しているこのページです)
第9回 暗号技術実装の失敗例
http://c4t.jp/introduction/cryptography/cryptography09.html
第10回 暗号技術に関する今後の動向
http://c4t.jp/introduction/cryptography/cryptography10.html
皆様に多くのお問合せをいただいている暗号技術について、暗号入門と題して数回に分けて解説します。第8回目の今回は、暗号の攻撃法、暗号解読について説明します。
※掲載予定のテーマは予告なく変更する場合があります。
暗号を解読するためには、どのような方法があるのかを考えてみます。
大きく分けて「考えられる限りの組み合わせを全て試してみる方法」と、現代の暗号が数学理論の上に成り立っていることによる「数学的に解を求める方法」、「ハードの特性を使った攻撃」などに分けられます。
「組み合わせを全て試す方法」は、日本では「力技」などと呼ばれますが、海外でも「Brute Force(暴力、乱暴)方式」などと呼ばれます。
また「数学的に解を求める方法」は、「Short Cut方式」、「ハードの特性を使った攻撃」は「サイドチャネル攻撃」と呼ばれます。
いずれにせよ、使用している暗号が万一、攻撃に弱かった場合は、悪意を持った攻撃者に盗聴・改ざん・成りすまし・事後否認などを許してしまう恐れがでてきます。
一般的にはなかなか有り得ない状況を想定しての攻撃方法も有りますが、基本的にはそれら全ての攻撃に対して安全を保証しておく必要があります。
●全数探索攻撃(Brute Force Attack)
最も基本的な方法で、1から全て全数チェックを試みる方法です。
可能性の有る候補を全て試す方法ですので、時間さえかければ必ず正解にたどり着きます。
しかし、現代暗号の鍵空間は膨大なサイズになっており、計算上10140年などと言う宇宙的な時間(例:108年=10億年)でさえ追い付かないような永遠の間、ずっと計算を続けないと解けないと言うことになります。
これを天文学的数値ならぬ「暗号学的数値」などと呼ぶこともあります。
これは逆に、単位時間当たりの処理速度が膨大に増えれば、正解にたどり着くまでの時間が短縮されると言う意味ですから、もし量子コンピュータなどが実用化された時には、現代の暗号は全て役に立たなくなる、などとも言われています。
計算例:単純に150桁の数字を素因数分解する場合、1秒に1つの数字をチェック出来たとすると、10150秒必要になります。もし、0.01秒で1つチェック出来たとしても、10148秒が必要です。1年≒3×107秒なので、約3×10140年必要ということになります。
これが「現実問題として”解けない”」と言われる理由です。
●誕生日攻撃(Birthday Attack)
暗号文一致攻撃とも呼ばれますが、
「ランダムに23人を集めると、誕生日が同じ人間が2人以上居る確率が高い」というBirthday Paradoxという理論に基づいています。
N bitの出力が有る場合、2n/2個程度の出力を集めると、その中に同じデータが存在する可能性が高いという確率性を元にして解析を進めて行く方法です。
余談ですが、日本の内閣府ホームページから、大臣・副大臣・大臣政務官の誕生日を調べてみると、11人中2人、同じ誕生日の方がいます(2003年9月11日現在)。
また、2003年6月末に行われた、サッカーのコンフェデレーションズカップ日本代表23人のうち2人が同じ誕生日でした。
●辞書攻撃(Dictionary Attack)
事前に、入手出来る限りの平文と暗号文のペアを管理しておき、解析対象の文章と一致するものを探す方法です。全数探索と基本的には同じですが、事前に準備しておく分、攻撃対象が決まってからの解析は早くなります。
しかし、膨大な資料を用意し管理しておかねばならないため、あまり実用的ではありません。
●暗号文単独攻撃
盗聴などにより「暗号文のみ」が入手出来る状況で攻撃を行う場合のことで、解読の難易度としては最も高くなります。それぞれの暗号により独自の方法を考えて攻撃を行うこととなります。
例えば、確率を元に解析する方法として、文字の出現率に注目して解析を進めて行く方法などが有ります。
例:一般的な英文章ではスペースが出現する確率は約19%で最も出現率が高く、次がEで約10%であることが判っています。それを元に20%前後の確率で出現する最も出現率の高い記号をスペースに置換え、次に出現率の高い10%前後の記号をEに置換えてみる・・・といった方法です。
●既知平文攻撃
ある平文とそれを暗号化した暗号文がペアで入手出来る場合で、攻撃者は平文を選ぶことが出来ない場合を想定しています。
- 線形解読法 -
共通鍵暗号に対する攻撃方法として有名なもので、1993年、三菱電機の松井充(みつる)氏によって考えられました。
DESなどのブロック暗号に対する攻撃方法としては、下記に記す「差分攻撃法」と共に2大攻撃法と呼ばれています。
暗号化の関数を、より簡単な関数に近似(線形近似)させて置換え、この線形近似させた関数を解読することにより少ない計算量で鍵を見つけようという方法です。
DESは「差分攻撃」に対しては十分な強さがありましたが、この線形攻撃により鍵を特定されています。DESに対して全数探索を行う場合、平均255回の検査で鍵が特定出来ることが判っていますが、この線形解読法を使った場合、243個の平文と暗号文のペアがあれば鍵を特定出来ます。
実際に松井氏は、1994年に12台のワークステーションを利用し50日間でDESを解読しました。
また1998年には郵政省のプロジェクト内で富士通の下山氏や東京理科大の金子氏らが特殊なコンピュータを利用し4日間で解読を成功させています。
●選択平文攻撃
攻撃者にとって都合の良い平文と暗号文のペアが手に入るということを想定した場合の攻撃です。
- 差分解読法 -
或る平文とその暗号文のペアを入手し、その中の一部分を変更した平文と暗号文のペアも入手。
それらの差異(差分)から鍵を特定しようという方法で、1989年にイスラエルのBihamとShamir(シャミア)によって発見されました。
この攻撃方法は対応範囲が広く、多くのDES型暗号に有効で、NTTのFEALと言う暗号を解読したのもこの方法でした。
しかし、肝心のDES自身に対しては効果的に作用しませんでした。
DESの暗号化アルゴリズムは公開されていましたが、「なぜそういう計算をするのか?」ということについては何も説明されていませんでした。
後にIBMから、1976年にDESが発表されるより前の1974年の時点で、すでにこの攻撃法があることに気付いており、その対策を施していたことが公開されました。
●選択暗号文攻撃
攻撃側が都合の良い暗号文を自由に選び、それに対応する平文が入手出来るという場合の攻撃方法です。
例として全てが「1」や「0」となる暗号文を想定し、それを復号するとどうなるのかという方法も取れるため、解読には一番有利と考えれます。
サイドチャネル攻撃は、従来より攻撃方法の1つとして考えられていましたが、それを行う機器や環境などがまだ完成されておらず、机上の空論にも似た存在でした。
しかし近年の技術進歩により、非常に精密な測定などが実際に行えるようになり、今後は現実味を帯びた攻撃方法として新たな脅威となることが予想されます。
単純に、暗号化や復号化のための計算機器を破壊してしまう、或いは停止させてしまうという意味でなら、強烈な電磁波などを放出して電子機器を壊すことを目的としたe-Bombと呼ばれる爆弾が、すでに完成されているとも言われています。
盗聴や解読という意味では、計算をしている時には消費電力が増えることに注目した「SPA攻撃(Simple Power Analysis:単純電力解析)」や「DPA攻撃(Differential Power Analysis:電力差分解析)」と呼ばれる方法、計算している時間に注目した「タイミング攻撃」、自動的に鍵が変化して行く暗号に対して、キャッシュメモリ内のデータにhitしたかどうかで計算時間が変化することに注目した「Cache攻撃」、外部から強力な光(レーザー光)などを照射することにより意図的にエラーを発生させ、それを元に解読の手がかりを得る「DFA攻撃(Differential Fault Analysis)」など、多数の攻撃方法が考えられています。
上記の通り、これらは非常に精密な計測を要するため、今までは実際に実施することが困難でした。しかし、計測技術やレーザー照射技術の向上により、現実的な可能性が出て来ました。
すでに実験室レベルでは、ICカードに記録されたDESの鍵を特定出来た(電力解析)とか、220.52回の計算でAESの鍵を93%の確率で特定出来る(Cache攻撃)などの発表も現れはじめています。
これらの攻撃からの防衛を考えに入れて、機器からの漏洩電磁波の抑制や、機器への侵入電磁波に対する耐性などの研究も始められています。
日本ではこれら漏洩電磁波や侵入電磁波などに対して、「新情報セキュリティ技術研究会(Information Security Technology Study Groupe:略称IST,http://www.j-netcom.co.jp/ist/)」にて現在研究・討論が行われており、「電磁波セキュリティガイドライン」の策定が進められています。当社もこのISTに参画しており、セキュリティに関して幅広い活動を行っております。
上記にも「DESが解読された」とか「FEALが解読された」とかいう内容が有りますが、暗号が解読されるという意味を定義します。
暗号である以上は復号化して元に戻ることが前提であり、全数探索を行った場合、必ずいつかは解かれます。
実際にはそれが現実的な時間では無いというだけで、解かれることに違いはありません。
このように全数探索で鍵または平文を特定した場合も、もちろん解読したと表現されますが、全数探索より少しでも早く鍵が求められる「方法が発見された」場合に解読されたと言われます。
仮に全数検索で20万年かかると計算されているものを、19万年で解ける方法を発見した場合でも、暗号学的には「解読した」ということになります。
ですから、暗号学的に「解読できた」としても、それがイコール「危険」「使い物にならない」という意味にはならないことに留意が必要です。
もし、暗号学的に「解読された」場合でも、それが即「危険」或いは「使い物にならない」という意味とイコールにはならない場合があるのは上記の通りです。しかし、「解読された」ということは、危険性を内在させていることには違い無いので、その点を留意の上、その後の動向も含めて検討する必要があると思われます。
■参考文献
「基礎暗号学I」加藤正隆著(サイエンス社)
「現代暗号」岡本龍明・山本博資著(産業図書)
「暗号理論」伊藤正史著(ナツメ社)
「第9回 暗号技術実装の失敗例」へ
http://c4t.jp/introduction/cryptography/cryptography09.html
暗号について
http://c4t.jp/introduction/index.html
情報セキュリティは何故必要なのか?
http://c4t.jp/introduction/about00.html
共通鍵暗号方式について
http://c4t.jp/introduction/about01.html
公開鍵暗号方式について
http://c4t.jp/introduction/about02.html
C4暗号技術の特徴
http://c4t.jp/introduction/c4_feature/index.html
2002年7月10日@IT掲載記事:
情報セキュリティの基盤技術としての暗号
http://www.atmarkit.co.jp/fsecurity/rensai/info01/info01a.html
2002年10月4日@IT掲載記事:
Web構築・運営における脆弱性とその解決法
http://www.atmarkit.co.jp/fsecurity/rensai/info03/info01a.html