デジタル署名とPKIの試験問題への適用
署名検証の成功表示は、何でも信用してよいという意味ではありません。鍵の取り違え、証明書の連鎖、再送、秘密鍵の共有を事例で検討し、どの条件を確認した結果なのか説明できるようにします。
この単元で学ぶこと
- 署名の生成鍵と検証鍵を区別する
- 証明書と発行者の役割を説明する
- 信頼の連鎖・期間・対象・失効を確認する
- 署名だけでは保証しない性質を判断する
本文解説
二つの署名を分ける Aの文書署名はAの秘密鍵で生成され、Aの公開鍵で検証します。一方、その公開鍵を含むAの証明書には発行者CAの署名が付き、CAの公開鍵で検証します。誰が何に署名したかを表にすると、文書と証明書の鍵を取り違えにくくなります。
鍵のすり替え 攻撃者の公開鍵をAのものとして登録すれば、攻撃者は対応する秘密鍵で有効な署名を作れます。数学的な検証の成功だけでは、登録した鍵がAのものだと証明できません。承認された信頼の起点や安全な鍵確認の手順が必要です。
連鎖の検証 末端証明書の発行者が中間CAなら、その中間CAの鍵を上位へたどり、信頼済み起点へ結び付けます。各署名だけでなくCAとしての制約、有効期間、用途、対象などの条件も確認します。相手が自己署名のルートを添付しただけで新たな信頼を与えてはいけません。
期限と失効は別 利用できる期間の途中でも秘密鍵漏えいなどで証明書は失効し得ます。CRLやOCSP等を利用する検証では、状態が確認できないことと未失効を区別します。接続不能時の扱いをその場の都合で決めず、用途とリスクに応じた方針に従います。
再送と新しさ 同じ署名付き送金依頼を二度送っても、署名そのものは二度とも検証できる場合があります。署名の有効性は取引の一回性を意味しません。取引IDの重複管理、要求の時刻や有効期間、必要ならチャレンジなどを設計し、再送を業務処理へ重ねて適用しないようにします。
時刻と長期保管 有効な署名だけで、信頼できる作成時刻まで自動的に確定するわけではありません。過去の署名を長期に検証する用途では、信頼できる時刻証拠や当時の証明書・失効状態などを保存する方式を検討します。現在の期限切れだけから過去の文書が改ざんされたとは断定できません。
個人への結び付きと鍵管理 部署全員がA名義の秘密鍵を持てば、誰でも同じ鍵による署名を生成できます。A本人だけの承認を主張するなら、この共有運用は根拠を弱めます。秘密鍵の利用権限、保管、漏えい時の利用停止・交換・失効を合わせて管理します。
検証対象と業務内容 署名対象が全バイトなら、末尾の改行追加でも対象は変わります。失敗時は対象、表現、鍵、方式を調べます。逆に署名が成功しても報告書の計算ミスはあり得るため、業務上の正しさや承認権限を別に確認します。秘匿が必要な本文には暗号化等の保護も必要です。
図解
重要ポイント
- 署名生成は署名者の秘密鍵、検証は対応する公開鍵。
- 証明書の署名検証には発行者の公開鍵を使う。
- 信頼の起点は相手が添付したという理由だけで追加しない。
- 期間・対象・用途・失効など受入れ条件も確認する。
- 秘匿・真実性・新しさは署名だけでは保証しない。
間違えやすい点
- 「秘密鍵で本文を暗号化」と全方式を一般化しない。
- 証明書の有効期間と失効状態を同一視しない。
- 署名者名義の秘密鍵を共有すると個人との結び付きが弱くなる。
用語解説
- デジタル署名
- 秘密鍵で生成し、対応する公開鍵でデータとの対応を検証する署名の仕組み。
- 公開鍵証明書
- 公開鍵と主体の識別情報との結び付きを示し、発行者の署名を含むデータ。
- 認証局(CA)
- 所定の手順で公開鍵証明書を発行する主体。
- 信頼の起点
- 検証の前提として信頼を与えた鍵や主体の情報。証明書の連鎖を検証する基点になる。
- 失効
- 証明書を有効期限前でも受け入れない状態とすること。鍵の漏えいなどを理由に行う。
関連教材
参考資料
教材データに登録された参考リンクです。リンク先の内容や更新日は提供元でご確認ください。
確認問題の出題・採点や学習履歴の保存にはログインが必要です。