HTTPとHTTPSの違いをやさしく図解 — 鍵マークの意味とSSL/TLSの仕組み

公開: 2026年6月 カテゴリ: ネットワーク入門

アドレスバーの 🔒 鍵マーク。あれが付いているサイトと付いていないサイトは、何が違うのでしょうか。答えは 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つです。

① 盗聴されない(暗号化) … 途中で見られても中身が読めない。
② 相手が本物(認証) … 偽サイトではなく本物のサーバーだと確認できる。
③ 改ざんされない(完全性) … 途中で書き換えられていないことを保証。

HTTP(平文) 💻 ブラウザ 🖥️ サーバー password=abc123 👀 途中で丸見え・書き換え可能 HTTPS(暗号化)🔒 💻 ブラウザ 🖥️ サーバー x8#kZ@9!q... 🔒 途中で見られても読めない 同じHTTPでも、SSL/TLSで包むかどうかが分かれ道 鍵マーク🔒=「この通信はHTTPSで暗号化されています」の印
図1: HTTPは中身が丸見え、HTTPSは暗号化されて読めない。鍵マークはその印

鍵マークの正体 — SSL/TLSの2段構え

「暗号化」といっても、その裏では2種類の暗号を巧みに使い分けています。ここがHTTPSの核心です。

公開鍵暗号(非対称) … 「公開鍵」と「秘密鍵」のペアを使う。公開鍵で暗号化したものは、対応する秘密鍵でしか開けない。安全だが処理が重い
共通鍵暗号(対称) … 1つの「共通鍵」で暗号化・復号する。速いが、その鍵を安全に相手へ渡すのが難しい

そこでHTTPSは、最初の「鍵の受け渡し」だけ公開鍵暗号を使い(重いが安全に共通鍵のもとを届ける)、本番のデータは共通鍵暗号でやり取りします(速い)。両者のいいとこ取りです。この一連のやり取りを TLSハンドシェイク と呼びます。

① 最初だけ:公開鍵暗号 「共通鍵のもと」を 相手の公開鍵で暗号化して渡す 安全に鍵を共有(重いが一瞬) ② 本番:共通鍵暗号 共有した共通鍵で データを高速に暗号化 速い暗号でやり取り 「重いが安全」→「軽くて速い」へバトンタッチするのがHTTPSの賢いところ
図2: 鍵の受け渡しは公開鍵暗号、本番は共通鍵暗号。2つを組み合わせている

サーバー証明書と「信頼の連鎖」

「暗号化」だけでは不十分です。通信相手が本物かも確かめる必要があります(偽サイトと暗号通信しても意味がない)。そこで登場するのがサーバー証明書です。証明書には「このドメインの持ち主は本物です」という認証局(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アドレスの仕組み記事一覧