web-dev-qa-db-ja.com

CloudFrontプライベートコンテンツURLに署名するために短いRSAキーを意図的に使用しているアイデアはどれほど悪いですか?

CloudFrontの 質問 を熟考しながら、SO効率的に生成する 署名付きプライベートコンテンツURL について、どのような節約が見つかるかを確認することにしましたAWSが生成する2048ビットのキーを使用すると、署名方法はラップトップで約1550µsで実行され、512ビットのキーを使用すると、これが約113µsに短縮されます。

有料ユーザーにメディアファイルへのアクセスを一定の時間許可するためのリンクに署名し、S3上の同じファイルへのアクセスをゲートするために同等のSHA-1 HMAC署名プロセスをすでに使用しています。サーバーが行うリクエストの大部分は、これらの署名付きURLに対するものです。

この目的のための専用のキーに短い長さを使用することは、どの程度許容できますか?許容できる長い/短いと見なされるものは何ですか?

4
abathur

たった今(2015年7月)、RSA鍵破壊の現在のレコードは 768ビットモジュラス のためのものであり、多くのマシンでの2年間の計算、そして重要なことに、いくつかの非常に細かい頭脳でも。注目すべき点は、(RSA-768に使用されていた)最もよく知られているRSAを破る方法は、整数の因数分解 General Number Field Sieve ; GNFSは、あらゆる種類の「事前計算」の恩恵を受けません。これは、768ビットのRSAキーを因数分解した人々が、別の768ビットのRSAキーにぶつかった場合、再度再度仕事に2年費やす必要があることを意味します。

1024ビットのRSAキーについて:

  • それらは現在壊れていません。
  • それらは既存のテクノロジーで壊れる可能性がありますが、問題となる数百万ドルの問題を解決して、優れた専用マシンを構築する必要がありますonly1024ビットRSAの破壊時。
  • ...そして、たとえそのマシンが構築されたとしても、RSA鍵を解読するのに多くの時間(数ヶ月、場合によっては数年)が必要です。

あなたのケースでは、署名が数分間抵抗するだけでよい場合、毎日新しいRSAキーを生成することができ、これが破られる限り、GNFSベースの攻撃者を倒します1024ビットのRSA鍵は1日以上かかります。これは、今後数十年間保持される可能性が高い特性です。 (あなたにとって)良い点は、署名がすぐに陳腐化するため、科学的および技術的な進歩を「ただ」追跡する必要があるということです。一部の人々が1024ビットのRSA鍵の解読に成功した日には、2048に切り替えることができます。ビットキー;事前に行う必要はありません。

4
Tom Leek