web-dev-qa-db-ja.com

この素数は、AES-256のDiffie-Hellmanにとって十分な大きさ/大きすぎますか?

AES-256を使用してデータを暗号化するために、Diffie-Hellman鍵交換を使用しています。私が使用している素数は RFC 3526 (ページ6)で指定された8192ビットグループからのものです。

ページ7は、620ビットの指数で、310ビットの同等のキー強度であるため、AES-256に十分な大きさであることを示唆しています。また、540ビットの指数を持つ6144ビットの素数で十分(270ビット)であることも示唆しています。

今、これらの両方はかなり遅いです。大きい方の場合、私のシナリオでは交換に約2秒かかります。

したがって私の質問:

私はばかげていますか?より小さい素数を使用する必要があります。2048ビットの素数と320ビットの指数を持つAES-128を使用することもできますか?何かを完全に誤解したのでしょうか?

コンテキスト:速度はそれほど重要ではありません。私はこの暗号化を今後10年間(せいぜい)非常に強力にする必要があります。それが2秒かかるなら、そうです。

8
Stefano Palazzo

AES-256と8192ビットのDH係数はどちらも過剰です。それらを互いに比較することは、どちらも「今それを壊すことはできず、30年以内にそれを行うこともできない」という領域にかなり遠いので、無意味に迫る繊細な演習です。対称アルゴリズムと非対称アルゴリズムの相対強度を推定するさまざまな方法の情報と計算機については、 このサイト を参照してください。

適切なセキュリティのために推奨できる実用的なパラメーターnowは、AES-128と2048ビットのDH素数係数(256ビットの指数付き)です。

10
Thomas Pornin

はい。あなたはAES-256と8192ビットDHを選ぶのはばかげています。

考慮したいことがいくつかあります。

  1. 企業データを保護していますか?はいの場合、実際にはAES-128および2048ビットDHで満足できます。理由は簡単です。 AES-256には輸出管理ポリシーがあり、アプリをパッケージ化する場合は、特別なjar(Javaを使用している場合)などを使用する必要があります。ただし、AES-256を使用できます。問題ありません。また、2048ビットDHを超えるものを使用している場合は、速度が遅くなります。また、データが復号化されるシステムにも注意する必要があります。あまり時間はかかりません。多くのFortune-1000企業がまだ3DESを使用しており、はるかに優れたアルゴリズムであるAESを使用しています。 AES-128と2048 DHで安全です

  2. 小さな閉じたグループ専用のデータを保護していますか?次に、AES-128および2048ビットDHが必要です。あなたが見ている時間枠はわずか10年なので、それ以上のものは必要ありません。

本当により多くのセキュリティが必要で、将来的にそれを証明したい場合、DHは間違った方法です。楕円鍵暗号化がこれに最適です。この方向のリソースは多くありません。しかし、それは間違いなく価値があります。

結論-暗号化では、サイズがすべてではありません。アルゴリズムと実装の正しい選択は、実際に重要なことです。 AES-128および2048ビットDHを使用してください。安全。

更新:

@stefano-こんにちは。ジャーナリストで政府のスパイ活動を行ったとのことなので、考慮しなければならないことがいくつかあります。政府は自分たちの実際の能力を決して教えてくれません。したがって、AES-256を解読するためのインフラストラクチャがすでにある可能性があります。 NSAは、彼らの頭上にあるものを承認しません。また、AESは、利用可能な最高レベルのセキュリティではありません。それは、NSAメモリが正しい場合はアルゴリズムスタックですが、オプションは限られているため、AES-256を使用してセキュリティを向上させることができます。

長期的に優れたセキュリティを提供するには、Elliptic Key Cryptographyを検討する必要があります。これは、合理的な方法で将来のことを証明できる、公に利用可能な唯一のシステムです。 DHは、2つ以上のパーティ間でデータを転送する場合に使用できます。非対称鍵暗号の基本と、DHが必要な理由を知っていると思います。システムにデータを保存していて、転送していない場合は、DH、RSA、楕円鍵暗号化は必要ありません。

また、ソルトとSHA-512を介してAESで選択されたキーに直接影響する非常に強力なパスワードを使用できます。これにより、暗号化されたテキストを時々変更して、弱いキーが現れるようにすることができます。一部のジャーナルは、暗号化されたデータに影響を与えません。 256ビットの指数で十分です。しかし、現在のシナリオでは、少し高い指数がより良い仕事をすることができます。

3
Andrew Anderson

はい。あなたのアプローチははるかに上です。 AES-128および2048ビットのDiffie-Hellmanグループ(256ビットの指数を持つ)で十分です。これらのパラメーターを使用しても、暗号演算がシステムで最も弱いリンクである可能性は非常に低いです。システムは、暗号を正面から破るよりも、暗号をバイパスすることによって破られる可能性がはるかに高くなります。

3
D.W.