httpsとは?httpとの違い、移行のメリットや注意点を解説!
公開日:2019.08.15 最終更新日:2020.12.18
スキルアップ近年、セキュリティやSEO対策の観点から、自身や企業が保有するWebサイトをhttps化するようになりました。IT・エンジニア職として働く場合、実際にhttps化の作業を担当することもあるでしょう。ここでは、https化はどのようにセキュリティを高めるのか、また、https化のために具体的に何を行えばよいのかご説明します。
httpsとは
httpsとは、通信プロトコルのひとつ。通信プロトコルとは、通信する内容を解読したり適切に処理したりするためのルール(=通信規格)のことで、代表的なものにhttpやhttpsがあります。Webサイトの住所とも言えるURLは、この通信プロトコル+フルドメイン名で構成されます。
httpとhttpsとの違い
代表的な通信プロトコルであるhttpとhttpsの違いは「安全性の高さ」にあります。
httpとは「Hyper Text Transfer Protocol (ハイパーテキストトランスファープロトコル)」、httpsは「Hyper Text Transfer Protocol Secure (ハイパーテキストトランスファーセキュア)」の略称です。httpsには末尾にs(セキュア=安全な)が付いており、httpよりも安全な通信を実現する通信規格であることを意味しています。
httpsの見分け方
ブラウザからhttpsであることを確認する方法は、2つあります。
1つ目は、URLが「https」から始まっているか否かをチェックすることです。ただし、ブラウザやWebサイトによっては通信プロトコルの表示が省略されるケースがあります。
2つ目は、カギのアイコンです。暗号化されたhttpsのWebサイトの場合、ブラウザのURL表示欄の左右いずれかにカギのアイコンが表示されます。
httpはなぜ安全ではないのか
httpsが安全性に優れているのは、インターネット上でデータを暗号化して送受信する仕組みであるSSL(Secure Sockets Layer)やTLS(Transport Layer Security)によって通信が暗号化されているため。暗号化によって第三者による情報の盗み見や抜き取りなどのリスクを軽減できます。逆に言えば、httpは暗号化されていないため、情報が流出したり盗み見されたりする危険性があるということです。
httpsの意味
インターネットは多数のルータを介して情報を運搬します。こうしたルータのどれかが悪意のあるものだったとしても、なかなか気づくことができません。一方で、インターネットに重要な情報を流す機会は年々増えていました。
例えば、銀行サイトのログイン情報やクレジットカードの情報などが漏洩してしまうと大問題になります。またSNSのログイン情報が漏洩してしまうと、アカウントを乗っ取られてしまう危険性もあります。
このようなリスクを回避するための仕組みとして、通信の暗号化が提唱されました。具体的には、従来のhttp通信の送信時に暗号化し、受信時に復号化するもので、専用の規格としてhttps(httpにsecureのsをつけた)と表記することになりました。
httpsで通信を暗号化する仕組み
第三者に、どの時点で通信が閲覧されても大丈夫なように、暗号化と復号化は自分のパソコンと通信相手であるサーバで行ないます。この暗号化と復号化には、公開鍵暗号方式を利用します。
公開鍵暗号方式は、公開鍵(文字通り公開してよい鍵)とサーバ側で秘密に持っておく秘密鍵の2つと、ブラウザ側で作成する共通の鍵の3つを利用して通信を暗号化します。
まず、通信が始まる直前にブラウザで共通の鍵を作成します。
そして、サーバがもっている公開鍵を自分のPCにダウンロードします(1)。これはSSL証明書に含まれるものです。
サーバ側から提供された公開鍵を利用して、事前に作成した共通鍵をサーバ側に送付します(2)。サーバ側は、自身がもつ秘密鍵でこれを復号化し、共通鍵を手に入れます。
この共通鍵は、自分のブラウザとサーバの2者しかわからない鍵ですので、これを用いてこの後の通信を暗号化することにより、ブラウザとサーバの間の通信が暗号化され安全な通信となります(3)。
SSLサーバ証明書
また、httpsはWebページ所有者の正当性(サーバが実在すること)を証明する役割も担っています。サイト所有者の正当性の認証(=SSLサーバ証明書)には3つのレベルがあります。レベルの低い順に、ドメイン認証、企業認証、EV認証の3つです。
ドメイン認証
ドメイン認証とは、アクセス先がドメインの正当なサーバであることは証明しますが、そもそもそのサイトが本物であることは保証しないものです。例えば、本来のWebサイトに似せて作った偽物のサイトであるということもありえます。
企業認証
企業認証とは、証明書に記載される組織が実在すること、そしてその組織がドメインの所有者であることを示すものです。ここでの組織の実在とは、法的な実在を意味します。
EV認証
EV認証とは、組織の実在に加えて所在地の認証までを行い、物理的に企業が存在することまで認証されます。EV認証がされている場合、一部のブラウザでアドレスバーが緑色になります。
なおブラウザで各証明書の中身を確認する場合、以下の手順で行います。
- アドレスバーの鍵マークをクリックする
- 証明書に関する項目を開く
- 発行者を確認
→発行者がある場合EV認証
- 発行者がない場合、詳細のサブジェクトの内容を確認
→CNしかない場合はドメイン認証
→O、L、S、Cがある場合は企業認証となります
httpからhttpsへの移行する「https化」のメリットは
httpよりもhttpsのほうが安全であることに加え、次のようなメリットがあるため、すでに公開されているWebサイトをhttpからhttpsへ切り替える企業が多くなってきています。この、切り替えることを「https化」といいます。
https化するメリットとは
Googleは、httpsに対応したWebサイトを、検索順位決定時に優遇して評価することを公表しています。つまり、httpsに対応しているサイトのほうがSEO的に有利であるということです。ただし、SEO対策のためにGoogleが推奨している項目はほかにも多数あり、https化したからといって、必ずしも大きな効果があるとは限らないことは注意が必要です。
また、Webサイトを利用するユーザーにとっても、httpsに対応したWebサイトは安全性の裏付けとなるため、安心して閲覧することができます。
https化を進める方法
実際にhttps化を進める作業は次のようなステップになります。SSL化を進める前に、万が一を考えサイトのバックアップを取っておきましょう。
1. SSLサーバ証明書の選択
利用目的や予算などに応じて、取得するSSLサーバ証明書を選びます。
2. SSLサーバ証明書の申込と取得
使用しているレンタルサーバの管理画面にログインし、管理画面上で、SSL証明書の発行を申し込みます。
法人が発行対象になる「企業認証」、「EV認証」の場合には、印鑑証明や登記簿謄本などの書類が必要になることもあります。
3. 審査・認証・証明書の発行
ドメイン所有者の確認・審査が行われたあと証明書が発行されます。なかには最短2分で発行可能な「クイック認証SSL」もあります。
4. SSLサーバ証明書のインストール
発行された証明書をサーバにインストールします。契約しているレンタルサーバによってインストール手順は変わるため、詳細は各レンタルサーバにて確認してください。
5. 内部リンクの確認・動作確認
URLを「https」で入力して、サイトが表示されるかどうか確認します。
また、画像や内部リンクを確認しましょう。URLを絶対パスで指定している場合、リンクが切れてしまうので修正が必要です。
上記のようなステップに加え、Webサイト側でhtmlの修正が発生する場合もあります。https化は、事前にSSL化対象のWebサイトの調査を行ってから実施するようにしてください。
httpからhttpsへの移行時の注意点
301リダイレクト設定を必ず行うこと
301リダイレクト設定とは、従来のhttpのWebサイトにユーザーがアクセスした場合に、自動的に新たなhttpsのWebサイトに飛ばす設定のことです。301リダイレクトは、ユーザーに不便をかけないという意味合いのほかに、SEO評価の面でも大きな意味を持ちます。
https対応のWebサイトは、301リダイレクトの設定を行わなければ新しいWebサイトとみなされます。その結果、従来のhttpのWebサイトが上位表示できていても検索順位が下落することがあります。301リダイレクトを設定すれば、旧サイトの評価を引き継ぐことができます。
canonical(カノニカル)タグについてもhttpsに変更
canonical(カノニカル)タグとは、複数のURLで同じコンテンツが表示される設定になっているWebサイトにおいて、「重複」とみなされてSEO上のデメリットとならないように記述するタグのことです。canonical(カノニカル)タグの設定についても必ずhttpからhttpsに更新するようにしましょう。
内部リンクの更新
ページ遷移のための内部リンク用のURLについても必ずhttpからhttpsに更新しましょう。
https化における今後の動きとは?
メリットがあるものの、移行作業をするためには一定の手間がかかるのがhttps化です。https化の今後の動きについて解説します。
常時SSL化について
常時SSL化とは、Webサイトの一部のページだけではなくサイト全体をhttps化することを指します。そのため、常時SSL化=常時https化と同義です。
かつては、クレジットカード情報の入力画面やお問い合わせフォームなどの顧客情報を入力する場面だけをSSL化対応するWebサイトも多くありました。
しかし、セキュリティ意識の高まり、SEOの観点、非SSLサイトに対してChromeなどのブラウザが警告を表示させる仕様になったことなどから、今では常時SSL化に対応することが当たり前と見なされるようになりました。
Webサイトの信頼性が重要視されてきている
サイバー攻撃の脅威が年々増すにつれて、運営者側からもユーザー側からもWebサイトの信頼性が重視される傾向が強くなっています。
例えば、フィッシング対策協議会が公表している「フィッシングレポート2018」において、2017年度のフィッシング詐欺の届け出件数は9,812件、フィッシングサイトの件数は248件でした。こうしたサイバーセキュリティ対策の一環として、SSL化への対応が求められています。
世界と比べた日本のhttpsの割合
日本が海外の国々と比較して、どの程度https化対応されているかをあらわす指標としてGoogleが発表している「透明性レポート」が参考になります。このレポートにおける「世界各国における Chrome での https の使用状況」において、日本は2019年6月1日時点で78%を示しています。
このデータは、Chromeで閲覧されたWebページにおいてhttpsに対応したWebページの割合を示したものです。数値からもhttps対応が進んでいることが確認できますが、アメリカ90%、ドイツ89%、フランス88%などと比較するとまだ低い水準にあります。
常時SSL化でWebサイトの信頼性向上を
Webページをhttps化することは、セキュリティ強化やSEOの面でメリットがあります。httpsに対応するためには、顧客やユーザーの利便性を損なわないこと、サイト評価を下げてしまわないことに注意しながら、漏れのないように対応を行っていく必要があります。
特に近年はセキュリティの観点からhttps化が重視されており、常時SSL化が推奨されています。Webサイトの信頼性は運営元の信頼性にもつながるため、https化はますます推し進められるでしょう。
(2020年12月現在)