11

一方向 SSL が使用されている場合 (サーバー証明書認証)、クライアントから送信されたデータは、サーバー証明書の公開鍵を使用して暗号化されます。そのため、クライアントから送信されたデータのプライバシー保護が可能です。私の質問は

  1. これは、サーバーからクライアントに送信される一方向 SSL データが暗号化されず、プレーン テキストとして送信されることを意味しますか?

  2. サーバーからクライアントへの通信とクライアントからサーバーへの通信の両方で、データ/メッセージは署名されていないため、改ざん防止やデータの完全性は保証されません。メッセージ セキュリティ オプションではなく SSL ベースのトランスポート セキュリティを使用しているときに、データの整合性を実現する他の手段はありますか?

4

2 に答える 2

20

一方向SSLは、サーバーがクライアントのIDを検証しないことを意味します。SSLの他のセキュリティプロパティには影響しません。

SSLプロトコルは少し複雑ですが、基本的な要点は次のとおりです。クライアントはランダムキーを生成し、サーバーのみが復号化できるように暗号化して、サーバーに送信します。サーバーとクライアントには、双方向の通信を暗号化および検証するために使用できる共有シークレットがあります。

サーバーはクライアントのIDを認識していませんが、それ以外の場合、暗号化とメッセージ検証は双方向です。

アップデート:

1)はい、双方向の暗号化は対称的であり、セッションのセットアップ中に生成された共有シークレットを使用します。

2)共有シークレットを使用すると、メッセージの整合性を保証するのは簡単です。メッセージが特定の形式であることを確認するだけです。たとえば、送信するすべてのメッセージにシーケンス番号のプレフィックスを付け、暗号化の前にチェックサムを追加することができます。共有シークレットを使用して復号化し、シーケンス番号とチェックサムを検証します。攻撃者は、共有シークレットを知らなくてもメッセージを置換または変更し、シーケンス番号とチェックサムをそのまま維持するにはどうすればよいでしょうか。

于 2011-11-22T16:59:45.553 に答える
0

SSL では、次の 2 つのことが起こります。

まず、 Diffie-Hellman メソッドなどを使用してセッション キーがネゴシエートされます。これにより、共有セッション キーが生成されますが、パーティ間でキーが送信されることはありません。

次に、そのセッション キーは、接続中に通常の対称暗号化で使用されます。

X509 証明書を使用して接続の少なくとも一方の端を識別するため、SSL はパブリック/プライベートを 1 つの方法で使用します。これらの証明書は、非対称鍵ペアを使用して署名されています。

SSL はどのようにして 1 つのキー ペアのみで双方向通信を保護できますか?からの抜粋

于 2015-01-06T07:23:47.897 に答える