連載
鍵が漏れることも想定せよ――クラウド時代における「楕円曲線暗号」の必然性:クラウド時代の暗号化技術論(3)(3/3 ページ)
エンジニアであれば、楕円曲線を暗号に用いる「楕円曲線暗号」という言葉を聞いたことがあるでしょう。今回は楕円曲線暗号の仕組み、そしていまこの手法が注目されている理由を解説します。
楕円曲線でElGamal暗号を使う――「楕円ElGamal暗号」
楕円曲線を使うと、第2回で紹介したElGamal暗号に対応する「楕円ElGamal暗号」を作れます。
- 鍵生成:楕円曲線上の点Pを一つ固定してみんなに公開し、ユーザーAさんは秘密鍵aをランダムに決めて公開鍵KA=aPを作ります
- 暗号化:整数rをランダムに決め、楕円曲線上の点の平文Mに対して公開鍵KAを使って暗号文Enc(M)=(rP,M+rKA)を作ります
- 復号:暗号文(C1,C2)=Enc(M)を受け取ったAさんは秘密鍵aを用いてDec(C1,C2)=C2-aC1で復号します
ここで、
Dec(Enc(M))=Dec(rP,M+rKA)=(M+rKA)-a(rP)=M+r(aP)-arP=M
なので、Mを暗号化して復号するとちゃんと元のMに戻ります。
この公開鍵暗号はさまざまな暗号技術の中核を担います。ビットコインなどで使われている楕円曲線を使った電子書名ECDSAも、この式の応用です。
楕円曲線暗号の鍵長
楕円曲線暗号は、前回紹介したRSA暗号やElGamal暗号と比べて鍵長(鍵の大きさ)がずっと小さくてよいのが特徴です。
RSA暗号 | 1024 | 1219 | 2048 | 2832 | 11393 |
---|---|---|---|---|---|
楕円曲線暗号 | 138 | 152 | 206 | 245 | 497 |
共通鍵暗号 | 72 | 80 | 108 | 128 | 256 |
表1 同じ安全性のRSA暗号、楕円曲線暗号、共通鍵暗号の鍵長の比較(富士通/富士通研究所「楕円曲線暗号とRSA暗号の安全性比較」を参考に作成) |
最近では、RSA暗号は2048ビット以上のものが推奨されています。楕円曲線を使うと同程度の安全性はその10分の1程度で済みます(評価方法によって数値は多少変わります)。今後安全性要求が高くなると、必要なビット長の差はますます大きくなり、楕円曲線暗号の重要度は増すでしょう。
今回のまとめ:
- 浮輪の表面で足し算を考えたものを楕円曲線という。
- 楕円曲線暗号はRSA 暗号に比べて鍵長が小さいという利点がある。
- 前方秘匿性の実現に楕円曲線鍵共有が使われている。
「クラウド時代の暗号化技術論」バックナンバー
- まだまだ広く深い、暗号の世界――匿名認証や電子投票に利用される「ブラインド署名」「グループ署名」「ゼロ知識証明」
- マイナンバーの漏えい対策にも利用される「検索可能暗号」とは――安全性と利便性の両立を目指す注目の暗号技術
- 動画配信サービスにも応用できる暗号とは――アクセス権を制御する「属性ベース暗号」
- メールアドレスを公開鍵にする――「ペアリング」とその応用例
- クラウドサービスに最適な暗号方式とは?――暗号化したまま計算する「準同型暗号」
- 鍵が漏れることも想定せよ――クラウド時代における「楕円曲線暗号」の必然性
- “安全な暗号”とは何か――「強秘匿性」「頑強性」という概念
- 重要なデータを守るため、もう一度暗号化技術をおさらいしよう
光成滋生(みつなり しげお)
サイボウズ・ラボ株式会社
サイボウズ・ラボ株式会社にてセキュリティとインフラ周りの研究開発に携わる。「数論アルゴリズムとその応用」研究部会(JANT)幹事。
- 2004年放送型暗号の実装でIPA未踏スーパークリエータ認定
- 2005年ストリーム暗号Toyocryptの解読で情報化月間推進会議議長表彰
- 2010年ベクトル分解問題についての論文で電子情報通信学会論文賞受賞
- 2015年 Microsoft MVPアワード Developer Securityを受賞
近著に「応用数理ハンドブック」(朝倉書店、2013:楕円曲線暗号、ペアリング暗号の項目担当)、「クラウドを支えるこれからの暗号技術」(秀和システム、2015)がある。
Copyright © ITmedia, Inc. All Rights Reserved.