SSL

SSLとは?仕組みから、共有・独自SSLの違い、証明書についてが分かるまとめ

SSLとは・・・情報を暗号化して送受信してくれる仕組みです。

例えば、Webサイト上で「個人情報」や「クレジットカード番号」などを登録するさいに、暗号化して送受信してくれます。

これによって、第三者から盗み見らていても、暗号化されているので、内容を特定される事はありません。

また、普段利用しているWebサイトがSSL対応しているかは、URLを確認すれば分かります(下図確認)

SSL化されているURL

今回の記事では、もっと詳細な「SSLの仕組み」や「共有SSLと独自SSLの違い」・「SSL証明書」についても順に解説していきます。

以下、目次になります。

  • SSL証明書とは
  • SSLの仕組みについて
  • 共有SSLと独自SSLの違い

SSL証明書とは

SSL証明書の役割は、下記三つになります。

  • 「SSL」を用いて、通信情報を暗号化する
  • 「SSL」を利用しているWebサイトの運営会社(所有者)の確認ができる
  • 「SSL」を利用しているWebサイトの運営会社(所有者)が、第三者機関(認証局)からの信頼性が高いことを証明できる

また、SSL対応しているWebサイトであれば、ブラウザ上からSSL(サーバー)証明書を確認することができます。

SSL証明書の確認手順

※今回は、「Google Chrome」での確認手順になります(他のブラウザでも、手順はほぼ一緒です)

まず、「Google Chrome」で、SSL対応しているページを開きます。

例として、下図のように「楽天」の「買い物カゴ」ページを開いてみます(楽天の買い物カゴページは、アカウント情報や個人情報を扱っているため、SSL対応しています)

そして、「鍵マーク」の部分をクリックしてください(SSL対応しているページは、URLの前に「鍵マーク」が表示されます)

SSL証明書 確認手順1

すると、下図のようにポップアップ画面が開きますので「接続」タブを開いてください。

こちらに、Webサイトの運営会社情報(Rakuten.IncやJP Tokyo)や、第三機関(認証局)の情報(VeriSign)
また、暗号化情報も表示されています。

SSL証明書 確認手順2

上図の「証明書情報」をクリックすると、さらに詳細な情報を確認することができます(下図)

第三機関(認証局)が、(信頼性を)証明した「ドメイン」や、有効期限を確認することができます。

SSL証明書 確認手順3

さらに「詳細」タブでは、

第三機関(認証局)の詳細情報や、信頼性を証明されたWebサイトの運営会社の詳細情報を確認できます。

SSL証明書 確認手順4

以上が、SSL証明書の確認手順でした。

SSLの仕組みについて

SSLの仕組みを理解するには、まず下記2つの仕組みを理解しなければなりません。

  • 【共通鍵暗号方式】
  • 【公開鍵暗号方式】

上記二つは、二者間の通信を暗号化する際、最も一般的で基本的な暗号化方式です。仕組みについては、こちらで分かりやすく解説しています→【3分で理解できる!共通鍵暗号方式と公開鍵暗号方式の仕組み】

「SSL」では、この「共通鍵暗号方式」と「公開鍵暗号方式」の両方を仕組みを用いて、暗号化通信を行っています。

では、具体的に解説していきます。

まず、「SSL」の暗号化通信は、大きく2段階(STEP)に分かれています。

【1STEP】~通信内容を暗号化するための「共通鍵」を、クライアント/サーバー間で共有する~

※「クライアント」・・・サイトを閲覧する側、「サーバー」・・・サイトを公開している側

1STEPでは「公開鍵暗号方式」で、通信内容を暗号化するための「共通鍵」を、クライアント/サーバー間で共有します。

以下、流れになります。

  1. 「クライアント」から、”SSL通信をしたいです”と、「サーバー」へ要求する
  2. 「サーバー」は、”了解”と言って、SSL(サーバー)証明書と公開鍵を、「クライアント」へ送信する
  3. 「クライアント」は、受け取った公開鍵を用いて、(クライアント側で生成した)「共通鍵」を暗号化して、「サーバー」へ送る
  4. 「サーバー」は、受け取った暗号データを、秘密鍵を用いて復号化し、「共通鍵」を取得する

この流れで、最終的に「共通鍵」をクライアント/サーバー間で共有することができます。

次のステップでは、この「共通鍵」を利用して、実際の通信データ(個人情報やログイン情報)を暗号化していきます。

【2STEP】~共有した「共通鍵」で、データを暗号化して通信する~

2stepでは、”1stepで共有した共通鍵”を用いた「共通鍵暗号方式」で、実際の通信データ(個人情報やログイン情報)を暗号化して通信します。

