HTTPとHTTPSの違いをやさしく図解 — 鍵マークの意味とSSL/TLSの仕組み
アドレスバーの 🔒 鍵マーク。あれが付いているサイトと付いていないサイトは、何が違うのでしょうか。答えは HTTP か HTTPS か。この記事では、両者の違い、鍵マークの意味、そして通信を守る SSL/TLS の仕組みを、図解でやさしく解説します。
HTTPとは — Webの通信ルール
HTTP(HyperText Transfer Protocol)は、ブラウザとWebサーバーがやり取りするための約束事(プロトコル)です。「このページをください」「はい、どうぞ」というリクエストとレスポンスを、このルールに沿って交換します。私たちがWebを見るとき、裏では必ずHTTPが動いています。
ただし、素のHTTPには大きな弱点があります。通信が暗号化されていない(平文)のです。つまり、通信経路の途中(Wi-Fiルーターや通信事業者など)で中身を盗み見たり、書き換えたりできてしまう危険があります。パスワードやクレジットカード番号を平文で送るのは、はがきに暗証番号を書いて送るようなものです。
HTTPSとは — HTTPを暗号化したもの
HTTPS(HTTP Secure)は、HTTPの通信を SSL/TLS で暗号化したものです。「HTTP over TLS」とも呼ばれます。HTTPSが守るのは、大きく次の3つです。
① 盗聴されない(暗号化) … 途中で見られても中身が読めない。
② 相手が本物(認証) … 偽サイトではなく本物のサーバーだと確認できる。
③ 改ざんされない(完全性) … 途中で書き換えられていないことを保証。
鍵マークの正体 — SSL/TLSの2段構え
「暗号化」といっても、その裏では2種類の暗号を巧みに使い分けています。ここがHTTPSの核心です。
公開鍵暗号(非対称) … 「公開鍵」と「秘密鍵」のペアを使う。公開鍵で暗号化したものは、対応する秘密鍵でしか開けない。安全だが処理が重い。
共通鍵暗号(対称) … 1つの「共通鍵」で暗号化・復号する。速いが、その鍵を安全に相手へ渡すのが難しい。
そこでHTTPSは、最初の「鍵の受け渡し」だけ公開鍵暗号を使い(重いが安全に共通鍵のもとを届ける)、本番のデータは共通鍵暗号でやり取りします(速い)。両者のいいとこ取りです。この一連のやり取りを TLSハンドシェイク と呼びます。
サーバー証明書と「信頼の連鎖」
「暗号化」だけでは不十分です。通信相手が本物かも確かめる必要があります(偽サイトと暗号通信しても意味がない)。そこで登場するのがサーバー証明書です。証明書には「このドメインの持ち主は本物です」という認証局(CA)の署名が付いています。
サーバー証明書は中間認証局が署名し、中間認証局はルート認証局が署名しています。そしてルート認証局の証明書は、ブラウザやOSに最初から組み込まれていて無条件に信頼されています。この起点までたどれれば「本物」と判断できます。これが信頼の連鎖(チェーン・オブ・トラスト)です。期限切れ・ドメイン不一致・たどれない証明書のときは、ブラウザが「保護されていない通信」と警告します。
🔐 鍵マークの裏側を動かして見るなら:当サイトのSSL/TLS証明書の可視化で、TLSハンドシェイク(暗号方式の合意→証明書の検証→鍵交換→暗号化通信開始)と、信頼の連鎖の検証を1ステップずつ確認できます。「🔒 が成立する瞬間」まで追えます。
HTTPSは今や必須
かつてHTTPSは「ログインや決済ページだけ」でしたが、今は全ページHTTPS が当たり前です。理由は、①Googleが検索順位でHTTPSを優遇する、②ブラウザがHTTPサイトに「保護されていない通信」と警告を出す、③無料でSSL証明書を取れる(Let's Encrypt など)から。個人サイトでも簡単にHTTPS化できます(このinfravis.devも、Cloudflare経由で自動的にHTTPSが有効です)。
基本情報技術者試験ではこう出る
「公開鍵暗号と共通鍵暗号の違い」「ディジタル証明書を発行するのは(→認証局CA)」「ルート証明書の役割」が定番です。とくに“暗号化は受信者の公開鍵で・ディジタル署名は送信者の秘密鍵で”という対応関係は混同しやすい要注意ポイント。HTTPSは「HTTP+TLS」で、TLSが暗号化と認証を担う、という全体像を押さえましょう。
よくある質問
Q. HTTPSなら100%安全ですか?
A. HTTPSは「通信経路」を守りますが、サイト自体が偽物・悪意ある場合は別問題です。鍵マークは「通信が暗号化され、証明書上のドメインと通信している」ことを示すだけで、「そのサイトが善良」とは保証しません。フィッシングサイトもHTTPSを使うことがあります。
Q. SSLとTLSは違うものですか?
A. TLSはSSLの後継です。SSLは古く脆弱性があり現在は使われていませんが、慣習的に「SSL証明書」「SSL化」と呼び続けられています。実際に動いているのはTLS(TLS 1.2 / 1.3)です。
まとめ
HTTPは平文、HTTPSはSSL/TLSで暗号化・認証したHTTP。鍵マークはその印です。裏側では、公開鍵暗号で鍵を安全に渡し、共通鍵暗号で高速にやり取りし、サーバー証明書と信頼の連鎖で相手が本物かを確かめています。仕組みは可視化で動かすと一気に腹落ちします。
関連ページ: SSL/TLS証明書の可視化 / ネットワーク境界の可視化 / DNSとは / IPアドレスの仕組み / 記事一覧