• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:楕円曲線暗号のパラメータ)

楕円曲線暗号のパラメータについての質問

このQ&Aのポイント
  • 楕円曲線暗号のパラメータについて質問です。
  • お勧めパラメーターとしてのT=(p, a, b, G, n, h)について解説します。
  • お勧めパラメーターの安全性について疑問があります。

質問者が選んだベストアンサー

  • ベストアンサー
回答No.2

No.1です。 お礼欄にあった記載について、補足いたします。 確かに事前に計算した結果をソートしてデータベース化してあるものが存在するなら、おっしゃるとおりです。 ただし、そのデータベースが未だにできあがっていない(私が#付きでコメントした部分)というのが実情です。なぜなら、攻撃用のデータベースを作成することは、ブルートフォース攻撃と同義だからです。 楕円曲線暗号の場合、例えば現行RSAで必要とされる鍵長(2048ビット)と同程度の安全性を確保するのに224ビットの鍵長が必要と一般的に言われています。これは確かにRSAよりは小さいサイズですが、それでも単純に言って鍵の候補が2^224個あるということです。 公開鍵暗号と共通鍵暗号でちょっと違いますが、例えば現在使われているAESで現行で安全性を確保するのに必要とされる鍵長は128ビットで、すなわち鍵の候補が2^128個となります。もし上記にあるようなデータベースが容易に作れるなら、同じ理屈でブルートフォース的に闇雲に鍵を作ってAESが解けることにもなります(鍵長が短い分、AESの方が早く解けるでしょう)。 この辺のことはさらに「計算量的安全性」を調べてみると分かると思います。

uyama33
質問者

お礼

ありがとうございます。 お勧めパラメータを使って、 自分で、kG を計算してみたら、 とても時間がかかったので、 kの値は小さなものに限られると考えてしまいました。 kが大きくても kG をすばやく計算できるように プログラムを改良します。 また、ご指導ください。

その他の回答 (1)

回答No.1

ご質問の中にある 「公開鍵 Q=kG で、公開鍵がGを何倍したものかがすぐわかるとおもうのです。秘密鍵kが分かってしまう。」 については『楕円曲線 離散対数問題』で調べてみて下さい。 #辞書式にソートするには、その値の対応リストを作らなければなりませんが、それ自体が大変な時間がかかります。

uyama33
質問者

お礼

ありがとうございます。 盗聴するためのデータを大量に確保できる立場の人なら お勧めパラメータが10種類程度しかなかったので、 事前に計算してソートしたデータを用意するだろうと思ったのです。 これなら、離散対数問題を解かなくてもよい。大きなデータベースを作るだけです。 たとえば、犯罪捜査のために事前に辞書式にならべたデータを大型コンピュータで作っておく と効率がよい。 また、パソコンで計算するkの値はそんなに大きくは無いのだろうから、 パソコンで数時間で計算できるようなkの値については 前もって計算しておけばよい。 と思いました。 また、調べてみます。 ありがとうございました。

関連するQ&A

専門家に質問してみよう