セキュリティ

基本情報技術者試験SSL/TLSハンドシェイク」の問題

テクノロジ系セキュリティ難易度:normal
SSL/TLSのハンドシェイクで行われる処理として最も適切なものはどれか。
サーバ証明書でサーバを認証し、以降の通信に使う共通鍵を安全に共有する
通信する全データを公開鍵暗号だけで暗号化し共通鍵は一切用いない
利用者IDとパスワードを平文でやり取りしアプリケーション層で本人確認だけを行う
接続後に最初の本文を送ってから事後的にサーバの正当性を確認する
正解
サーバ証明書でサーバを認証し、以降の通信に使う共通鍵を安全に共有する

TLSハンドシェイクはサーバ証明書を用いてサーバの正当性を確認し、その後の本文暗号化に使う共通鍵(セッション鍵)を公開鍵技術や鍵交換で安全に共有する。本文は高速な共通鍵で暗号化されるため正しい。

?選択肢ごとの解説

ア ○TLSハンドシェイクはサーバ証明書を用いてサーバの正当性を確認し、その後の本文暗号化に使う共通鍵(セッション鍵)を公開鍵技術や鍵交換で安全に共有する。本文は高速な共通鍵で暗号化されるため正しい。
イ ×全データを公開鍵暗号だけで暗号化するのは処理が遅く非現実的で、TLSは鍵共有に公開鍵技術、本文に共通鍵を使うハイブリッド構成を採るため誤りである。
ウ ×IDとパスワードを平文でやり取りするのはTLSの目的に反し、TLSは通信路を暗号化して盗聴を防ぐ。本人確認だけというのも役割を矮小化している。
エ ×サーバの正当性は本文送信前のハンドシェイク段階で確認するのが原則であり、本文を送ってから事後確認するという順序は誤りである。

くわしく

TLSは公開鍵技術でサーバ認証と鍵共有を行い、確立したセッション鍵による共通鍵暗号で本文を暗号化するハイブリッド方式である。証明書はCAの署名で正当性が保証され、改ざん検出にはMACを併用する。これにより機密性・完全性・サーバ認証を実現する。

本番での押さえどころ

試験のコツ

TLSは『証明書でサーバ認証→共通鍵を安全に共有→本文は共通鍵で暗号化』の流れで覚える。ハイブリッド方式の代表例である。

覚え方

ハンドシェイク=握手。まず相手を確認(証明書)し合言葉(共通鍵)を決めてから本題に入る、とイメージする。

よくある誤り

TLSが全通信を公開鍵で暗号化すると誤解する例が多い。実際は鍵共有が公開鍵、本文が共通鍵というハイブリッドである。

セキュリティの他の問題

この問題を、AIの8-ways解説つきで。

基本情報技術者試験の演習を、一問ごとに「なぜ」まで。まずは無料で。

無料ではじめる →

ukamiru 過去問 · 基本情報技術者試験 · fe-a3-0285

【基本情報技術者試験】SSL/TLSハンドシェイクの問題 — 解答・解説|ukamiru 過去問