9

暗号化されていないメッセージをhttps経由で送信することは可能ですか?たとえば、証明書の検証と承認を行う必要がありますが、ソケットを介して送信される実際のデータを暗号化しないでください。

4

4 に答える 4

22

はい、TLS と SSL は「暗号化なし」モードをサポートしています。問題の特定のクライアントとサーバーが有効になるように構成されているかどうかは、別の問題です。

可能性は低いですが、サーバーがこれらの暗号スイートのいずれかをデフォルトで有効にする可能性があります。より可能性が高いのは、サーバーがデフォルトで弱い暗号スイート (「輸出」グレードの DES ベースのスイートなど) を有効にすることです。そのため、サーバーの暗号スイートのホワイトリストを慎重に確認し、信頼できて広くサポートされているアルゴリズムを少数だけ残す必要があります。

TLS_RSA_WITH_NULL_SHA 暗号スイートなどを使用して、暗号化せずにトラフィックの信頼性と整合性を保護できます。

この場合の「RSA」は鍵交換アルゴリズムを指し、「SHA」はトラフィックが変更されないように保護するために使用されるメッセージ認証アルゴリズムを指します。「NULL」は暗号化アルゴリズム、またはこの場合は暗号化の欠如です。

トラフィックは暗号化されていませんが、SSL レコードにまとめられていることに注意してください。クライアントとサーバーは SSL 対応である必要があります。

一部のデータが SSL 経由で交換されるステップ ダウン ソリューションを探している場合、SSL はオフになりますが、アプリケーション トラフィックは続行されます。攻撃者によって改ざんされる可能性があります。したがって、たとえば、SSL で認証した後、SSL 経由でネゴシエートされた認証を使用するコマンドを受信するために「クリアな」プロトコルにステップダウンすることは安全ではありません。

于 2009-12-18T19:52:17.327 に答える
6

SSL/TLS 仕様では、これに使用できる「NULL 暗号」が定義されています。ほとんどのクライアントおよびサーバー ソフトウェアは、明らかな理由でこれを無効にします。

ただし、独自のソフトウェアを作成している場合は、ライブラリに交渉するよう説得できる場合があります。

于 2010-02-23T23:51:51.310 に答える
-2

できると思います。

しかし、それはばかげています。認証のポイントを失い、パケットを傍受して変更できる攻撃者にさらされることになります。

于 2009-12-18T20:00:04.957 に答える
-4

いいえ、プロトコルはそれを許可していません。

実行できる解決策の1つは、httpsを介して接続し、接続を確認してから、セッションCookieを使用してHTTPへの後続の接続をドロップすることです。そのCookieがない場合は、httpsにリダイレクトして、クライアントが常にCookieを介して接続するようにします。

ただし、これはあなたには関係がないかもしれません。そのため、解決しようとしている問題についてより多くの情報を提供していただければ、さらに役立つ可能性があります。

于 2009-12-18T19:09:00.037 に答える