HTTPSとは? 鍵マークが守っているもの・守れないもの
HTTPSは、Webのやり取り(HTTP)を暗号で守って送る方式です。途中で盗み見られない、書き換えられたら気づける、相手が本物のサイトだと確かめられる、の3つを守ります。ただし鍵マークは「通信が守られている」印にすぎず、サイトが信頼できるという意味ではありません。
この記事でわかること
- HTTPとHTTPSの違いと、HTTPSが守る3つのこと
- 初対面のブラウザとサーバが、秘密の鍵を共有するしくみ
- 証明書と認証局が、相手が本物かを確かめるしくみ
- 鍵マークがあっても守れないこと
前提知識: 特にありません。「インターネットでデータが届くしくみ」を知っていると、より読みやすくなります。
身近なところでは
ブラウザでWebページを開くと、アドレスが「https://」で始まることがあります。ネットで買い物やログインをするとき、「鍵マークを確かめましょう」と教わった人もいるでしょう。
ところが最近のChromeでは、アドレス欄から鍵マークが消えています。一方で、鍵マークのついた偽サイトにだまされる被害も起きています。鍵マークは何を守っていて、何を守っていないのでしょうか。この記事では、そのしくみを順に見ていきます。
HTTPとは: 「ページをください」という会話の決まり
ブラウザは、ページを表示するとき、サーバに依頼を送ります。サーバとは、求めに応じてデータを渡すコンピュータです。「このページをください」「はい、どうぞ」という会話の形を決めた決まりごとをHTTPと呼びます。
HTTPの会話は、そのままでは誰でも読める形で送られます。インターネットでは、データは小さなかたまりに分かれ、たくさんの機器に中継されて届きます。途中の機器や、同じWi-Fiにいる人は、読もうと思えば中身を読めてしまいます。中継のしくみは「インターネットはどうやってデータを届けるの?」で説明しています。
HTTPSの「S」は、Secure(安全な)の頭文字です。会話の中身はHTTPと同じで、その会話を他人に読めない形に包んで送ります。包むための決まりごとをTLSと呼びます。つまりHTTPSは、「HTTPをTLSで守ったもの」です。
TLSの前身は、1990年代にNetscape社が作ったSSLという方式です。SSLは弱点が見つかって使われなくなり、改良を重ねたTLSに置きかわりました。「SSL証明書」のように、古い名前は今も残っています。
HTTPSが守る3つのこと
通信の心配ごとは、大きく3つに分けられます。情報セキュリティでは、これを「盗聴・改ざん・なりすまし」と呼びます。HTTPSは、この3つにそれぞれの対策を持っています。
| 心配ごと | 例 | HTTPSの対策 |
|---|---|---|
| 盗聴(盗み見) | 入力したパスワードを読まれる | 暗号化 |
| 改ざん(書き換え) | 表示される振込先を書き換えられる | 書き換えの検出 |
| なりすまし | 偽のサーバが本物のふりをする | 証明書による確認 |
暗号化とは、決まった手順と「鍵」を使って、データを意味の読めない形に変えることです。正しい鍵を持つ相手だけが、元に戻せます。鍵の正体は、とても長い数です(ここでは計算の中身は省きます)。
書き換えの検出では、送るデータのひと区切りごとに、鍵を使って計算した短い確認用の値を添えます。途中で1文字でも変えられると、受け取った側で計算が合わなくなります。そのときは、つながりそのものを打ち切ります。
3つ目の「相手が本物か」は、後で説明する証明書で確かめます。まずは、暗号化に使う鍵をどう用意するかを見ていきましょう。
初対面の相手と、どうやって鍵を共有するのか
暗号化と元に戻す処理に、同じ鍵を使う方式を共通鍵暗号と呼びます。計算が軽いので、大きなデータも速く暗号化できます。ただし、ブラウザとサーバは初対面です。鍵をそのまま送れば、途中で盗み見られてしまいます。
この問題を解いたのが、公開鍵暗号の考え方です。対になった2つの鍵を使い、一方は誰に見せてもよい「公開鍵」、もう一方は本人だけが持つ「秘密鍵」にします。公開鍵から秘密鍵を割り出すことは、今のコンピュータでは現実的な時間でできないように作られています。
今のHTTPSの主な方法では、鍵そのものは送りません。ブラウザとサーバは、それぞれ使い捨ての秘密の数を手元で作ります。これが秘密鍵にあたります。そこから計算した「見せてもよい材料」(公開鍵にあたるもの)だけを、互いに送り合います。相手の材料に自分の秘密を組み合わせると、両方で同じ鍵ができあがります。
途中で材料を盗み見ても、手元の秘密がなければ同じ鍵は作れません。この方法を、考えた2人の名前からディフィー・ヘルマン鍵交換と呼びます。1976年に発表された考え方がもとになっています。できた鍵は、そのあとの共通鍵暗号に使います。重い計算は最初だけにして、本番の通信は軽い共通鍵暗号で行うわけです。
証明書と認証局: 相手が本物かを確かめる
話している相手が本物の「example.com」だと、どうすれば確かめられるでしょうか。そこで使うのが「証明書」です。証明書は、サイトの名前と、そのサイトの公開鍵の組を書いた、電子的な身分証です。
証明書には、発行した機関の電子的なはんこが押されています。これをデジタル署名と呼びます。署名は発行した機関の秘密鍵でしか作れず、誰でもその機関の公開鍵で確かめられます。証明書の中身を1文字でも変えると、確かめたときに合わなくなります。
証明書を発行する機関を認証局と呼びます。認証局は、申し込んだ人がそのドメイン(サイトの名前)を本当に管理しているかを確かめてから発行します。ブラウザやOSには、信頼する認証局の一覧が最初から組み込まれています。ブラウザは署名を順にたどり、この一覧にたどり着けるかを確かめます。
ただし、証明書は誰でも見られる公開の情報です。そのためサーバは、証明書を見せるだけでなく、対になる秘密鍵を持っていることも示します。具体的には、その場のやり取りに秘密鍵で署名して送ります。ブラウザは、開いたURLと証明書の名前が合うかや、期限が切れていないかも確かめます。どこかに問題があれば、警告を出して接続を止めます。
以前は、証明書の多くは有料で、手続きにも手間がかかりました。そこで、無料で自動的に証明書を発行する認証局「Let's Encrypt」が作られました。2015年9月に、最初の証明書を出しています。運営するのは米国の非営利団体ISRGです。2025年末には、約7億6,200万のサイトがその証明書を使っていると報告しています。
つながるまでの流れ
ここまでをまとめると、HTTPSでつながるときには、次のことが起こります。図は、2018年に規格になったTLS 1.3という版を、簡単にしたものです。
準備が終わると、「このページをください」というHTTPの依頼と返事が、できた鍵で暗号化されて流れます。ページを開くたびに、この準備を毎回最初からするわけではありません。一度作った情報を使い回して、準備を短くする工夫もあります。
鍵マークがあっても守れないこと
1. サイトが信頼できるかどうか
鍵マークが示すのは、「この名前のサイトと、暗号で守られた通信ができている」ことだけです。だます目的のサイトでも、自分で取ったドメインなら証明書を取れます。実在の会社などを装い、偽のサイトでパスワードなどを入力させる詐欺をフィッシングと呼びます。
フィッシング対策の団体APWGの報告では、HTTPSを使うフィッシングサイトは2018年10〜12月で約47%でした。2020年7〜9月には約80%に増えています。見るべきなのは鍵マークではなく、アドレス欄のドメイン名が本物かどうかです。メールやSMSのリンクから開かず、ブックマークや公式アプリから入るほうが安全です。
2. 届く中身が安全かどうか
HTTPSは、運ぶ途中を守るだけで、運ぶ中身は調べません。ウイルスなどの悪いプログラムも、暗号化されたまま届きます。また、届いたあとのデータの扱いは運営者しだいです。サーバから個人情報が漏れる事故は、HTTPSでは防げません。
3. どのサイトを見ているか
HTTPSで隠れるのは、ページの中身と、URLのうちドメイン名より後ろの部分です。例えば「example.com/account/」なら、「/account/」の部分は暗号化されます。入力したパスワードや、ログインの状態を保つための小さなデータ(Cookie)も守られます。
一方、通信相手のIPアドレス(機器の番号)は、届けるために見えるままです。通信の量や時刻もわかります。さらに、サイトの名前(ドメイン名)も、多くの場合は途中から読み取れます。理由は2つあります。
1つは、名前から番号を調べるDNSの問い合わせです。この問い合わせは、昔からの方式では暗号化されずに送られます。
もう1つは、暗号化の準備のときに、ブラウザが「つなぎたいサイトの名前」を伝えることです。1台のサーバが多くのサイトを受け持つことがあるため、この情報が必要になります。この欄をSNIと呼び、これまでは暗号化されずに送られてきました。
どちらも隠す技術はあります。DNSの問い合わせを暗号化する方式には、DNS over HTTPSなどがあります。SNIを暗号化するECHも、2026年3月に規格になりました。ただし、使われるかどうかは、ブラウザやサイト、ネットワークの設定しだいです。今のところ、「HTTPSなら、どのサイトを見たか誰にもわからない」とは言えません。
会社のネットワークには、もう一つ注意点があります。会社によっては、社員のパソコンの「信頼する認証局の一覧」に、会社独自の認証局を加えます。そのうえで、HTTPSをいったん解いて中身を検査する装置を途中に置きます。ウイルスや情報の持ち出しを見つけるためです。この場合、鍵マークが出ていても、会社の装置は中身を読めます。
ブラウザの表示も変わってきた
Googleは2023年5月、Chromeのアドレス欄の鍵マークを別のアイコンに替えると発表しました。つまみが並んだ形の、設定を表すアイコンです。2023年9月のChrome 117から、この表示になっています。理由の1つは、鍵マークが誤解されていたことです。Googleの2021年の調査では、鍵マークの正確な意味を理解していた参加者は11%だけでした。
もう1つの理由は、HTTPSが当たり前になったことです。今は、HTTPSであることより、HTTPSでないことを知らせるほうが役に立ちます。ChromeはHTTPのページに「保護されていない通信」と表示します。さらにGoogleは2025年10月、ある設定を最初から有効にする計画を発表しました。HTTPSでない公開のサイトを初めて開く前に、確認を求める設定です。2026年10月のChrome 154から、すべての利用者で有効にする予定としています。
よくある誤解
誤解: 鍵マークがあるサイトは、安全で信頼できる
実際は、鍵マークが示すのは「その名前のサイトと、守られた通信ができている」ことだけです。偽のサイトでも証明書は取れます。HTTPSのサイトがまだ少なかったころ、「鍵マークを確かめて」と広く呼びかけられたことが、誤解のもとになっています。
誤解: HTTPSなら、どのサイトを見たかも誰にもわからない
実際は、相手のIPアドレスは見えますし、サイトの名前もDNSやSNIから読み取れることが多くあります。隠れるのは、ページの中身やURLの後半、入力した内容です。社内のネットワークでは、会社の装置が中身まで検査していることもあります。
誤解: HTTPSでは、共通鍵をサーバの公開鍵で暗号化して送っている
実際は、それはTLS 1.2までの版で使えた方法の一つです。TLS 1.3では、この方法はなくなりました。公開鍵の技術で鍵を用意するときは、材料を送り合って同じ鍵を作る方法だけです。古い方法では、サーバの秘密鍵が後で盗まれると、記録された過去の通信まで読まれるおそれがあったからです。
ただし、試験の答えが間違いになるわけではありません。「公開鍵の技術で鍵を用意し、本番は共通鍵暗号で送る」組み合わせを、資格試験では「ハイブリッド暗号方式」と呼びます。教科書でよく見る「共通鍵を相手の公開鍵で暗号化して送る」形は、その基本形として正しい説明です。変わったのは、今のHTTPSでの鍵の用意のしかたです。
数字で見る
| 項目 | 数字 | 時点・出典 |
|---|---|---|
| Chromeで、HTTPSで開かれたページの割合 | 2015年は約30〜45%、2020年ごろから約95〜99%(OSなどで差がある) | Google(2025年10月の発表) |
| Let's Encryptの証明書を使うサイト | 約7億6,200万 | 2025年末、ISRG |
| HTTPSを使うフィッシングサイト | 約47%→約80% | 2018年10〜12月→2020年7〜9月、APWG |
| 鍵マークの意味を正しく理解していた参加者 | 11% | Googleの2021年の調査 |
| 証明書の有効期間の上限 | 200日→100日→47日 | 2026年3月・2027年3月・2029年3月から、CA/Browser Forumの決定(2025年) |
| TLS 1.3の準備にかかるやり取り | 1往復 | TLS 1.3の規格(2018年) |
ほとんどのページがHTTPSで開かれる今、鍵マークで見分けられるのは、残りわずかなHTTPのページだけです。だからこそ、鍵マークの有無より、ドメイン名を確かめる習慣が大切になります。
証明書の期限が短くなる理由の1つは、問題のある証明書を取り消すしくみが、いつも確実には働かないことです。期限が短ければ、秘密鍵が盗まれたり、ドメインの持ち主が変わったりしても、古い証明書を使える期間が短くて済みます。
もっと詳しく学ぶ
- 公開鍵暗号の種類を表で見る: RSA暗号・楕円曲線暗号・耐量子計算機暗号の違い(量子コンピュータへの備えも)
- HTTPの版の違い: HTTP/1.1・HTTP/2・HTTP/3の違い(HTTP/3では、暗号化が通信の決まりに組み込まれています)
- だましサイトの被害を減らす: 多要素認証(パスワードのほかに、スマホなど別のものも使って本人を確かめる方法)
- パスワードの強さを計算で試す: パスワードの総当たり時間の計算ツール
- 会社のネットワークの守り: ファイアウォール・IDS・IPS・WAFの違い、VPN(通信全体を暗号化した仮想的な専用の道。社外から会社のネットワークにつなぐときなどに使う)