🐙

SSL/TLS

に公開

概要

SSLとは、インターネット上でデータを暗号化し送受信する仕組みのこと

  • ウェブブラウザとウェブサーバ間での通信を安全に行うことが目的
  • SSL/TLSサーバ証明書をウェブサーバにインストールする必要がある

SSL/TLSの効果

  • SSL/TLSサーバ証明書によって、サーバの身元がはっきりすることで、なりすまし防止になる
  • 暗号化によって
    • 盗聴から守る
    • 改ざんされていないことを証明できる

流れ

  1. クライアントがSSL通信を要求
  2. サーバがSSL/TLSサーバ証明書(公開鍵を含む)をクライアントに送信
  3. クライアントが受け取ったサーバ証明書を検証。サーバが本物だった場合公開鍵を取り出す。

  1. クライアントが共通鍵を2つ用意する

  2. クライアントが手順2で受け取った公開鍵で、共有鍵を暗号化(=暗号化した共有鍵ができる)

  3. クライアントが手順5で暗号化した共有鍵を送信

  4. サーバが手順6で受け取った「暗号化した共有鍵」を秘密鍵で復号

  5. クライアントが手順4で作成した共有鍵で送りたいデータを暗号化(=送りたいデータを暗号化したものができる)

  6. クライアントが手順8で暗号化した送りたいデータを送信

  7. サーバが手順9で受け取った「送りたいデータを暗号化したもの」を手順7で復号した共有鍵で復号

補足

  • SSL(Secure Sockets Layer)
  • TLS(Transport Layer Security)
    • SSLの進化バージョンにあたる
    • SSL3.0の次がTLS1.0

関連

https://zenn.dev/417yr/articles/78ca79400bde3c
https://zenn.dev/417yr/articles/b5c4a472ae0110

参考

https://college.globalsign.com/ssl-pki-info/ssl-encryptions/
https://e-words.jp/w/SSL.html
https://wa3.i-3-i.info/word116.html

Discussion