WebサイトのSSL化とは?確認方法や証明書についても解説
おゆきさん!
ブログを開設したら真っ先にSSL化をすすめられましたが、正直よく分かってません。
分かりやすく教えてください。
Webサイトの「SSL化」は昨今ではインフラと化しています。
GoogleがSEO評価の要素であることを公言していますし、非SSL化のWebサイトはアドレスバーに注意喚起の表示が出続けます。
今回はそんなSSLについて、そもそもSSLとは何なのか、なぜ導入が必要なのか、仕組みや導入の流れまで解説していきます。
今後のWebサイト運営にも役立つ知識なので、是非最後まで読んでみてください。
SSL(Secure Sockets Layer)とは?
「SSL(Secure Sockets Layer)」とは、Webサイトとそれを閲覧するユーザーとのデータ通信を暗号化する技術です。
インターネット上のデータ通信は、第三者によって傍受・改ざんされる危険性があります。
SSLを導入することで、ユーザーのブラウザとサーバー間のデータ通信がランダムな文字列に暗号化され、第三者へのデータの漏洩を防ぐことが出来ます。
このようにSSLを自サイトに導入することを、「SSL化」「常時SSL化」「https化」などと呼びます。
厳密に言うと、現在ではSSLを元に開発された「TLS(Transport Layer Security)」と呼ばれる技術が用いられているため、正式な表記としては「SSL/TLS」となります。
TLS(Transport Layer Security)とは?
「TLS(Transport Layer Security」はSSLの後に開発された暗号化通信で、データの認証と暗号化方法が改善され、セキュリティとパフォーマンスが大幅に向上したものです。
前述の通り現在ではSSLより安全なTLSが用いられていますが、日本ではSSLという名称が定着していたため、TLSなどもまとめてSSLと呼ばれることが多いです。
SSL化されているかの確認方法
WebサイトがSSL化されているかどうかは、以下のポイントで確認できます。
SSL化のメリット
もはやSSLはWebサイトのインフラと言えるほど導入が必然化しています。そのため、メリットというよりSSL化が必須である理由という解釈にもなりますが、大きくは下記の3点が挙げられます。
上記3点について、それぞれ解説します。
重要なデータを第三者から守れる
たとえば、ユーザーがWebサイト内のフォームから個人情報を送信した場合、そのデータが暗号化されていなければ、ハッカーはその情報を丸々確認できたり、書き換えることができたりします。これが非常にリスキーであることは言うまでもないですよね。
その点、SSL化によってデータが暗号化されていれば、ハッカーが見る情報はランダムな文字列の暗号に過ぎず、鍵がないと書き換えることもできないので、第三者によるデータの改ざんや情報漏洩のリスクがありません。
ユーザーが安心して閲覧できる
前述の通り、SSL化されていないWebサイトにはデータが保護されない旨の表示があります。たとえば前項のようなリスクを把握していないユーザーであっても、表示を見れば不審に感じる人がほとんどでしょう。
データの送受信はもちろん、サイト内の有益なコンテンツにすら不信感を抱かれてしまっては、サイト運営における大きな障害になり得ます。
SEOに好影響
サイトのSSL化は、Googleが2014年にSEOのランキング要素に加えています。
Google はランキング シグナルとして HTTPS を使用することにしました。現在のところは、ウェブマスターが HTTPS に切り替えるための移行期間として、このシグナルのウェイトを非常に小さく設定しています(グローバル クエリの 1% 未満にしか影響せず、高品質のコンテンツなど他のシグナルよりウェイトが小さい)。しかし、誰もがウェブを安全に利用できるよう、すべてのウェブサイトの所有者に HTTP から HTTPS への切り替えをおすすめしたいと考えているため、今後このウェイトは大きくする予定です。
引用:ランキング シグナルとしての HTTPS | Google 検索セントラル ブログ | Google for Developers
2024年現在にどれほどのウェイトを占めているかは定かではありませんが、僕個人の感覚としては非SSL化のWebサイトはSEOの土俵にも立っていない印象です。
SSL化のデメリット
SSL化におけるデメリットは1点、「理屈上はサイトの表示速度が遅くなる」という点です。
暗号化通信によって工程が増え、多少なりともサーバー・ユーザー双方に負担をかけることになります。
そのため、一昔前はSSL化によって表示速度が遅くなるとも言われていました。
とはいえ、今の技術においては「理屈上」であるに過ぎず、速度の変化はほとんど感じないレベルになっています。
ちなみに、「費用がかかる」ことがデメリットとして挙げられているのも見かけますが、無料のSSLもあるのでSSL化のデメリットということにはなりません。
SSLの仕組み
SSLの仕組みをざっくり言うと、ユーザーが送信したデータが「暗号化」され、受信したサーバーが暗号化されたデータを元に戻す「復号化」を行うことで、情報が確認出来るようになります。
また、暗号化・復号化はそれぞれ両者が持つ「鍵」を利用しておこなわれます。
このようなSSLの暗号化通信は、「共通鍵暗号方式」と「公開鍵暗号方式」を用いた「ハイブリッド暗号方式」が採用されています。
共通鍵暗号方式
「共通鍵暗号方式」は、ユーザー・サーバーそれぞれが同じ共通鍵を利用し、暗号化・復号化をおこなう方式です。
共通鍵はユーザーごとに生成され、公開されることはありません。
暗号化・復号化ともに同じ鍵を利用するので、公開鍵暗号方式と比べて処理速度が早いのが特徴です。
一方で、サーバー側はユーザーごとの膨大な数の共通鍵が必要となるため、作成や管理の容易さ、配布の安全性という点で劣ってしまいます。
公開鍵暗号方式
「公開鍵暗号方式」は、公開鍵と秘密鍵という異なる鍵で暗号化・復号化をおこなう方式です。
全ユーザーに公開されている公開鍵でデータを暗号化しますが、サーバー側の秘密鍵でしか復号化できない仕組みになっており、安全にデータの送信が可能です。
ユーザーごとに異なる鍵を用意する必要がないので、共通鍵暗号化方式と比べて鍵の管理が容易に行えます。
一方で、公開鍵・秘密鍵での暗号化・復号化には多くの時間を要してしまうため、処理速度という点で劣ってしまいます。
ハイブリッド暗号方式
「ハイブリッド暗号方式」は、共通鍵暗号化方式の処理速度と、公開鍵暗号方式の鍵管理の容易さを兼ね備えた暗号化通信です。
まず、サーバーからユーザーへ公開鍵が送られます。
その後、ユーザー側だけで共通鍵が生成され、送信するデータは共通鍵によって暗号化されます。
この時点では、サーバー側には共通鍵がないので、データを複合化することができません。
そこで、共通鍵を公開鍵で暗号化し、データと一緒にサーバーへ送信します。暗号化された共通鍵はサーバー側にある秘密鍵でしか複合化できないため、第三者への漏洩のリスクはありません。
そして、受信したサーバーは暗号化された共通鍵を秘密鍵で複合化し、共通鍵でデータを複合化して情報が確認できるようになります。
サーバー側で必要なのは秘密鍵のみなので鍵管理の容易さは維持でき、秘密鍵で複合化するのは共通鍵のみで、データの複合化は共通鍵でおこなうので処理速度も維持できるという仕組みです。
SSLサーバー証明書とは?
WebサイトにSSLを導入するには、「SSLサーバー証明書」を「認証局(CA)」から発行してもらう必要があります。
SSLサーバー証明書は、SSLの技術を用いて発行される電子証明書で、暗号化に必要な鍵の機能や、証明書発行者の署名データ(ネット上の実印のようなもの)を有しています。
SSLサーバー証明書の種類
SSLサーバー証明書には大きく3種類あり、認証局による審査基準や信頼性の高さが異なります。
それぞれの詳細と特徴は下記の表にまとめています。
ドメイン認証型 (DV SSL) | 企業認証型 (OV SSL) | 拡張認証型 (EV SSL) | |
認証レベル | ★☆☆ | ★★☆ | ★★★ |
費用(年額) | 無料~約2万円 | 約3万円~約10万円 | 約10万円~ |
発行までの日数 | 数時間~当日 | 1~3日 | 1~2週間 |
認証項目 | ドメイン所有権の確認 | ドメイン所有権の確認 組織情報の確認 | ドメイン所有権の確認 組織情報の確認 法的存在の確認 |
特徴 | 認証プロセスが簡単で迅速に完了するため、個人や小規模なWebサイトに適している | ドメイン所有権だけでなく、申請者の組織情報も確認できるため、中小企業やECサイトに適している | 最も認証レベルの高い証明書で大企業や金融機関など、非常に高い信頼性が求められるWebサイトに最適 |
なお、証明書の種類による、暗号化の強度の違いはありません。
そのため、無料のSSLでもデータ通信におけるセキュリティは担保されますし、SEOとしてもデメリットはないでしょう。
フィッシングサイトへの対策が必要となるような企業・Webサイトにおいては「企業認証(OV)」や「拡張認証(EV)」も検討の必要性が出てくるでしょう。
SSL導入の流れ
ほとんどのレンタルサーバーではSSL化が簡単にできる機能を備えていますが、本来WebサイトにSSL/TLSを導入する場合の流れは以下のようになるので確認しておきましょう。
工程を簡単に説明します。
1.CSRの作成
CSR(Certificate Signing Request)とは、サーバー上で作成するSSLサーバー証明書発行用の申請書のようなものです。
2.Webページで申請
Webページの申込みフォームに必要事項を記入してSSLサーバー証明書発行の申請を完了させます。
3.必要資料の準備と送付
承認メール受信用のメールアドレスや、登記簿謄本、企業実印済みの申請書、印鑑証明書など、認証の種類に応じた必要資料を準備し、送付します。
4.SSLサーバー証明書の発行
認証局の審査後、証明書発行承認のメールが送付され、所定のURLから証明書をダウンロードします。
5.サーバへのインストール
ダウンロードした証明書をサーバーへ保存してインストール作業を行います。
6.Webサイト側のSSL化設定
WebサイトのURLを「http」から「https」への変更や、リダイレクト設定を行います。
SSLサーバー証明書の申請・発行からWebサイトへの導入まではこのような流れです。
まとめ|自サイトのSSL化は真っ先に
今回は、SSLの概要、SSL化のメリット・デメリット、SSLの仕組みや導入の流れなどを解説しました。
無料のSSLもあるので、費用をかけたくないという人でも漏れなく自サイトのSSL化は済ませておくべきです。
僕もWordPressでブログを開設した人には真っ先にSSL化をすすめていますし、これからWebサイトを本格的に運営しようという人は、四の五の言わずにSSL/TLSを導入しましょう。
以上、最後まで読んで頂きありがとうございました。
コメント