---
title: "HTTPSとは？通信の暗号化とWAF・ファイアウォールとの違い【基本情報技術者試験】"
description: "HTTPSの役割を、通信の暗号化・サーバ認証・改ざん検知の3点で整理します。WAFやファイアウォールとの違い、HTTPSでは防げない攻撃、科目Aで選択肢を切る判断基準を初心者向けに解説します。"
last_modified_at: "2026-07-13"
canonical_url: "https://stemtazoo.github.io/fe/https/"
section: "fe"
---

## まず結論

**HTTPSとは、WebブラウザとWebサーバの間のHTTP通信を、TLSによって保護する仕組み**です。

基本情報技術者試験では、次の3つを押さえます。

- 通信内容を暗号化する
- 接続先のWebサーバを確認する
- 通信内容の改ざんを検知する

選択肢に「ブラウザとWebサーバ間の通信を暗号化する」とあれば、HTTPSを選びます。

一方、SQLインジェクション対策やポート番号による通信制御は、HTTPSの役割ではありません。

## 直感的な説明

HTTPSは、WebブラウザとWebサーバの間に、**中身を見られにくくした安全な通信経路を作る**イメージです。

HTTPのままでは、通信途中で内容を盗み見られたり、書き換えられたりする危険があります。

HTTPSではTLSを使い、通信内容を暗号化します。

```text
HTTP
＋
TLSによる保護
＝ HTTPS
```

ただし、HTTPSはWebサイトへの攻撃をすべて防ぐ仕組みではありません。

守る中心は、**ブラウザとWebサーバの間の通信経路**です。

## 定義・仕組み

### HTTPSとは

HTTPSは、HTTP over TLSとも呼ばれます。

WebブラウザとWebサーバがHTTPでデータをやり取りするときに、TLSによる保護を加えます。

HTTPSの主な役割は次の3つです。

| 役割 | 内容 |
|---|---|
| 暗号化 | 通信内容を第三者に読まれにくくする |
| 認証 | 接続先が正しいWebサーバか確認する |
| 改ざん検知 | 通信途中で内容が変更されていないか確認する |

### サーバ証明書

HTTPSでは、Webサーバがサーバ証明書を提示します。

ブラウザは、その証明書を確認して、接続先の正当性を判断します。

ただし、HTTPSであることだけで、Webサイトの内容まで安全だと保証されるわけではありません。

悪意のあるWebサイトでもHTTPSを使用することはできます。

### HTTPとの違い

| 項目 | HTTP | HTTPS |
|---|---|---|
| 通信内容 | 原則として平文 | TLSで暗号化 |
| サーバ確認 | なし | 証明書を利用 |
| 改ざん検知 | なし | TLSで確認 |
| 代表的なポート番号 | 80 | 443 |

## どんな場面で使う？

HTTPSは、Web上で機密性が必要な情報を送受信する場面で使います。

たとえば、次のような場面です。

- ログインIDやパスワードを送信する
- 個人情報を入力する
- クレジットカード情報を送信する
- Webメールを利用する
- オンラインショッピングを利用する

現在では、機密情報を扱うページだけでなく、Webサイト全体をHTTPS化することが一般的です。

## よくある誤解・混同

### 誤解1：HTTPSならSQLインジェクションを防げる

これは誤りです。

HTTPSは通信内容を暗号化しますが、不正なSQL文そのものを無効にするわけではありません。

SQLインジェクション対策では、プレースホルダなどの安全な実装や、[WAFとは？Webアプリへの攻撃を防ぐ仕組み](https://stemtazoo.github.io/fe/waf/)を利用します。

```text
Webアプリへの攻撃を防ぐ
→ WAFやアプリ側の対策
```

### 誤解2：HTTPSならポート番号による通信制御ができる

これはファイアウォールやパケットフィルタリングの役割です。

HTTPSは通信内容を保護しますが、どの通信を通すかを決める仕組みではありません。

IPアドレスやポート番号による制御は、[パケットフィルタリングとは？通信を許可・拒否する仕組み](https://stemtazoo.github.io/fe/packet-filtering/)で整理できます。

```text
IPアドレス・ポート番号で制御
→ ファイアウォール
```

### 誤解3：HTTPSならWebサイトは必ず安全

これも誤りです。

HTTPSは通信経路を保護しますが、Webサイト自体が安全であることまでは保証しません。

```text
HTTPS
＝ 通信経路を保護する
≠ Webサイトの内容が必ず安全
```

### 誤解4：HTTPSならすべての攻撃を防げる

HTTPSで防ぎやすくなるのは、盗聴や通信途中の改ざんです。

一方、次のような攻撃は別の対策が必要です。

- SQLインジェクション
- クロスサイトスクリプティング
- マルウェア感染
- 不正ログイン
- DDoS攻撃

### HTTPS・WAF・ファイアウォールの違い

| 技術 | 主な役割 | 判断キーワード |
|---|---|---|
| HTTPS | 通信内容を保護する | 暗号化、証明書、改ざん検知 |
| WAF | Webアプリへの攻撃を防ぐ | SQLインジェクション、XSS |
| ファイアウォール | 通信を許可・拒否する | IPアドレス、ポート番号 |

## 確認問題（基本情報技術者試験対策）

HTTPSの主な機能として、最も適切なものはどれか。

- ア. Webアプリケーションに送られた不正なSQL文を無効化する。
- イ. IPアドレスとポート番号を基準に通信を遮断する。
- ウ. WebブラウザとWebサーバの間の通信を暗号化する。
- エ. 利用者の端末に保存されたマルウェアを駆除する。

<details markdown="1">
<summary>▶ クリックして答えと解説を見る（ここを開く）</summary>

**正解：ウ**

### 解説

- ア：SQLインジェクション対策です。アプリ側の安全な実装やWAFを使います。
- イ：ファイアウォールやパケットフィルタリングの機能です。
- ウ：HTTPSの機能です。TLSによって通信を保護します。
- エ：マルウェア対策ソフトなどの役割です。

👉 判断ポイント  
**通信内容を暗号化するならHTTPS、Webアプリ攻撃ならWAF、IPアドレスやポート番号で制御するならファイアウォール**と切り分けます。

</details>

## まとめ（試験直前用）

HTTPSは、WebブラウザとWebサーバの間のHTTP通信をTLSで保護する仕組みです。

試験直前は、次の3点を押さえます。

- 通信の暗号化・サーバ認証・改ざん検知 → HTTPS
- SQLインジェクションやXSS対策 → WAFやアプリ側の対策
- IPアドレスやポート番号による制御 → ファイアウォール

**「通信経路を保護する」と書かれていたらHTTPS**と判断しましょう。
