...

ネット通信の安全性 ~RSA暗号の業績と未来

by user

on
Category: Documents
13

views

Report

Comments

Transcript

ネット通信の安全性 ~RSA暗号の業績と未来
ネット通信の安全性
~RSA暗号の業績と未来~
1.はじめに
長野県伊那北高等学校 理数科
土田大地 金田理紗
2.RSA暗号とは
・公開鍵暗号の一種。公開鍵暗号とはその名の通り、暗号化する鍵(以下、公開鍵)が
全体に公開される暗号である。
・公開鍵と解読する鍵(以下、秘密鍵)が別のもので、秘密鍵は受信者のみが持つ。
したがって、暗号化は誰にでもできるが、解読(以下、復号)は受信者しかできない。
私たちの生活する社会は、「コンピュータ社会」と言われている。そこでは今
や、メールの内容や、ネットショッピングの際に使われる、カードや口座の番号
などの個人情報が飛び交っている。
私たちはそのような個人情報を暗号化する、RSA暗号に目をつけ、主にそ
のしくみと安全性を探ることにした。
3.RSA暗号のしくみ
① 2つの素数 P,Q を設定する
⑤ 元の文(以下、平文)を決め、公開鍵を受け取る
・ここでは、P = 19 Q = 41 とする。
・コンピュータ上では、あらゆる文字が数字に変換される。
・この P,Q が、秘密鍵を作るもととなり、素数でないと簡単に秘密鍵
が計算されてしまう。
・ここでは、平文
M = 21 と変換されたとする。
⑥ 平文 M を暗号化し、暗号文を送信する
② N,φ (N) を計算する
・暗号文
C は、C = ME mod N を満たす。
これは、M の E 乗を N で割った余りが C であることを示す。
したがって C は、217 ÷ 779 = 2312052 あまり 33 より、C = 33
N = P×Q = 19×41 = 779
φ (N) は、(P - 1) と (Q - 1) の最小公倍数
φ (N) = 360
・これを送信する。
③ 鍵E を設定する
⑤
②
③
⑥
④
⑦ 暗号文 C を復号する
・鍵E は、φ (N) より小さく、互いに素である(1以外の公約数がない)
任意の数。
・解読後
となる。
⑦
の文(平文) M は、M = CD mod N を満たす。
したがって M は、33103 ÷ 779 = …… あまり 21 より、M = 21
・これは、『送信者』が⑤で設定した平文の値と等しくなるので、
復号成功!!
・ここでは、E = 7 とする。
・この E と、前記の N が公開鍵
①
図1
④ 鍵D を計算する
・鍵D は、E × D = n × φ (N) + 1 を最小の n で満たす数。
・ 7 × D = n × 360 + 1 は、 n = 2 のとき、D = 103 をとる。
・この D と、前記の N が秘密鍵
となる。
秘密鍵の1つである N は、P,Q の積
N を素因数分解すれば、P,Q が求まってしまう
安全と言えるのだろうか?
4.RSA暗号の安全性
①事実上の安全性
◎理論的には、公開鍵暗号として完全な安全性を持たない
◎現在のコンピュータ性能においては、事実上安全であるといえる
(
・安全な公開鍵暗号方式は、次の要件を満たす必要がある。
1.識別不可能性 2.強秘匿性 3.頑強性
・RSA暗号は、これら3つの要件を必ずしも満たすわけではない。
理論的には完全に安全とは言えない
・RSA暗号特有の安全性の根拠と
して、素因数分解の困難さがある。
・現在の素因数分解世界記録は、
2009年時点で232ケタ(768ビット)
であり、解読に3年かかる。(図2)
・推奨されているRSA暗号の大き
さは、最低1024ビットであるため、
このペースだと、瞬時に解読され
るまでに十分な猶予があると考
えられる。
②ソフトウェアを用いた安全性の検証
図3
検証目的
秘密鍵を知らない第三者が、任意の秘
密鍵で復号を試みた場合、復号されるか
検証する。
検証方法
① ソフトウェア(図3)の操作手順に従い、
平文を暗号化する。
② 図の『復号鍵』の欄に、正規の秘密鍵
とは異なる、任意の数を設定する。
③ 『復号文』の真偽を確かめる。
結果
図3 : フリーソフトウェア RSA Experiments
より
・ 私たちは、『復号鍵』の欄に任意の数を 50 種類設定し、試行してみた。その結果、
すべての数において『復号文』は文字化けを起こしてしまい、復号することはでき
なかった。
・ 今回使用したフリーソフトウェア「RSA Experiments」は、P,Q に 200 以下の
素数までしか設定できない。だが私たちの生活に普及しているRSA暗号は、数百
桁のものであるため、正しい秘密鍵を知らない第三者による復号は、事実上不可
能であるといえる。
5.RSA暗号の未来
新たな技術が生まれたら、解読される危険性がある
①現在の技術的課題
・前述のように、1024ビットのRSA暗号の場合、暗号の内容が意味を持ちうる期間内(例えば、3年前の
暗号を解いたとしても、3年前の内容など意味がない)に解読できるようになるには、まだ時間がかかる。
・また、完全に安全ではないとはいえ、現在RSA暗号を解く効率的なプログラムは存在しない。
②量子コンピュータ
・量子コンピュータは、現在のコンピュータでは実現しえない、超並列処理ができる。理論上、現在のスー
パーコンピュータで数千年かかる計算を、数十秒といった短い時間でこなすことができる。
・ 2011年時点で、実用化には至っていない。しかし、実現すれば、1024ビットのRSA暗号の解読は時間
の問題である。
こまめなセキュリティソフトの更新が、必要不可欠!!
6.感想
RSA暗号のしくみと安全性を探っていく中で、オイラーの
関数や定理、中国の剰余定理などの難解な数学的知識に
触れ、改めて数学の複雑さと深さを感じた。
今回の研究を通して、暗号に関してより興味を持つことが
できたので、量子コンピュータの動向などにも注目していき
たい。
7.参考文献
・東京書籍『数学のリアル Real-Use Math Skills』
桜井進 著
・RSA Experiments
・SPPコンピュータセキュリティ講座講演会資料
富士通研究所セキュアコンピューティング研究部
下山武司
・Wikipedia
RSA暗号/公開鍵暗号
Fly UP