SSLの大雑把な仕組み

要は安全に共通鍵を交換する ということかな

  1. SSLアクセス時、サーバーはサーバー証明書をクライアントへ返す
  2. クライアントはサーバー証明書を検証
  3. サーバー証明書を受け入れた場合、共通鍵を作成。
    • この鍵をクライアント、サーバ間で保有し、暗号化通信を実現する
  4. 作成した共通鍵をサーバ証明書に添付された公開鍵で暗号化
  5. 暗号化した共通鍵をサーバへ送信
    • 暗号化を行わずに共通鍵を送信すると、暗号に使用する鍵が盗聴される
    • 公開鍵で暗号化された共通鍵は、秘密鍵保有するサーバでのみ復号可能
  6. 以降、お互いの共通鍵で暗号化、復号しデータのやりとりをする