基本情報 平成25年度 秋期 問37:テクノロジ系に関する問題
手順に示す処理を実施したとき, メッセージの改ざんの検知の他に, 受信者 B がセ キュリティ上できることはどれか。
- aメッセージが送信者 Aからのものであることの確認 メッセージの改ざん部位の特定正答
- bメッセージの盗聴の検知
- cメッセージの漏えいの防止
- dH ざさへぺい
AI解説(初心者・標準・上級)
理解度に合わせて3レベルの解説を無料で読めます。
答えは a「メッセージが送信者Aからのものであることの確認」 です。
この仕組みはディジタル署名。Aさんしか持っていない「秘密鍵」でハンコを押し、誰でも持てるAさんの「公開鍵」でハンコの本物確認をする方法です。
→ 確認できるのは「改ざんされていないこと」と「確かにAさんが書いたものであること」(=本人確認)の2つ。
👉 覚え方:「秘密鍵でハンコ=本人しか作れないハンコ」。
ほかの選択肢:b 盗聴検知=そもそも署名は盗聴を防がない/c 漏えい防止=それは暗号化の役割/d 文字化け。
なぜこれが正解か
正解は a。ディジタル署名(送信者の秘密鍵で署名→受信者は送信者の公開鍵で検証)で実現できるのは:
1. 完全性(改ざんの検知)
2. 真正性/認証(送信者本人であることの確認)
3. 否認防止(送信者が「送ってない」と言えなくする)
の3つ。問題文で「改ざんの検知」は既に挙げられているので、残るは「送信者の確認」=認証機能。
各選択肢の解説
- b 盗聴の検知:ディジタル署名はメッセージ本文を暗号化していないので盗聴は防げない(防ぐのは暗号化の役割)。
- c 漏えいの防止:暗号化が必要(公開鍵暗号でメッセージ自体を暗号化)。
- d 文字化けで判定不能。
覚え方・ひっかけ注意
「ディジタル署名=完全性+真正性+否認防止/暗号化=機密性」と役割を分離して覚える。S/MIMEやPGPは署名と暗号化を両方使う。鍵の使い方が逆: 署名は秘密鍵で署名→公開鍵で検証/暗号化は公開鍵で暗号→秘密鍵で復号。混同しやすいので「秘密鍵は本人だけ=署名(本人証明)/公開鍵で送る=暗号化(誰でも送れる)」と紐づける。
理論的背景
ディジタル署名は公開鍵暗号方式(非対称鍵)を基盤とする認証技術。送信者がメッセージのハッシュ値(SHA-256等)を自身の秘密鍵で暗号化したものが署名で、受信者は送信者の公開鍵で署名を復号→受信メッセージのハッシュ値と照合する。一致すれば「改ざんなし」かつ「送信者の秘密鍵で署名された」と確認できる。実現されるセキュリティ要件は CIA + AN: Integrity(完全性)、Authentication(認証)、Non-repudiation(否認防止)。一方Confidentiality(機密性)は実現しないため、別途暗号化が必要。
実務での使われ方
署名アルゴリズム: RSA-PSS、ECDSA(楕円曲線)、EdDSA(Ed25519)。EdDSAは近年主流で高速・短鍵長・実装安全性に優れる。実装場面: ①TLSサーバ証明書(X.509、PKI)でサーバ認証、②コード署名(Authenticode、署名済みJAR)で配布物の真正性保証、③S/MIME・PGPによるメール署名、④ブロックチェーンのトランザクション署名、⑤JWT(JSON Web Token)の署名部。本問の文脈(KikiMiruプロダクトでも実装)ではES256/JWKSによる非対称鍵検証が運用されている。
試験での位置づけ
FE/AP/SCで頻出。①公開鍵暗号と秘密鍵の使い分け、②ハッシュ関数の役割、③PKIと認証局(CA)、④証明書チェーン、⑤否認防止の意味、が定番論点。「機密性 vs 完全性 vs 真正性 vs 否認防止」の4要件のマッピング問題は鉄板。
選択肢の発展補足
ハッシュ関数は一方向性・衝突困難性が必須要件。MD5・SHA-1は衝突攻撃で実用上破られ非推奨(RFC 6151、RFC 6194)、現在はSHA-256/SHA-3が標準。署名のみで機密性を確保したい場合は「暗号化→署名」または「署名→暗号化」の順序を選ぶ必要があり、それぞれ攻撃シナリオ(信頼転送問題、SUF-CMA安全性)が異なる。S/MIMEは通常「署名→暗号化」を採用。タイムスタンプ署名(TSA、RFC 3161)を組み合わせると「いつ署名したか」も証明でき、長期署名(PAdES、JAdES等)の基盤となる。
出典:IPA(情報処理推進機構)公式 基本情報技術者試験 平成25年度 秋期 問37/ 公的機関配布資料につき出典明記の上引用。解説は合格ナビによる独自AI解説です。