GoogleはSSLセッションのセキュリティを改善します

Googleは、HTTPSサーバーでの将来の秘密キーの損失から保護する機能( Perfect Forward SecrecyまたはPFSと呼ばれる機能)を実装した大規模なインターネット企業の中で最初のものです。 このために、OpenSSLへのオープンソースアドオンが開発されました。特に、楕円曲線P-224、P-256、およびP-521で高速キージェネレータが作成されました。 作業の過程で、Googleの専門家はOpenSSLのいくつかのバグも修正しました。



PFSは、シークレットサーバーキーが取得(ハッキング)されても、攻撃者が以前に傍受および記録されたHTTPSトラフィックを解読できないことを意味します。 実際の例:プロバイダーレベルの一部の組織がすべてのHTTPSトラフィックを記録および保存し、必要に応じてサーバーで秘密キーを受信するとします(または、何年か後にコンピューターが単純なブルートフォースでそれを解読するのに十分なパワーを持つ)蓄積されたすべての通信を問題なく読み取ります。



Googleの場合、このオプションは機能しません。 現在、ここではECDHEスキームに従って交換される短期(「一時」)セッションキーが使用されています(略語ECDHEは「 Diffie-Hellman Ephemeral Algorithm Using Elliptic Curves」)。 通信セッションの後、キーは破棄され、サーバーの所有者でさえ、サーバーが以前のキーで暗号化したセッションを解読できなくなります。



標準のHTTPSスキームは、RSA、RC4、およびSHAアルゴリズムを使用した「ハンドシェイク」を想定しています。つまり、クライアント(ブラウザ)はセッションのランダムキーを選択し、サーバーの公開キーを使用して暗号化し、秘密キーで署名し、サーバーに送信します。 このセッションは、サーバーの秘密キーとユーザーの公開キーを使用してのみ復号化できるため、セッションは安全であると見なされます。



スキームにECDHEを追加すると、各セッションのサーバーが新しい公開キーを生成し、その秘密キーで署名します。 したがって、セッションは現時点で安全であるだけでなく、将来のサーバーの秘密鍵の損失からも保護されます。 Googleは公開鍵を生成するために、P-256楕円曲線を使用します。その暗号強度は、3248ビットRSAにほぼ相当します。



現在、PFSはオプション機能と見なされており、HTTPSのオプションとして使用されることはめったにありません。Googleはデフォルトでこれを実装した最初の大手企業です。 完全転送秘密は、すべてのGoogle HTTPSサービス(Gmail、Google +、Googleドキュメント、SSL検索など)に実装されており、ChromeおよびFirefoxブラウザーでサポートされています。 残念ながら、IEブラウザはECDHEとRC4の組み合わせをまだサポートしていません。



Googleとの安全なセッション中にアドレスバーのSSLアイコンをクリックすると、ECDHEキー交換メカニズムが使用されていることを確認できます。



OpenSSLのアドオンはオープンソースであるため、他のWebサービスは同じHTTPSアップグレードを実装できます。



GoogleオンラインセキュリティブログAdam Langley経由



All Articles