ほとんどのWiki記事では、クライアントブラウザが公開鍵(証明書)を使用して機密データ(ユーザー名/パスワードなど)を暗号化し、この暗号化されたデータをサーバーに送信する方法について説明しています。サーバーは秘密鍵を使用して復号化します。私はこの部分を手に入れます。しかし、サーバーがデータを暗号化してブラウザに送り返す方法を示す明確な情報はありません。
例として私のオンラインバンキングを使用してください:
(0)オンラインバンキングから信頼できる証明書(公開鍵)をすでに受け入れています。
(1)SSL URLを介して、私のブラウザはhttps://myonlinebanking.comにアクセスします
(2)ユーザー名/パスワードを入力してログインしました。これらのデータは暗号化されているため、中間者は無意味なデータしか見ることができません。
(3)銀行のWebサーバーが暗号化されたデータを受信し、その秘密鍵を使用してデータを復号化し、アカウントを正常に認証しました。
ここに私の質問があります:
銀行はどのように私のデータを送り返しますか?銀行はどのキーで応答データを暗号化しますか?銀行が「公開鍵」で暗号化されている場合、中間者は私が見ることができるのと同じようにそれを見ることができます。したがって、中間者は私のユーザー名/パスワードを知りませんが、それでも私のアカウントの残高を確認できますか?
ご協力ありがとうございました。