たとえるなら

このサイトのマスコット、帽子をかぶった青い小鳥のルートンが旗を振っている

手紙のやりとりのマナーだと思ってください。HTTPは「はがき」で、配達の途中でのぞかれると内容が読めてしまいます。HTTPSは「封をした封筒」で、途中で盗み見られても中身はわかりません。パスワードやクレジットカード番号を送るなら、封筒が安心ですよね。

HTTP(はがき) 通信の中身が丸見え 途中でのぞかれ得る HTTPS(封をした封書) 通信を暗号化して守る 鍵マークが目印 いまの標準はこちら
同じ手紙でも、はがきと封書では安心感が違う。いまは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が前提として扱われるため、公開するサイトでは必須と考えてよいです。社内だけで使うシステムでも、暗号化するのが当たり前になっています。

関連用語

関連する記事

エンジニア職種図鑑

この言葉を使って働く人たちの仕事を、7つの職種で

ITの学び方ガイド

もっと知りたくなったら。教材の選び方を3ステップで