1 / 38

量子コンピュータと情報セキュリティ

量子コンピュータと情報セキュリティ. 只木孝太郎 中央大学大学院理工学研究科 「情報セキュリティ技術」資料 2013 年 12 月 10 日. 内容. 量子コンピュータ開発の経緯と現状 量子コンピュータの原理 Shor の素因数分解アルゴリズム 情報セキュリティへの脅威 実現の可能性. 量子コンピュータ研究のこれまで. ・  1973年  C.H. Bennett 可逆計算 ・  1980年代前半  R.P. Feynman   量子力学に基づく高速計算の可能性 ・  1985年  D. Deutsch

lars-franks
Download Presentation

量子コンピュータと情報セキュリティ

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. 量子コンピュータと情報セキュリティ 只木孝太郎 中央大学大学院理工学研究科 「情報セキュリティ技術」資料 2013年12月10日

  2. 内容 • 量子コンピュータ開発の経緯と現状 • 量子コンピュータの原理 • Shorの素因数分解アルゴリズム • 情報セキュリティへの脅威 • 実現の可能性

  3. 量子コンピュータ研究のこれまで ・ 1973年 C.H. Bennett 可逆計算 ・ 1980年代前半 R.P. Feynman   量子力学に基づく高速計算の可能性 ・ 1985年 D. Deutsch   汎用量子コンピュータのモデル化(量子チューリングマシン) ・ 1989年 D. Deutsch & R. Jozsa   量子コンピュータが、従来のコンピュータより指数関数的に速い実例 ・ 1994年 P.W. Shor   素因数分解・離散対数問題を多項式時間で解く、量子アルゴリズム ・ 1996年 L. Grover   データベース検索を加速する量子アルゴリズム

  4. 量子コンピュータの実現 NMR装置を利用した量子コンピュータが最も進んでいる。 NMR(核磁気共鳴)装置: 有機化合物分子の構造解析で広く利用 2001年12月 IBMのI. Chuangら Shorの素因数分解アルゴリズムの実証を目的として15の素因数分解を行う。 有機化合物分子中の、計7個のフッ素原子と炭素原子の原子核スピンを、量子コンピュータとして利用

  5. NMR実験装置の例 写真提供:日本電子株式会社

  6. NMR量子コンピュータ最近の発展 ・ 2008年 Xinhua Peng, Zeyang Liao, Nanyang Xu, Gan Qin, Xianyi Zhou, Dieter Suter, and Jiangfeng Du 液晶NMRを用いて、断熱的量子計算に基づいて、21 (=3×7)の素因数 分解を実現。3キュービットで実現。大規模化不可能。 ・ 2011年 Nanyang Xu, Jing Zhu, Dawei Lu, Xianyi Zhou, Xinhua Peng, and Jiangfeng Du 液晶NMRを用いて、断熱的量子計算に基づいて、143 (=11×13)の素 因数分解を実現。143の特殊性を利用し、4キュービットで実現。

  7. 量子コンピュータの実現(再掲) NMR装置を利用した量子コンピュータが最も進んでいる。 NMR(核磁気共鳴)装置: 有機化合物分子の構造解析で広く利用 2001年12月 IBMのI. Chuangら Shorの素因数分解アルゴリズムの実証を目的として15の素因数分解を行う。 有機化合物分子中の、計7個のフッ素原子と炭素原子の原子核スピンを、量子コンピュータとして利用 以下では、ChuangらのNMR量子コンピュータを念頭において、 量子コンピュータの原理について解説する。

  8. 量子コンピュータの原理

  9. 量子コンピュータの構成要素 量子コンピュータ内部 データは2進数で表現される。 従来のコンピュータと同じ 従来のコンピュータの1ビット 量子コンピュータの1ビット 0, 1 0, 1 物理的な実体: 異なる2つの電位 物理的な実体: 2つの量子状態 1キュービット(qubit、量子ビット) キュービットの例 光子の偏向状態 電子の有無 電子のスピン イオンの振動状態 原子核のスピン (スピン:方位磁針のような属性)

  10. 例: NMR量子コンピュータ キュービット:  磁場中に置かれた原子核スピン (溶媒分子を構成する原子の原子核) Chuangの実験 有機化合物分子の中の7個の原子の原子核スピンを利用 0 1 原子核スピン 重ね合わせの原理 (量子力学の原理の1つ) 磁場 (複素数)× + (複素数)× このような重ね合わせで、任意の方向を向いたスピンが表現できる。 スピンは、重ね合わせの状態をとることもできる。 0と1の重ね合わせ状態が存在する。 1キュービットは無限個の状態が表現できる。

  11. ビット列(2進数)の表現 2桁以上の2進数は、上下いずれかを向いたスピンの列で表現される。 例 1101 4個のスピンで表現される スピンの列についても、重ね合わせの原理が成り立つ。 図2 例 1101、0100、1111 の重ね合わせ状態が存在する。 波動関数の確率解釈 (量子力学の原理の1つ) 1101、0100、1111 の重ね合わせ状態 3つのパターンのうち1つが 確率的に観測される。 スピンの列を測定

  12. 量子コンピュータでの計算の進め方 NMR量子コンピュータの場合 [1] 原子核のスピンの列を適当な初期状態に置く。 [2] 原子核スピンへの、高周波の磁場パルスの照射を繰り返し、量子状態を変化させ、計算を進める。 入力に応じて、磁場パルス列のパターンが変更され、 量子状態に反映される。 入力はどう反映されるか? 量子コンピュータの1クロック 1つの磁場パルスの照射が1クロックに対応 [3] スピンの列を測定し、観測された2進数(0,1のパターン)が出力とされる。

  13. 量子並列性による高速計算 量子コンピュータと従来のコンピュータの違い

  14. 効率的なアルゴリズムとは? 効率的なアルゴリズム(実現可能な計算) ある多項式p(x)が存在して、任意のNに対し、 入力Nでの計算時間≤p(log N) log N: Nの桁数 多項式時間のアルゴリズム

  15. レジスタ1 レジスタ2 i i N mod i 整数Nの素因数分解を求めたい。 従来のコンピュータによる素朴な方法 整数を格納する2つのレジスタ1、2を用意する。 最悪 回 [1] 与えられた整数 i を、レジスタ1に格納する。 [1],[2]を繰り返す必要がある。 計算時間は指数関数的 [2] Nをレジスタ1の値で割った余りを、レジスタ2に書き込む。 多項式時間のアルゴリズムではない。 以上の[1],[2]を、i=2から始めて、iを1ずつ増やながら繰り返し、そのつどレジスタ2を見る。 i がNの因数 レジスタ2の値が0

  16. 整数Nの素因数分解を求めたい。 量子コンピュータによる方法 レジスタ1 レジスタ2 整数を格納する2つのキュービット列を用意し、それらをレジスタ1・レジスタ2として用いる。 キュービット列 キュービット列 レジスタ1の値でNを割った余りが、レジスタ2に書き込まれるように、与える磁場パルス列のパターンをあらかじめ設計しておく。 (例) N=77の素因数分解 2 2 1 磁場パルス列 6 6 5 磁場パルス列 ここまでは、従来のコンピュータと同じ

  17. 量子コンピュータでは、重ね合わせ状態が利用できる。量子コンピュータでは、重ね合わせ状態が利用できる。 割り算に先立って、レジスタ1を、  から   までの全ての整数が格納された重ね合わせ状態に置くことが可能 N=77の場合 従来のコンピュータで 回かかっていたのものが たった1の割り算で済む。 量子並列性 速さの源 素因数分解のためには別の工夫が必要

  18. 量子干渉の必要性 量子コンピュータが従来のコンピュータより(準)指数関数的に速くなる状況 重ね合わせ状態に乗っている(周期などの)グローバルな情報を取り出す場合 量子干渉によって実現される Nの素因数分解は、ある関数 f の周期を求めることに帰着可能 Shorの素因数分解アルゴリズムは、 量子干渉で周期を取り出すことにより、 多項式時間での素因数分解を達成した。

  19. Shorの素因数分解アルゴリズム

  20. Shorの素因数分解アルゴリズムメインルーティン: 従来のコンピュータを利用Shorの素因数分解アルゴリズムメインルーティン: 従来のコンピュータを利用 入力:N (N=p×q、pとqは異なる素数) 確率アルゴリズム 出力:pとq [1]N と互いに素な整数 a (2≦a≦N-1) をランダムに(一様に)選ぶ。 Nの桁数の多項式時間で、Nと互いに素なaが得られる。 (Euclidアルゴリズム) [2] 関数 f(x)=ax mod N の周期 r を求める。 最も計算時間がかかる。 量子コンピュータで rを計算する。 [3]ar/2+1とNの最大公約数、及びar/2-1とNの最大公約数を求めて出力する。 最大公約数は、Nの桁数の多項式時間で求まる。(Euclidアルゴリズム)

  21. Shorのアルゴリズムの動作を例で見みる。Shorのアルゴリズムの動作を例で見みる。 N=15の素因数分解を求めてみよう。 [1]N と互いに素な整数 a (2≦a≦N-1) をランダムに(一様に)選ぶ。 Nと互いに素な整数: 2,4,7,8,11,13,14 ランダムに選んだaが、a=7だったとする。 [2] 関数 f(x)=ax mod N の周期 r を求める。 f(x)の周期:ar≡1 mod Nとなる最小の r (aのorder) (Nとaは互いに素なので、フェルマーの小定理より必ず存在する。) 今の場合、f(x)=7x mod 15 となる。 この関数 f(x)の周期 rを計算するのに量子コンピュータを用いる。

  22. レジスタ1、レジスタ2の重ね合わせ状態の推移レジスタ1、レジスタ2の重ね合わせ状態の推移 f(x)=7x mod 15

  23. 周期 r を求める量子サブルーティン 量子コンピュータ 整数を格納する2つの量子レジスタ、レジスタ1・レジスタ2と作業用の量子レジスタを持つ。 レジスタ1 レジスタ2 作業用レジスタ キュービット列 キュービット列 キュービット列 [1] レジスタ1に、0から15までの全ての数を重ね合わせた状態を準備する。(図4-a) [2] レジスタ1の各値 x に対応する f(x) を量子並列的に計算し、隣のレジスタ2に書き込む。(図4-b) f(x)=7x mod 15 f(x)=ax mod N: Nの桁数の3乗の計算時間が掛かる。 量子サブルーチンで最も計算時間を消費する部分

  24. レジスタ1、レジスタ2の重ね合わせ状態の推移レジスタ1、レジスタ2の重ね合わせ状態の推移

  25. グループA:0, 4, 8, 12 それぞれのグループで、始まりの値が異なっている。 グループB:1, 5, 9, 13 グループC:2, 6, 10, 14 ここで、レジスタ1を観測しても、効率的に周期を求めることはできない。 グループD:3, 7, 11, 15 量子フーリエ変換を施して、周期の始まりを揃える。 量子サブルーティン(続き) 周期性の構造を見やすくするため、順序を入れ替えてみる。(図4-c) レジスタ1の内容 4ずつ増えている。 周期 r = 4

  26. レジスタ1、レジスタ2の重ね合わせ状態の推移レジスタ1、レジスタ2の重ね合わせ状態の推移 グローバルな変換

  27. グループA:0, 4, 8, 12 グループB:0, 4, 8, 12 グループC:0, 4, 8, 12 グループD:0, 4, 8, 12 量子サブルーティン(終わり) [3] レジスタ1に量子フーリエ変換を施す。(図4-d) 計算経路間の量子干渉を引き起こすグローバルな変換 フーリエ変換の量子版 レジスタ1の内容 ここでレジスタ1を観測すると、 十分に高い確率で周期 r が得られる。 揃っている 周期 r = 4 が得られた。 互いに強め合う

  28. Shorの素因数分解アルゴリズム(メインルーティン)Shorの素因数分解アルゴリズム(メインルーティン) [1]N と互いに素な整数 a (2≦a≦N-1) をランダムに(一様に)選ぶ。 a=7 [2] 関数 f(x)=ax mod N の周期 r を求める。 量子サブルーティン 周期 r = 4が得られた。 [3]ar/2+1とNの最大公約数、及びar/2-1とNの最大公約数を求めて     出力する。 ar/2+1 = 72+1 = 50 ar/2-1 = 72-1 = 48 gcd(ar/2+1, N) = gcd(50,15) =5 gcd(ar/2-1, N) = gcd(48,15) =3 Euclidアルゴリズム 出力: 5と3 15 = 5×3 が得られた。

  29. Shorのアルゴリズムの計算時間 [1]N と互いに素な整数a (2≦a≦N-1)をランダムに(一様に)選ぶ。 (Nの桁数)2ステップ(Euclidアルゴリズム) [2]関数f(x)=ax mod Nの周期r を求める。 (Nの桁数)3ステップ C/log(Nの桁数) 以上の確率で正しい r が得られる。 [3]ar/2+1とNの最大公約数、及びar/2-1とNの最大公約数を求めて出力する。 (Nの桁数)2ステップ(Euclidアルゴリズム) 正しい周期 r が与えられたとき、1/2以上の確率で1とN以外の因数が得られる。 全体として、C/(2 log(Nの桁数))以上の確率で、自明でない因数pとqが得られる。 [1],[2],[3]をlog(Nの桁数) 回程度繰り返せば、ほぼ確率1でNの素因数分解が得られる。 全体として、Nの桁数の多項式時間( (Nの桁数)3log(Nの桁数) ステップ)で Nの素因数分解がが得られる。

  30. 情報セキュリティへの脅威

  31. 最適化された Shorのアルゴリズム 25 l3+O(l2) ステップ RSA暗号の解読 (1) 従来のコンピュータ技術による解読(Shamir & Tromer, 2003) TWIRL: 素因数分解を行う仮想的な並列コンピュータ (当時標準的な0.13μm・1GHzのシリコンVLSI技術に基づく。直径30cmのLSI) 1万ドルのコストで 数体ふるい法 ステップ RSAモジュール(鍵)の素因数分解 ここで、l = 合成数の桁数 (2) 量子コンピュータによる解読 (R. Hughesによる解析, 2003) 1GHz の量子コンピュータでは 表1

  32. 古典計算機でのRSA暗号の解読 1024bitの素因数分解にかかる時間とコストの比較 (1) TWIRL(Shamir and Tromer, 2003) 直径30cmのLSI 1000万ドルのコストで1年 (2) SHARK(Franke et al., 2005) 2億ドルのコストで1年 (3) YASD1024(Hirota et al., 2006; Geiselmann & Steinwandt, 2004) のLSI 1000万ドルのコストで16年以上

  33. 有限体上の離散対数問題を解く p を素数、g をmod p の原始根とすると、 A {1,2,…,p-1} に対し、A≡ga mod p となる a {0,1,2,…,p-2} が存在する。 aをAの離散対数と言う。 Aが与えられたとき、aを求めるのが有限体上の離散対数問題 量子コンピュータは、有限体上の離散対数問題も、多項式時間で解く。 (素因数分解アルゴリズムの量子サブルーチンの変形。これもShorによる。) 有限体上の離散対数問題の困難さに基づく暗号 解読 ElGamal暗号 Diffie-Hellman鍵共有

  34. 楕円暗号の解読 楕円暗号: 楕円曲線上の離散対数問題の困難さに基づいている。 Shorによる有限体上の離散対数問題を解く量子アルゴリズムが適用可能。 Proos & Zalkaによる楕円暗号解読の量子アルゴリズムとその解析(2003) 楕円曲線が基づく有限体GF(p)の元の数 p が 素数の場合 鍵長の多項式時間で解読 GF(2^m)の場合を最適化( Kaye & Zalka, 2004 )

  35. [1] 素因数分解の困難さ [2] 有限体上の離散対数問題の困難さ [3] 楕円曲線上の離散対数問題の困難さ 認証技術の安全性 認証技術 ディジタル署名、ゼロ知識対話証明など 主要なものは、以下のものの1つに、その安全性の根拠を置いている。 量子コンピュータは効率よく解く 安全性の保証がなくなる。 量子コンピュータが実現

  36. 量子コンピュータ実現の可能性

  37. 10キュービットの壁 NMR量子コンピュータの限界 デコヒーレンス: 外界との相互作用により重ね合わせ状態が壊れてしまう現象 NMR量子コンピュータ成功の理由 原子核スピンと外界との相互作用は弱い 分子中の7個の原子の原子核スピンを利用 7キュービット 溶媒中の有機化合物分子の1つ1つが量子コンピュータ 平均的なNMR信号を通じて、計算結果が読み出される。 初期化の問題 キュービット数が増えると、実効的な初期化が難しくなる。 計算結果の信号が弱まる。 10キュービットが限界 1997年より現在まで、そう言われている。 キュービット数の増加は、分子の巨大化を意味する。 デコヒーレンスを招く。

  38. 量子コンピュータの実現 ・イオントラップ: レーザー光による制御、多数イオンの制御が困難 ・光子(偏向状態): 相互作用が弱い→演算の実現が困難。 2007年、15の素因数分解を実現。 ・ジョゼフソン位相キュービット: 超伝導の固体素子。2012年、固体素子 として初めて(15の)素因数分解を実現。大規模化可能。 量子コンピュータが情報セキュリティの脅威となるには、最低でも1000キュービットの実装が必要 それを容易に実現する提案は存在しない。 いくつものブレークスルーが必要 ・新分野の開拓 ・関連技術の進歩 (ナノテクノロジー) 量子コンピュータの研究開発

More Related