ECDSA暗号はサーバーの秘密鍵に依存しないため、「各セッション」に対して異なる鍵を生成するという前方機密性があると聞きました。 「各セッション」はどのように定義されているのですか?この異なるキーアプローチは、同じサーバーを言うために、連続する/異なるSSL接続ごとに発生するのか、それともサーバー側のSSL再ネゴシエーション要求が発生したときに既存のSSL接続内で発生するのか?
各セッションは、各SSLセッションを意味します。クライアントとサーバーの両方がセッションの再利用を実装し、各SSL接続がクリーンな方法で閉じられる場合、SSLセッションは複数のTCP=接続(つまりSSL接続)で再利用できます。
同じ接続内で複数の完全なSSLハンドシェイクを行う場合、SSL接続は複数のSSLセッションで構成される場合もあります。
データの送信を保護するために使用されるキーは、追加のキーを派生させるために使用してはなりません。データの送信を保護するために使用されるキーが他のキーイングマテリアルから派生している場合、そのマテリアルを使用してそれ以上のキーを派生させることはできません。このように、単一のキーの侵害は、その単一のキーによって保護されているデータへのアクセスのみを許可します。
PFSは上記に当てはまりますが、以下の2つの特性を満たします。
「各セッション」はどのように定義されていますか?
Ephemeral Diffie HellmanはPFSに使用されます 。 Ephemeral Diffie Hellman(DHE/ECDHE)を使用すると、単一のSSLセッションが閉じるたびに、各セッションでDHパラメータの再ネゴシエーションが強制されます。したがって、「各セッション」とは、文字通り、セッションが終了するとすぐにキーが破棄されることを意味します。サーバーはセッションIDを保存しないため、毎回新しいキーが強制されます。
この異なるキーアプローチは、同じサーバーを言うために、連続する/異なるSSL接続ごとに発生するのでしょうか、それともサーバー側のSSL再ネゴシエーション要求が発生するときに既存のSSL接続内で発生するのですか?
同じサーバーでも、サーバー側がセッションキーをキャッシュしてはならないサーバー側の再ネゴシエーションでもかまいません。したがって、* DHE暗号スイートには新しいDHパラメータが必要です。これが理論の仕組みです。構成は別の話のようなものです。 一部のサーバーでは、これを確実に行うためにセッションの再開を無効にする必要がある場合があります。
DHE暗号スイートを使用する場合、実装はハンドシェイクごとに新しいXを生成する必要があります(SHOULD)。