SSLとは?仕組みや必要性をわかりやすく解説
「これから作成するWebサイトにSSLは必要?」「そもそもSSLってなに?」とお悩みですか?SSLはWebサイトの信頼性に大きく影響するものです。
本記事を読めば、SSLがどういうものか、なぜ必要なのかがわかるだけでなく導入するべきSSLの種類までわかるようになります。ぜひご活用ください。
SSLとは
SSL(Secure Sockets Layer)とは、インターネット上で通信するプロトコルの一種。SSLは通信データを暗号化するため、通常のインターネット通信よりもデータを安全にやり取りできるのが特徴です。データを暗号化することで、悪意のある第三者から通信内容を傍受されにくくなります。
今日では、SSLは広く普及していて私たちの生活の周りにもたくさん活用されています。代表的なのはWebサイトのURLです。上画像のようにURL冒頭が「https」となっているのがSSL化されたWebサイトです。
反対に、SSL化されていない通常のWebサイトのURLは「http」と表示されます。つまり、「http」に「s」がついていればSSL化された安全なWebサイトと判断できるということです。
TLSとの違い
TLS(Transport Layer Security)とは、SSLの次世代規格であり、SSLを改良し安全性を高めたものです。SSLは安全なインターネット通信を実現するために開発された技術ですが、完璧ではありません。ハッカーは常にセキュリティの脆弱性を見つけては攻撃してくるため、SSLだけでは破られてしまうケースも出てきています。
セキュリティの世界は常にハッカーとのイタチごっこが繰り返されています。セキュリティを構築しても、それを破る手法をハッカーが編み出してしまうため、脆弱性を改善する必要がありました。そこで生まれたのがTLSです。
一般に、私たちが「SSL」と呼んでいるもののほとんどは「TLS」に移行しています。そのため、あまりTLSを意識する機会は多くないでしょう。
SSLの必要性
SSLを利用するのはなぜでしょうか?実は、SSLがないとインターネット通信は「誰でも」「簡単に」覗き見ることができてしまうのです。
情報の保護
SSLを利用することで、インターネット通信で送受信される情報を保護できます。たとえば以下のことが期待できます。
なりすまし防止
「なりすまし」とは、悪意のある第三者が誰かに偽装して不正行為を働くこと。たとえば、企業のWebサイトを偽造してログインページに誘導し、ユーザーのID・パスワードを入力させて収集するのもなりすまし行為の1つです。
SSLを導入するには、実在証明(SSLサーバ証明書)によって企業や個人の身元を証明しなくてはいけません。それゆえサイトがSSL化されていれば、仮に悪意ある人物がWebサイトを偽造したとしてもバレやすくなります。そのため、SSL化はなりすましの防止に役立つのです。
盗聴防止
SSL通信を採用したWebサイトなら、ログイン時にID・パスワードを盗聴するのが困難になるため、不正ログインの原因になるID・パスワードの流出を防げます。
SSL化されていないインターネット通信は、簡単に外部から覗き見られるためにハッカーの格好の目標になります。通信データを盗聴されてしまえば、ログイン時のID・パスワードを悪用されて自社のWebサイト管理画面や社内業務アプリに不正ログインされてしまう危険性が増えます。
通信データの改ざん防止
通信データの改ざんとは、Webサイトとの通信内容を意図的に書き換えられてしまうこと。たとえば銀行から送金をしたいときに、送金先を書き換えられてしまえば大変なことになります。SSL化されていないインターネット通信では、ハッカーが自分の口座に送金するようにデータを改ざんできてしまうのです。
SSL通信であれば、Webサイトとユーザーの間でやり取りするデータを暗号化するだけでなく、デジタル署名によってデータの送信元と受信元を確認・保証してくれます。そのため、通信中に第三者が割り込んできても「不審なデータ」を検知してくれるのです。
サイトの信頼性向上
SSLを導入したサイトはURLが「https」になることはすでに説明しましたが、ほかにもURLの横に鍵マークが付くため、視覚的に安全なサイトであることをユーザーに伝えられます。
また、最近のWebブラウザはSSL化されていないWebサイトにアクセスしようとすると「このサイトは安全に保護されていません」といった警告が出ることも。SSL化されていないページだとユーザーが不安に感じて離脱する可能性もあるので、サイトの信頼性を上げるためにも重要といえます。
SSLの仕組み
SSLの仕組みを理解するために、クライアント(パソコン)とサーバを例に、流れに沿って説明します。
接続要求
まず、クライアント(パソコン)からサーバに接続要求が行われます。接続要求とは「これからあなたのサイトにSSLで通信しますよ」と宣言することです。
公開鍵付きのSSLサーバ証明書をWebブラウザ側へ送付
接続要求を受けとったサーバは、公開鍵付きのSSLサーバ証明書をクライアントに送付します。
公開鍵とは、データを暗号化するのに外部共有可能な鍵のこと。公開鍵は秘密鍵とセットで運用されます。公開鍵を相手に渡し、秘密鍵は自分だけが保有します。秘密鍵は、公開鍵で暗号化されたデータを復号(元のデータを復元)するための鍵です。
クライアントは、受け取ったSSLサーバ証明書を確認・検証します。
共通鍵を暗号化しサーバ側へ送付
クライアントはサーバから受け取った公開鍵を使って、暗号化した共通鍵(セッションキー)をサーバに送付します。上記で解説したように、この共通鍵はサーバが持つ秘密鍵で復号されます。
つまり、
- サーバがクライアント(パソコン)に公開鍵を渡す(秘密鍵は渡さない)
- クライアント(パソコン)が公開鍵を使ってデータを暗号化する
- クライアント(パソコン)が暗号化したデータをサーバに送る
- サーバが暗号化されたデータを秘密鍵で復号する
という流れになります。クライアント(パソコン)からすると、自分のデータを復元できるのはサーバだけ。こうして安全にデータをやり取りするのです。
SSL暗号化通信スタート
一連のやり取りを終えると、クライアントとサーバでSSL通信が開通します。以後、データ通信はすべて暗号化され、クライアントとサーバは通信するたびに暗号化されたデータを復号して利用します。
SSLサーバ証明書の種類と目的別の選び方
|
ドメイン認証 |
企業実在証明 |
EV認証 |
認証レベル |
低 |
中 |
高 |
認証項目 |
ドメイン所有権の確認 |
・ドメイン所有権の確認 ・企業の法的な実在の確認 |
・ドメイン所有権の確認 ・企業の法的な実在の確認 ・企業の物理的な実在の確認 ・申し込み意思・権限の確認 |
特徴 |
・低価格 ・スピード発行が可能 ・個人事業主も取得可 |
・中程度の価格・ 証明書情報に組織名が記載 ・Webサイトの信頼性が上がる |
・高価格 ・詳細な組織の実在性を証明できる ・Webサイトの信頼性が最も上がる |
SSLサーバ証明書と一口に言っても、表に記載の3種類があり、目的に合わせて選択することが大事です。以下で詳しく解説します。
ドメイン認証
ドメイン認証とは、SSLの申請者(サイト運営者)がドメインの所有権を保持していることを証明するもの。
ドメイン認証は、SSLの証明レベルとしてはもっとも簡易的なもので、低価格でスピード発行が可能なのが特徴。個人運営のブログや期間限定で公開されるキャンペーンページや、組織内サイトなどで利用されます。
企業実在認証
企業実在認証とは、証明書に記載されているドメインだけでなく、企業が法的に実在していることを証明するもの。証明書に記載されている企業とドメインが間違いなく結びついていることを証明できるため、ユーザーはアクセスしたWebサイトの所有者が企業であると確認できます。
企業実在認証はドメインの所有権だけでなく、帝国データバンクなどの第三者データベースに組織情報を照会するため、ドメイン認証よりも手続きが多くなります。その代わり、Webサイトの信頼性はより強固になるため、コーポレートサイトや会員制サービスサイトなどで使われています。
EV認証
EV(Extended Validation)認証とは、企業実在認証に加えて、証明書に記載されている企業の所在地や申し込み意思・権限の確認などを行うもの。3種のSSLの中で最も信頼度が高いです。申し込み意思の確認では、直接企業に電話をかけ、担当者と話した上で申し込み意志や担当者の権限までを確認します。
EV認証は、世界標準の認証ガイドラインを持ちます。そのため、SSL証明書のなかではもっとも厳格な審査が行われる上、信頼性という点でも優れた証明書といえるでしょう。そのため、EV認証はセキュリティの高さが求められるネット銀行やネット証券、大規模オンラインショップなどで利用されています。
SSL導入の流れ
SSL証明書発行サービスを選ぶ
SSL証明書発行サービスはたくさんあるため、その中から自社にあったものを選ぶ必要があります。代表的なサービスとしては以下があります。
- GlobalSign(グローバルサイン)
- Symantec(シマンテック)
- GeoTrust(ジオトラスト)
- Sectigo(旧COMODO)
- SECOM(セコム)
- Let’s Encrypt(レッツエンクリプト)
サービスによって、価格や認証方式が異なるため最適なものを選ぶようにしましょう。
CSRを作成・申し込み
CSRとは、SSLサーバ証明書を発行するための署名要求(Certificate Signing Request)のこと。SSL証明書発行サービスに申し込むとCSRの提供を求められるので作成しておく必要があります。
作成発行方法はレンタルサーバやCSR発行サービスを利用するのが一般的。ドメイン名(コモンネーム)や公開鍵情報や組織名、所在地情報などの情報を含めて発行します。
認証局の審査と必要書類の提出
申し込んだSSL証明書の種類に応じて、認証局からの審査があります。必要な書類は認証局や認証レベル、団体によって異なるので、申し込んだSSL証明書発行サービスの指示に従って対応してください。
SSLサーバ証明書の発行とインストール
認証局から承認が下りると、証明書が発行されます。メールで証明書のインストール方法が通知されますので、手順に従ってインストールしてください。インストール方法は利用しているサーバによっても異なるため、確認することをおすすめします。
SSLの仕組みや種類を理解して取り入れましょう
SSLにはドメイン認証、企業実在認証、EV認証の3種類があります。認証レベルによって信頼性に違いがありますが、SSLを導入しているのとしていないとでは、ユーザーに与える印象が大きく異なります。本記事を参考にして、ぜひ自社で運用しているWebサイトへのSSL導入を検討してみてください。