0

これはSSL証明書/HTTPS仕様の詳細に組み込まれていると確信していますが、私はこの主題を完全に理解しているわけではありません。

最新のブラウザがHTTPSサイトに接続する場合、HTTPリクエストの本文は暗号化されます。SSL証明書は基本的に、クライアントとサーバー間の通信に使用される「公開」キーですか?

ハッカーは、「https://www.google.com」などの公開サイトから公開鍵を取得し、クライアント/サーバートラフィックを監視して、データを復号化できませんでしたか?

また、クライアントは証明書の「発行者」を確認する必要がありますか。たとえば、自己署名証明書クライアントは検証する必要はありませんが、信頼できる発行者から提供された証明書の場合、証明書検証プロセス中に何が起こりますか?

4

1 に答える 1

1

サーバーの証明書には公開鍵が含まれており、実際には誰でも見ることができます。このキーは、サーバーとクライアント間のハンドシェイク中に、以降のメッセージの暗号化に使用される一意のセッションキーを作成するために使用されます。

http://en.wikipedia.org/wiki/Secure_Sockets_Layer#TLS_handshake_in_detail

ハッカーは、「https://www.google.com」などの公開サイトから公開鍵を取得し、クライアント/サーバートラフィックを監視して、データを復号化できませんでしたか?

ハッカーはセッションキーを知りません。彼は(無意味な)暗号化されたものを聞いているでしょう。

また、クライアントは証明書の「発行者」を確認する必要がありますか。たとえば、自己署名証明書クライアントは検証する必要はありませんが、信頼できる発行者から提供された証明書の場合、証明書検証プロセス中に何が起こりますか?

あなたが言ったように、証明書の発行者は、信頼できる機関の事前定義されたリストに対して検証されます。信頼できる発行者、有効期限など、チェーンの上位にあるすべての証明書も検証されます。さらに、各証明書には証明書失効リスト(CRL配布ポイント)を指すURLが含まれているため、クライアントはそのようなURLからリストをダウンロードし、手元の証明書が失効していないことを確認します。

于 2012-12-17T14:42:05.473 に答える