SSLサーバー証明書とは?仕組みや種類を徹底解説!
インターネット通信のセキュリティを強化する重要な仕組みとして、SSLサーバー証明書があります。現在は広く利用されている技術で、証明書の考え方なしにセキュリティは担保できないと断言できるぐらいです。当たり前に利用される技術であるからこそ、適切な理解がないと問題を起こしてしまう可能性があります。今回は、Webの世界で必ず理解しておきたいSSLサーバー証明書について解説します。
SSLサーバー証明書とは
最初にSSLサーバー証明書とはどのような技術であるのか紹介します。
そもそもSSLとは
SSLサーバー証明書について理解するためには、中心となる技術であるSSL/TLSについて理解しなければなりません。SSLとは「Secure Sockets Layer」の頭文字をとったもので、インターネット上で通信する際に暗号化するプロトコルです。また、TLSは「Transport Layer Security」の頭文字をとったもので、SSLの次世代規格として開発されました。SSLにはいくつかの課題があるため、TLSでこの問題を解決しています。
ただ、個別に運用されているわけではなく、これら両方を組み合わせた暗号化技術が利用されている状況です。一般的にはSSLと表現されますが、部分的にはTLSも内包していると考えてよいでしょう。
SSLサーバー証明書とは
SSLサーバー証明書は、SSLの技術によって、認証局と呼ばれる機関が発行する電子証明書です。こちらの電子証明書を手に入れて、Webサイトへ導入することで、通信を暗号化したりWebサイトの運営者や所有者を証明したりできます。SSL技術の根底を支えるものであると考えてよいでしょう。
SSLサーバー証明書には、Webサイトの所有者情報や暗号化に利用される鍵、そして証明書を発行するベンダーの署名などが含まれています。後ほど解説しますがSSL証明書には種類があり、どれを採用するかによって含まれているデータやその詳細は少し異なります。ただ、どの種類のSSLサーバー証明書でも、正当なものをWebサイトへ導入すればURLがHTTPSから始まるようになります。また、ブラウザには鍵のマークが表示されるなど、暗号化通信がなされていることが視覚的に確認できるようになるのです。
SSLサーバー証明書の役割
続いては、SSLサーバー証明書が担う役割を二つ紹介します。
通信の暗号化
SSLサーバー証明書の主な役割は、インターネット上の通信を送受信とも暗号化することです。クライアントからサーバーへと通信してくる際、送信も受信も暗号化できるようになります。データを暗号化せず平文のまま送信していると、悪意のある第三者に読み取られるかもしれません。しかし、暗号化していると仮に盗聴されても内容を読み解くことは非常に難しく、セキュリティが担保されるのです。
なお、暗号化の方法には「共通鍵暗号化方式」と「公開鍵暗号化方式」があります。一般的なWebサイトに導入するSSLサーバー証明書は、公開鍵暗号化方式と呼ばれるものです。そのため、これの仕組みについて後ほど紹介します。状況次第で共通鍵暗号化方式を採用することもありますが、基本的には公開鍵暗号化方式を採用するものであると理解してください。
運営者の実在を証明
SSLサーバー証明書を発行する際には、Webサイトの運営者や組織が正当に実在するかどうか確認されます。そのため、SSLサーバー証明書には「組織などが存在することの証明」となる役割もあるのです。インターネットの世界では、相手側が実在するか判断しづらいことがありますが、SSLサーバー証明書により解決できます。
なお、所有者を確認する方法には3種類あり、どの手法で確認されているかによって信頼性が変化します。具体的なSSLサーバー証明書の種類は以下で解説するため、そちらを参考にしてください。
SSLサーバー証明書の種類
SSLサーバー証明書は大きく分けて3種類存在します。どれを導入するかによって、証明できる内容などに違いがあるためよく検討しなければなりません。
ドメイン認証
ドメイン認証は、申請者が証明書に記載されているドメインの所有権や使用権を有していることを示すものです。最低限の事項を示すSSLサーバー証明書で、安価であることが特徴といえます。そのため、小規模な事業者や個人が運営するWebサイトなどで使用されがちです。手続きも簡単であり、申請してから1日程度で発行され、利用できるようになっています。
気軽に導入できるSSLサーバー証明書ですが、発行にあたって確認される内容が限られています。言い換えると、Webサイトへアクセスしてきたユーザーに対して証明できることも限られてしまうのです。そのため、コーポレートサイトやECサイトで利用するには、信頼性に欠けるといわざるを得ません。個人で利用する他、組織内のイントラネットなど大きな責任を負いづらい内容にのみ利用した方が良いでしょう。
企業実在認証
企業実在認証は、ドメインを所有していることの証明だけではなく、Webサイトを運営する企業が実在すると証明できるSSL証明書です。これを取得することによって、架空の組織ではなく、法的に実在する組織であると証明できます。例えば法人登記されていたり、帝国データバンクに掲載されていたりする組織であると示せるのです。
企業の実在を示す必要があるため、取得までには時間がかかり、手続きも複雑になっています。まず、申請する企業側は、法人登記の内容など企業が存在していると証明できる資料を準備しなければなりません。また、SSLサーバー証明書を発行する認証局側は、その内容を登記情報やデータバンクなどで評価する必要があります。認証局の確認不足が発生すると信頼性を大きく損なうため、この作業に時間がかかり、発行までも時間を要してしまうのです。
また、発行まで手間のかかる作業であることから、ドメイン認証よりも費用は高くなってしまいます。とはいえ、企業のコーポレートサイトなど実在性を示す必要がある場合は、こちらを採用した方が良いでしょう。
EV認証
EV認証は、SSLサーバー証明書の中で最も信頼性が高いものであり、世界標準の認証ガイドラインが存在します。ドメインの所有者と組織の存在性が確認されるだけではなく、組織の所在地や申請にあたって意思決定者が許可しているかどうかなども評価されるのです。つまり、Webサイトを運営する組織として、全社的にSSL証明書を発行しようとしているかどうかが確認されます。
取得の際は、書類を準備して申請するだけではなく、認証局と様々なやり取りを済ませなければなりません。加えて、最終的には意思決定者の元に連絡が入り、SSLサーバー証明書の発行に同意するかどうかまで確認されます。非常に信頼性の高いSSLサーバー証明書ですが、発行までにはまとまった時間がかかり、コストも高くなってしまうのです。
手間やコストを考えると、企業実在認証では不十分な場合のみ、EV認証を利用すればよいでしょう。例えば、ネットショッピングや金融機関など金銭に関わるWebサイトです。また、フィッシングサイトなどが作成されやすい大手企業なども、ブランドを守るために取得すべきと考えられます。
SSLサーバー証明書の仕組み
上記で紹介した3種類のSSLサーバー証明書のどれを取得しても、SSL通信の仕組みには違いがありません。今回は、公開鍵暗号化方式に対応したSSLサーバー証明書の仕組みを紹介します。
- ブラウザがサーバーSSL通信をリクエスト
- サーバーは公開鍵とSSL証明書送信
- ブラウザがSSL証明書を検証
- ブラウザが共通鍵を作成し、データをサーバーへ送信
- ブラウザで入力されたデータなどを暗号化してサーバーへ送信
- サーバーは保存されている秘密鍵で、データを復号
ブラウザはサーバーへリクエストを送り、それに対するレスポンスとして、SSLサーバー証明書などを受け付けています。そして、この内容が正しいものであるかどうか、最初に評価するという流れです。例えば、有効期限が切れていないかや、認証局にSSLサーバー証明書が登録されているかどうかなどを評価します。もし、何かしらの問題が検知されたならば、その段階でSSL通信は成立しなくなってしまうのです。
証明書の内容に問題がないと評価されたならば、サーバーとの間にSSL通信が確立されます。このSSL通信は内容を暗号化できるようになっているため、ブラウザから送信した内容は、全て暗号化される仕組みです。また、それに対するサーバー側のレスポンスも同じく暗号化されます。
SSLサーバー証明書の必要性や導入のメリット
SSLサーバー証明書を導入することによって、どのようなメリットを享受できるのか理解しておきましょう。
ユーザーが安心できる
最大の必要性であり、メリットといえる部分は、SSLサーバー証明書によってユーザーが安心できることです。Webサイトの運営者が証明されることによって、フィッシングサイトなどにアクセスしている可能性が下がり、個人情報などを収集する際も入力してもらいやすくなるのです。
近年はWebブラウザ側が進化していて、SSLサーバー証明書を導入していないと警告が表示されます。このようなWebサイトは「危険である」との認識が広がっているため、仮に正当なものであっても、ユーザーに利用してもらうことは難しくなるでしょう。その結果、社会的な信用力が下がってしまったり、ビジネスチャンスを失うことになりかねません。利用者に安心を提供できることは、大きなメリットでありもはや必須なのです。
セキュリティを高められる
ユーザーの安心に繋がる部分ですが、セキュリティを高められることがメリットです。通信内容が暗号化されるため、第三者に盗聴されたとしても情報漏洩を防ぎやすくなります。
例えば、コーポレートサイトのお問い合わせフォームには個人情報を入力してもらわなければなりません。もし、このような情報が盗聴され漏洩してしまうと、社会的に大きな問題となるでしょう。ビジネスチャンスを失うだけではなく、損害賠償などの問題に発展しかねません。しかし、SSLサーバー証明書を導入し、適切に運用できていれば、このような問題はほぼなくなるのです。セキュリティ上の問題を未然に防止できることがメリットです。
検索サイトからの評価が高まる
多くのWebサイトは、Googleなどの検索エンジンから利用者が流入してくるはずです。この検索エンジンは、WebサイトがSSL化されているかどうかを評価しています。SSL化されていないと評価が大きく下がってしまうため、もはやSSLサーバー証明書の導入は必須という状況です。
暗号化の重要性については、Googleなどの検索エンジンから公式に声明が出されています。また、SSLサーバー証明書を導入していないことによる検索結果への悪影響についても示唆されているのです。導入するだけで効果があるため、メリットを受けるためにも必須と考えましょう。
Webサイトの表示を高速化できる
Webサイトを表示するプロトコルにはHTTPが利用されますが、これにはHTTP/2と呼ばれる次世代プロトコルが登場しています。HTTP/2を利用する前提条件としてSSLサーバー証明書の導入が求められているため、SSLサーバー証明書を導入することは、間接的にWebサイトの高速化を実現することに繋がるのです。
なお、次世代の規格と紹介はしていますが、主要なブラウザはHTTP/2に対応しています。そのため、SSLサーバー証明書を導入すれば、多くのユーザーへ高速なWebサービスを提供しやすくなるのです。
まとめ
SSLサーバー証明書の基本知識から、その種類などを解説しました。近年はインターネット上のセキュリティが重視され、SSLはその根底を支える技術です。SSLなしに、インターネット上の通信を守ることはできないと表現しても過言ではないでしょう。
SSLサーバー証明書には種類があり、どれを導入するかによって証明できる内容に違いがあります。コストにも違いがあるため、導入の目的を明確にして選択するようにしてください。