web-dev-qa-db-ja.com

ECDHE-RSAとは何ですか?

ECDHE-RSAとDHE-RSAの違いは何ですか?

DHE-RSAが(一文で)RSAキーを使用して署名されたDiffie Hellmanであることを知っています。 DHは前方秘密性に使用され、RSAはMITMに対して保護されますが、ECDHE-RSAの楕円曲線はどこで正確に使用されますか? ECDHE-RSAがDHE-RSAより優れている点は何ですか?

90
Hubert Kario

ECDHEスイートは楕円曲線diffie-hellman鍵交換を使用し、DHEスイートは通常のdiffie-hellmanを使用します。この交換は、どちらの場合も同じようにRSAで署名されます。

ECDHEの主な利点は、DHEよりも大幅に高速であることです。 このブログ記事 は、SSLのコンテキストでのECDHEとDHEのパフォーマンスについて少し話しています。

83
CodesInChaos

@CodesInChaosの発言に関する情報を少し追加するには:

DHEの代わりにECDHEを使用すると、次の利点が得られます。

  • パフォーマンスが向上します。ECDHEは、特定のセキュリティレベルでより高速です。 @CodesInChaosは、数値を与える記事を指しています。参照 この答え理由楕円曲線がより優れたパフォーマンスを提供する理由.
  • より小さなメッセージ。ECDH公開鍵は、224ビットの曲線で56バイトを超えてエンコードされますが、同様の強度の従来のDH公開鍵は、 2048ビットのモジュラスを使用し、256バイトを使用します。 SSLハンドシェイクにはこのようなメッセージが2つあるため、ECDHEは約400バイトを節約します。それほど多くはありませんが、状況によっては違いが生じる可能性があります。
  • 生物多様性。ECDHは、古典的なDHに使用されるものとは異なる数学的問題の硬度に依存します。ある程度まで、古典的なDHはECDHの非常に特殊なサブケースと見なすことができます(素数を法とする計算は異常曲線の曲線点加算に同型です)。したがって、ECDHがどのようであるかについての議論を手がけることができます本質的に少なくともDHと同じくらい強い(ECDHが壊れている場合、DHも壊れている)。実際には、 離散対数 を解くための指数以下(つまりより高速)のアルゴリズムがあります。これが、単純なDHに対して224ビットのモジュラスではなく2048ビットのモジュラスを使用する必要がある理由です。一方、そのような「より高速な」アルゴリズムは、楕円曲線の変形を壊すことが知られていません。
  • ファッション性。楕円曲線はcoolです。これは重要な利点ですが、慣習的には、より真剣で退屈な用語で表現されます(「コンプライアンス」、「承認されたアルゴリズム」...)。
  • クレンジング。ECDHEの使用を強制すると、ECDHEの方法がわからない古い実装が自動的に拒否されます。 WebサーバーにECDHEを使用する場合、IE 6.0または7.0!について心配する必要はありません!ECDHEの暗号化引数は、長い間化石化していたはずのそのような恐竜を殺すための良い言い訳です前。
55
Thomas Pornin

2つの質問が表示されます

「ECDHE-RSAの楕円曲線はどこで正確に使用されますか?」

これは「ECDHE_RSAのRSAの場合、楕円曲線はどのように使用されるのですか?」ええと、 RFC 4492、セクション2、ECDHE_RSA を確認してください。基本的に、サーバー証明書はRSA証明書(つまり、長期間のRSAキーを使用)ですが、TLSハンドシェイク中に、一時的/一時的/Ephemeral[〜#〜] e [〜#〜]はDHE)DH付きEC公開鍵。したがって、長期的な信頼性はサーバー証明書のRSA署名を介して確認されますが、一時的な鍵は一時的なEC鍵を介して導出されます(次に対称鍵を生成します)

ECDHE-RSAがDHE-RSAより優れている点は何ですか?

これはすでに他の回答で対処されています。

6
DeepSpace101

ECDHE-RSAとDHE-RSAの違いは何ですか?

まずは類似点から始めましょう。

  • どちらの暗号スイートも、Diffie-Hellmanプロセスに一時キーを使用します。 (これは名前の「E」です)。これは、前方秘密を提供します。
  • どちらの暗号スイートもRSAを使用してサーバーの暗号鍵に署名し、中間者攻撃(名前のRSA)から交換を保護します。

今違いのために。

  • ECDHE-RSAは楕円曲線グループでDiffie-Hellmanを使用し、DHE-RSAはモジュロプライムグループでDiffie-Hellmanを使用します。

ECDHE-RSAがDHE-RSAより優れている点は何ですか?

従来のDHでは機能するがECDHでは機能しない、よく知られた攻撃があります。

その結果、想定されるセキュリティと同じレベルを取得するには、DHはECDHよりもはるかに大きなグループを必要とします。つまり、計算が遅くなり、ネットワークトラフィックが増加します。

厄介な実用性の世界に入ると、一部のクライアントは従来のDHEのみをサポートし、他のクライアントはECDHEのみをサポートします。さらに、Java 7は、1024ビットより大きい素数でDHEを使用すると、ハンドシェイクに失敗します**。

そのため、幅広いクライアント互換性、強力な暗号化、および可能な限り多くのクライアントとの転送秘密が必要な場合は、優先オプションとしてECDHEを使用し、2番目の選択肢としてDHE(適切に大きな素数を使用)を使用する必要があります。

*これは、現在知られている最も優れた攻撃を想定して、それを解読するために必要な計算量です。
**誰もそれをクラックすることを公に認めたことはありませんが、リソースの豊富な攻撃者がそれを行うことができると疑われています。

2
Peter Green