【解説】SSL証明書とは?WebサイトのSSL化(暗号化)の仕組みを学ぶ

スポンサーリンク

SSLとは?

SSL(Secure Sockets Layer)とは、クライアント(閲覧者のブラウザー等)とWebサーバ(Webサイト側)間の通信を暗号化する技術です。SSLは暗号化方式なので、Web(HTTP)通信以外にもメール(SMTP)通信等様々な所で利用されていますが、今回はWeb閲覧する際の暗号化通信に絞ってわかりやすく解説したいと思います。

インターネット上の通信は、第三者によってい傍受・改ざんされる危険性があります。SSL化することで、クライアントとWebサーバ間の通信が暗号化されるため、通信を傍受されたとしても内容の買得をすることができなくなります。

また、似たような意味の言葉に、「TLS(Transport Layer Security」というものがあります。SSLは段階的に改良されていき、「SSL 1.0」「SSL 2.0」「SSL 3.0」等がこれまで登場してきました。その後、重大な脆弱性が見つかり、SSLの根本から設計を見直す必要がありました。その後継として登場したのが、「TLS」なのです。ですから、SSLもTLSもどちらも通信を暗号化するための仕組み、という意味では同じですが、TLSのほうがより新しく、安全な暗号方式と言えます。

現在、通称SSLという言葉がよく用いられていますが、実際には「TLS」を意味している場合が多いです。

SSL証明書とは?

SSL証明書とは、上記で説明した暗号化通信を行うために必要となる証明書のことです。SSL証明書に含まれる鍵(公開鍵、共通鍵)を用いると、クライアントとWebサーバー間でやり取りされる個人情報やクレジットカード情報などの通信データを暗号化することができます。

また、SSL証明書にはもう一つ重要な役割があります。通信先のサーバーがきちんと実在することを、公正な第三者機関である認証局(CA)が証明してくれることです。これは、銀行や大手企業などになりすまし、個人情報などを盗み出す「フィッシング詐欺」への対策等において有効です。

SSL証明書の種類

上記のSSL証明書の2つ目の役割で説明した、通信先のWebサーバの運営者の実在性の確認において、認証局(CA)がどのレベルで認証したのかによって、その信頼度が変わってきます。

  1. ドメイン認証(DV)… ドメインの使用権があるかどうか。
  2. 企業実在認証・組織認証(OV)… 登記簿などを確認し、組織として法的に実在しているかどうか。
  3. EV認証(EV)… 上記2つの認証の項目に加え、物理的に組織が存在しているか、事業が存在・運営されているか、承認者・署名者は誰なのか。

認証項目が最も多いEV認証が、効力・信頼性ともに最も高い証明となります。SSL証明書には、無料で利用できるものから、有料のものまで様々なものがあります。それぞれ特徴と一連の認証の流れを理解し、導入するウェブサイトの利用用途や予算に適したレベルのSSLサーバ証明書を選ぶ必要があります。

個人でブログ運営をなさっている方の多くは、Let’s Encrypt等の無料のSSL証明書を使っている方が多いです。

WebサイトにおけるSSL通信の流れ

(出典 : https://www.geotrust.com/jp/how-does-tls-ssl-work)

Webサイトにアクセスしてから、暗号化通信を開始するまでの準備手順は上記のようになります。

  1. クライアント(例:ブラウザ)がWebサーバへ接続を要求
  2. サーバはクライアントへ証明書(公開鍵含む)を送付
  3. クライアントは、予め登録されている認証局の証明書を使って、SSL証明書を検証
  4. 有効な証明書の場合、証明書に含まれる公開鍵を使って、共通鍵を暗号化
  5. 暗号化した共通鍵をWebサーバへ送付
  6. Webサーバは受け取った共通鍵を秘密鍵を使って復号
  7. 以降、クライアントとWebサーバは共通鍵で通信データを暗号化し、お互いへ通信データ(リクエストとレスポンス)をやり取りする。

ここでよくわからないポイントとして、クライアント-Webサーバ間の実際の通信は、証明書の公開鍵・秘密鍵を使って暗号化されるわけでなく、共通鍵を使って暗号化されるというところです。証明書の公開鍵・秘密鍵は実際に通信を行うために暗号化・復号化するための共通鍵を安全に受け渡すための暗号化に利用される、という少し複雑な処理になっています。なぜこんなことをするかというと、公開鍵暗号方式に比べ共通鍵暗号方式の方が処理速度が早いためです。一方で、共通鍵暗号方式は公開鍵暗号方式に比べ安全性が劣るという側面があります。両者のメリットを享受し、デメリットを打ち消すため、上記の様な暗号方式をとっているのです。この方式を「ハイブリッド暗号方式」といいます。

WordPress(Lightsail)のSSL化の方法

WordPressをAWSのLightsailで実装している方向けに、簡単にご自身のWebサイトを無料でSSL化する方法を下記で解説していますので、是非ご覧になってください。
【Lightsail】WordPressをHTTPS化する最も簡単な方法

タイトルとURLをコピーしました