たとえるなら
手紙のやりとりのマナーだと思ってください。HTTPは「はがき」で、配達の途中でのぞかれると内容が読めてしまいます。HTTPSは「封をした封筒」で、途中で盗み見られても中身はわかりません。パスワードやクレジットカード番号を送るなら、封筒が安心ですよね。
もう少しくわしく
HTTPは、ブラウザとサーバーの間でデータをやりとりするための共通の通信ルールです。世界中のどのブラウザとどのサーバーでも会話が成り立つのは、みんなが同じ約束ごとに従っているからです。URLの先頭に付いている「https」は、まさにこのルールで通信することを示す表示です。
やりとりの形は単純で、ブラウザが「このページをください」とお願い(リクエスト)を出し、サーバーが中身を添えて返事(レスポンス)をします。返事の先頭には、うまくいったかどうかを示す3桁の番号が必ず入っています。有名なのは「404」で、指定された場所にページが見つからないという意味です。開発の現場ではこの番号を見て、どこでつまずいたのかを判断します。
末尾にSが付いたHTTPSは「Secure(安全)」のSで、やりとりの内容を暗号化した版です。途中の経路で誰かにのぞかれても、中身を読み取られることはありません。ブラウザのアドレス欄の鍵マークは、HTTPSで通信している印です。注意したいのは、鍵マークは「通信が守られている」ことしか示さず、サイトそのものが信用できるかは別問題だという点です。
HTTPSにするには、サーバーに証明書と呼ばれるものを用意して設定します。証明書には有効期限があるので、期限が来る前に更新する運用がついてまわります。以前は「ログインページだけHTTPS」というサイトもありましたが、いまは全ページをHTTPSにするのが標準です。あわせて、httpで来た人をhttpsへ自動で送る設定も入れておきます。
落とし穴の代表は証明書の期限切れです。更新を忘れると、ある朝いきなりすべての利用者に警告画面が出ます。もうひとつ多いのが、ページ自体はHTTPSなのに、中で読み込む画像などがhttpのまま残っているケースです。ブラウザに安全でないと扱われ、その部分が表示されないこともあります。社内資料や古いメールに残ったhttpのリンクも、見直しの対象になります。
非エンジニアの方がまず身につけるとよいのは、鍵マークとあわせてドメイン(サイトの住所)も見る習慣です。偽サイトもHTTPSを使えるため、鍵マークだけでは本物の証明になりません。トラブルのときは、画面に出た番号やメッセージを言い換えずにそのまま伝えてください。「404が出ました」の一言で、調べる側は原因の見当をつけられます。
補足として、返事の番号にはおおまかな読み方があります。4から始まる番号はお願いした側に原因がある場合(存在しないページを指定した、権限がないなど)、5から始まる番号はサーバー側で何か起きた場合を表します。404か500かが分かるだけで、自分の操作を見直すべきか、担当者に連絡すべきかの判断がつきやすくなります。
現場での使われ方
「このサイト、まだHTTPS化されてないんだ」
通信が暗号化されておらず、いまの基準では安全性に不安があるという指摘です。ブラウザが警告を出すため、サイトの信頼そのものにも影響し、早めに直すべき課題として挙がります。
「500が返ってきてます」
サーバー側で問題が起きたことを示す番号が返っている、という報告です。利用者の操作ミスではないため、調査はシステムの側から始めます。画面には短い文言しか出ないことが多く、この番号が手がかりになります。
「証明書の更新、今月ですよね」
HTTPSに必要な証明書には有効期限があり、切れると利用者に警告画面が出ます。期限前の更新作業を担当者どうしで確認し合うやりとりです。うっかり切らすと影響が大きいため、予定表で管理します。
「httpで来ても、httpsに転送されますか?」
暗号化されていない入口から来た人を、自動で安全な側へ送る設定が入っているかの確認です。公開前のチェック項目としてよく挙がり、古い資料に残ったリンクからの流入にも効きます。
よくある質問
HTTPSなら絶対に安全ですか?
「通信の途中で盗み見られない」ことは保証されますが、サイト自体が信頼できるかは別問題です。偽サイトがHTTPSを使っていることもあります。鍵マークとあわせて、ドメイン(サイトの住所)が本物かどうかを必ず確認しましょう。見慣れない文字が混ざっていないか、一字ずつ見る癖をつけると安全です。
HTTPとHTTPSは何が違うのですか?
やりとりの手順は同じで、違うのは中身を暗号化するかどうかだけです。HTTPは内容がそのまま流れるため、途中の経路で読み取られる危険があります。HTTPSは暗号化されているので、同じ経路を通っても中身が分かりません。利用者から見える違いは、鍵マークが出るかどうかだけです。
サイトをHTTPSにするには何が必要ですか?
サーバーに証明書を用意して設定する作業が必要です。無料で取得できる仕組みもあり、多くのレンタルサーバーやクラウドには設定を助ける機能が用意されています。作業自体はインフラの担当者や制作会社が行うのが一般的です。期限が来たら更新が必要なので、その運用まで含めて頼んでおくと安心です。
「404」や「500」という数字は何を表しているのですか?
サーバーからの返事に付く結果の番号です。404は指定された場所にページがないこと、500はサーバー側で処理に失敗したことを意味します。4で始まれば頼んだ側、5で始まればサーバー側に原因があるとおおまかに読めます。報告のときは言い換えず、そのまま伝えてください。
HTTPSにしないとどうなりますか?
ブラウザが「保護されていない通信」と警告を出し、利用者が不安を感じて離れてしまいます。入力した内容が途中で読み取られる危険もあります。いまはHTTPSが前提として扱われるため、公開するサイトでは必須と考えてよいです。社内だけで使うシステムでも、暗号化するのが当たり前になっています。