PCのブラウザでURLが “https://” で始まるサイトを閲覧したときの通信の暗号化に関する記述のうち, 適切なものはどれか。
平成27年度 春期 ITパスポート試験 問83
この問題の解説と、これまでの解答の記録です。
問 83HTTPS = HTTP + TLS (SSL)
不正解ア
「PC から Web サーバへの通信だけが暗号化される」は誤り。確かにパスワードやクレジットカード番号など送信データの保護は HTTPS の代表的な目的だが、TLS はコネクション単位で暗号化するので送信方向だけを選んで暗号化する仕組みではない。サーバからの応答も同じセッション鍵で暗号化される。
不正解イ
「Web サーバから PC への通信だけが暗号化される」も誤り。応答データだけを暗号化して要求データを平文で流す方式ではない。もしそうなら、利用者が入力した ID やパスワードが平文で流れてしまい、HTTPS を使う意味が失われる。
- ウ
正解 「https://」で始まる URL の通信は、HTTP を TLS (SSL) で包んだ HTTPS で行われる。TLS はハンドシェイクでサーバ証明書の確認と共通鍵 (セッション鍵) の共有を行い、その鍵を使って以後のデータをやり取りするコネクション全体を暗号化する。暗号化は「送信方向だけ」「受信方向だけ」といった片方向の設定ではなく、確立された TLS コネクション上を流れるデータすべてに適用される。したがって、PC から Web サーバへ送るリクエスト (入力フォームの内容や Cookie など) も、Web サーバから PC へ返すレスポンス (HTML やページ内のデータ) も、ともに暗号化される。この「双方向の通信が暗号化される」と述べた「ウ」が適切である。
不正解エ
「どちらの方向を暗号化するかは Web サーバの設定による」は誤り。TLS の仕様上、方向ごとに暗号化の有無を切り替える設定は存在しない。サーバ側で設定できるのは、HTTPS を使うかどうか、どの暗号化方式 (暗号スイート) やプロトコルバージョンを許可するか、どの証明書を使うかなどであって、片方向だけ暗号化するという選択肢はない。
- HTTPS = HTTP + TLS (SSL)。サーバ証明書による相手の確認と共通鍵の共有を行い、確立したコネクション上のデータを暗号化する仕組みで、盗聴・改ざんを防ぐ。
- TLS の暗号化はコネクション単位で双方向に効く。リクエスト (PC → サーバ) もレスポンス (サーバ → PC) も暗号化され、方向ごとに有効・無効を選ぶ設定は存在しない。