はじめに
Webサイトを見ていると「SSL化」「SSL証明書」「TLS」といった言葉を目にすることがあります。
特にWebサイトを運営していると、
「SSL/TLSって何?」
「SSLとTLSは何が違うの?」
「HTTPSとはどういう関係?」
と疑問に思うこともあるのではないでしょうか。
SSL/TLSは、インターネット上で安全に情報をやり取りするために欠かせない技術です。
普段何気なく利用しているHTTPSのWebサイトでも、SSL/TLSによって通信内容が保護されています。
この記事では、SSL/TLSとは何なのか、HTTPSとの関係や暗号化の仕組みについて初心者向けにわかりやすく解説します。
やりたいこと
- SSL/TLSとは何か理解する
- SSLとTLSの違いを理解する
- HTTPSとSSL/TLSの関係を理解する
- SSL/TLSで通信が安全になる仕組みを知る
- SSL証明書の役割を理解する
SSL/TLSとは?
SSL/TLSとは、インターネット上でやり取りするデータを暗号化するための通信技術です。
例えば、Webサイトでは次のような情報がやり取りされています。
- ログインID
- パスワード
- 名前や住所
- メールアドレス
- クレジットカード情報
これらの情報を暗号化せずに通信すると、第三者に通信内容を盗み見られてしまう危険があります。
そこで利用されているのがSSL/TLSです。
SSL/TLSを利用するとブラウザとWebサーバーの間でやり取りされるデータが暗号化されるため、通信内容を保護できます。
SSLとは?
SSLは「Secure Sockets Layer」の略称です。
インターネット上で安全に通信するために開発された技術で、WebブラウザとWebサーバー間の通信を暗号化する役割があります。
以前はWebサイトの暗号化技術としてSSLが広く利用されていました。
しかし、古いSSLにはセキュリティ上の問題が発見されており、現在では基本的に使用されていません。
そこでSSLの後継として登場したのが「TLS」です。
TLSとは?
TLSは「Transport Layer Security」の略称です。
SSLをベースに改良された通信技術で、現在のHTTPS通信では基本的にTLSが利用されています。
つまり、現在のWebサイトでよく使われている
「SSL化する」
「SSL証明書を設定する」
という表現も、技術的にはTLSを利用している場合がほとんどです。
SSLという言葉が長く使われてきたため、現在でもSSL/TLSをまとめて「SSL」と呼ぶことがあります。
SSLとTLSの違い
SSLとTLSを簡単に比較すると次のようになります。
| 項目 | SSL | TLS |
|---|---|---|
| 正式名称 | Secure Sockets Layer | Transport Layer Security |
| 登場 | SSLが先 | SSLの後継 |
| 現在の利用 | 基本的に利用されない | 現在の主流 |
| 役割 | 通信を暗号化 | 通信を暗号化 |
どちらも「通信を安全にする」という目的は同じです。
初心者のうちは、
SSLの後継としてTLSが登場し、現在はTLSが使われている
と覚えておけば問題ありません。
HTTPSとSSL/TLSの関係
SSL/TLSについて調べていると、HTTPSという言葉も必ずと言っていいほど登場します。
HTTPSは、
「HTTPによる通信をSSL/TLSで保護したもの」
と考えるとわかりやすいです。
HTTPの場合、
ブラウザ
↓
HTTP通信
↓
Webサーバー
となります。
HTTPSの場合は、
ブラウザ
↓
SSL/TLSで暗号化
↓
HTTPS通信
↓
Webサーバー
というイメージです。
HTTPとHTTPSの大きな違いは、通信が暗号化されているかどうかです。
HTTPSについて詳しく知りたい場合は、以前の記事「HTTPとHTTPSの違いとは?」もあわせて確認してみてください。
SSL/TLSで通信が安全になる仕組み
では、SSL/TLSを利用すると、なぜ安全に通信できるのでしょうか。
実際の仕組みは複雑ですが、大まかには次のような流れで通信します。
① ブラウザがWebサイトへアクセス
↓
② WebサーバーがSSL証明書を送信
↓
③ ブラウザが証明書を確認
↓
④ 安全に通信するための鍵を準備
↓
⑤ 暗号化された通信を開始
ここで重要になるのが「暗号化」と「SSL証明書」です。
通信を暗号化することで、第三者が途中で通信を盗み見ても、簡単には内容を読み取れないようにしています。
SSL証明書とは?
SSL/TLSを利用するときに重要になるのが「SSL証明書」です。
SSL証明書には、大きく分けて次のような役割があります。
- 通信相手が正しいWebサイトか確認する
- 通信を暗号化するために必要な情報を提供する
例えば、
https://example.com
へアクセスした場合、ブラウザはSSL証明書などを利用して、アクセスしているドメインと証明書の情報が一致しているかなどを確認します。
証明書に問題がある場合、
「この接続ではプライバシーが保護されません」
といった警告がブラウザに表示されることがあります。
SSL/TLSを利用するメリット
SSL/TLSを利用する大きなメリットは、通信の安全性を高められることです。
特に次の3つが重要です。
通信内容の盗み見を防ぐ
通信内容が暗号化されるため、パスワードや個人情報などを第三者から保護できます。
通信内容の改ざんを防ぐ
Webサーバーとブラウザの通信途中で、データが不正に変更されるリスクを抑えられます。
Webサイトのなりすましを確認する
SSL証明書を利用することで、ブラウザはアクセス先のWebサイトの正当性を確認できます。
このようにSSL/TLSは、
「盗み見」
「改ざん」
「なりすまし」
などのリスクを減らすために重要な技術です。
注意点
SSL/TLSを利用してHTTPS化しているからといって、そのWebサイト自体が必ず安全というわけではありません。
HTTPSは、あくまでブラウザとWebサーバー間の通信を安全にする仕組みです。
例えば悪意のある人が作成したWebサイトでも、SSL証明書を取得してHTTPS化することはできます。
そのため、
「HTTPSだから絶対に安全」
と判断するのではなく、アクセスしているURLやWebサイトの運営元なども確認することが重要です。
また、SSL証明書には有効期限があるため、Webサイトを運営する場合は証明書の更新にも注意しましょう。
まとめ
SSL/TLSは、インターネット上の通信を暗号化して安全に情報をやり取りするための技術です。
もともとはSSLが利用されていましたが、現在では後継となるTLSが主流になっています。
ただし「SSL」という名称が広く普及しているため、現在でも「SSL化」「SSL証明書」といった表現が一般的に使われています。
また、HTTPSはHTTP通信をSSL/TLSによって保護したものです。
HTTP
+
SSL/TLS
↓
HTTPS
と考えると関係性が理解しやすいでしょう。
Webサイトを運営する場合はもちろん、Webエンジニアとしてインターネットの仕組みを理解するうえでも、SSL/TLSは覚えておきたい基礎知識のひとつです。


コメント