以下、流れになります。

  1. 「クライアント」が、通信データを「共通鍵」で暗号化し「サーバー」へ送信する
  2. 「サーバー」は、受け取った暗号データを「共通鍵」で復号化し、データを取得する

※「サーバー」から「クライアント」への通信も、同じ流れになります。

以上、2stepが、「SSL」の通信の仕組み(流れ)になります。

以下で、図解しています。
SSLの仕組み

共有SSLと独自SSLの違い

SSLには、大きく「共有SSL」と「独自SSL」に分けることができます。

当章では、順にそれぞれの特徴や違いについて解説していきます。

まず前提として、「SSL」に対応するには「SSL証明書」が必要ですが、基本的には、一つの「SSL証明書」に対して、一つの「ドメイン」を対応させなければなりまえん。

ですが、一つの「SSL証明書」に対して、複数の「ドメイン」を対応させることもできます。

ここで、1対1で対応しているのが「独自SSL」になり、1対 多 で対応しているのが「共有SSL」になるのです。

では、それぞれの特徴を挙げていきます。

独自SSLの特徴

「独自SSL」は、ドメインはそのまま利用できます。

例えば、当サイトのドメインは「viral-community.com」なので、通常通信(http)の場合「https://viral-community.com」にアクセスすれば良いです。

そして、SSL通信(https)の場合も、ドメインはそのまま利用できるので「https://viral-community.com」にアクセスすれば良い事になります。

ドメインは一緒なので、利用者からの信頼感を損なう事もありません。

一点、デメリットとしては、お金が掛かってしまう事です。

ただ昨今では、低価格化が進み、「3000円 / 年」程度のモノもあるので、個人でも導入が容易になっています

なので、「ネットショップの決済ページ」など、利用者の重要な情報(個人情報やクレジットカード情報)を扱い、信頼感を損なってはダメな場合には、必ず使用するようにしてください。

共有SSLの特徴

「共有SSL」は、なんといっても”ドメインが変わってしまう”事です。

「レンタルサーバー」を例にすれば分かりやすいでしょう。

レンタルサーバーを提供している会社は、その会社のドメイン「(例)●●●●●.ssl-●●●●●.jp」に対して、SSL証明書を対応させて、それを「共有SSL」としてサービス化しています。

例えば、当サイトが上記レンタルサーバーを利用し、「共有SSL」も利用したとします。

その場合、当サイトのドメインは「viral-community.com」なので、通常通信(http)の場合は「https://viral-community.com」にアクセスすれば良いです。

ですが、SSL通信(https)の場合は、ドメインがレンタルサーバー提供会社のものになるので「https://●●●●●.ssl-●●●●●.jp」にアクセスしなければなりません、、

これは、利用者からの信頼感を非常に損ねてしまいます。

利用者からしたら、急に「viral-community.com」から「●●●●●.ssl-●●●●●.jp」に変更になったら、疑問に思いますし、それが心配へとなっていきます。

”本当にこのサイトで、個人情報を入力して大丈夫なのか、、、”と思ってしまうわけです。

また、SSL証明書は、レンタルサーバー提供会社に対してのものなので、「共有SSL」に対応したサイト運営会社の情報確認や証明は、全く行われません。

さらに、他のレンタルサーバー利用者で、「共有SSL」を使っている人が多ければ多いほど、「共有SSL」に対応させたページの動作が遅くなってしまいます。

以上が、デメリットです。

メリットとしては、まず「お金が安価、または掛かりません」
ほとんどのレンタルサーバーでは、無料でサービス化されています。

また、暗号化は「独自SSL」と全く差異なく行われますので、通信じたいは安全です。

使用時としては、利用者が自分だけや自社だけの場合に使用すれば良いでしょう。

例えば、「ブログのログイン画面や管理画面」は、ブログのログイン情報が第三者から傍受されたらマズイですが、管理画面の利用者は自分だけなので、「共有SSL」で良いでしょう(共有SSLを利用して、自社ブログ(Wordpress)の管理画面やログイン画面をSSL対応させる手順については、こちら→【WordPressの管理画面を、https(SSL通信)に設定する手順】

以上、「独自SSL」と「共有SSL」の特徴でした。

まとめ

今回の記事では、「SSLの仕組み」や「共有SSLと独自SSLの違い」・「SSL証明書」について解説してきました。

ネットショップなど、「個人情報」や「クレジットカード情報」等、サイト利用者の重要な情報を扱う場合は、SSL対策は必須ですし、サイト運営者は、SSLに対して正しい知識を持つ事が重要です。

その上で、自社サイトに適したSSL対策をしておきましょう。

コメントを残す

メールアドレスが公開されることはありません。