web-dev-qa-db-ja.com

ブラウザはNONE暗号を使用してHTTPSに接続できますか?

I 出会ったNONE暗号についての言及がHTTPSで可能/利用可能である。

https://アドレススキームを介してWebサイトにアクセスするためのブラウザでサポートされていますか?

https暗号でテスト/ワンタイムNONEサーバーを作成するスニペットは何ですか?)

4
cnst

Https://アドレススキームを介して任意のWebサイトにアクセスするために、任意のブラウザでサポートされていますか?

暗号化が行われていない場合、TLS_NULL_WITH_NULL_NULLまたは同様の暗号を参照していると思います。現在のブラウザのいずれもこの暗号を提供しておらず、セキュリティを確保せずにTLSのオーバーヘッドを取得するだけなので、このような弱い暗号を提供する理由は今後ないと思います。

TLS_NULL_WITH_NULL_NULLについては、具体的には RFC 5246(TLS 1.2) は初期状態であり、決してネゴシエートされるべきではないことを示しています。 TLS_RSA_WITH_NULL_SHAのようにNULL暗号化を使用する他の暗号も存在しますが、それらはまだ認証を提供しますが、それらは暗号化しないため、ブラウザーによってこれらが提供されることはありません。

さまざまなSSLクライアントによって提供される暗号の詳細については、 https://www.ssllabs.com/ssltest/clients.html を参照してください。

4
Steffen Ullrich

これは、TLS(または実際には古いセットアップの場合はSSL)暗号スイートのネゴシエーションのサブセットです。私は セキュリティ、互換性のために推奨されるssl_ciphersへの私の答え-完全転送秘密 でより詳細に説明しますが、その長い点と短い点は次のとおりです。

TLS 1.2ドキュメント セクション7.4.1.2から始まるRFC 5246 により、短い形式で暗号スイートのネゴシエーションを確認します。

  • ClientHello:クライアントは、クライアントがサポートする暗号スイートをサーバーに通知します
  • 今度はサーバーが1つ選択します
    • 次に選択する方法を制御する方法について説明します。
  • ServerHello:サーバーは、選択した暗号スイートをクライアントに通知するか、クライアントに失敗メッセージを提供します。

したがって、クライアントとサーバーの両方が同じNULL暗号スイートを許可する必要があり、両方が許可する場合でも、サーバーが選択する必要があります。これは恐ろしく悪い設定です。最悪の通常の障害 ssllabs.com (最も右側のリスト、特にFを探す)でも、それほど問題にはなりません。

テストのために、独自のサーバーを作成し、希望するNULL暗号スイートを唯一のオプションとして配置します。次に、クライアントモードでopensslを使用するか、そのNULL暗号スイートをサポートするブラウザーを使用してテストします。

1

NONE暗号はopera 12.で利用できます。デフォルトでは無効になっています。TLS_RSA_NULL_SHAとSHA2があるようです。shaのみをテストしました。テストサーバーでは、openssl s_serverを使用しました。また、いくつかの特別な構成(デフォルトではNULL暗号は有効になっていません。接続に成功した場合でも、ブラウザでセキュリティ警告が発生しました。使用されているopensslは古い1.0.1でした。コマンドラインは次のとおりです:openssl s_server -www -cert [cert ] -key [key] -cipher NULL-SHA

1
yyy