平成27年度秋期 応用情報技術者試験 午前 問37
手順に示す処理を行ったとき,検証できることはどれか。〔手順〕(1) 送信者Aはファイルのハッシュ値を計算して,信頼できる第三者機関に送信する。(2) 第三者機関は,信頼できる日時を保持しており,受信したハッシュ値とその受信日時を結合し(結合データ),そのディジタル署名を生成し,ディジタル署名と結合データの組(ディジタル署名済みの結合データ)を送信者Aに返信する。(3) 送信者Aはファイルと第三者機関から送られてきたディジタル署名済みの結合データを受信者Bに送信する。(4) 受信者Bは第三者機関のディジタル署名を確認し,ファイルから計算したハッシュ値と,ディジタル署名済みの結合データから取り出されたハッシュ値を照合する。そして,結合データから取り出された日時を確認する。
- ア 当該日時に受信者Bにファイルが到達したこと
- イ 当該日時に送信者Aが受信者Bにファイルを送信したこと
- ウ 当該日時にファイルが作成されたこと
- エ 当該日時にファイルが存在し,それ以降改ざんされていないこと
解答・解説を見る
正解:エ
AI解説
正解はエ。この手順は時刻認証局(TSA)によるタイムスタンプ(時刻認証)の仕組みである。第三者機関が「ハッシュ値+受信日時」にディジタル署名することで,その日時にそのファイル(と同じハッシュ値をもつデータ)が存在したこと(存在性),およびハッシュ値が一致する限り以降改ざんされていないこと(完全性)が検証できる。 ア: 第三者機関が関与するのは送信者Aとの間だけで,受信者Bへの到達日時は手順のどこでも証明されない。 イ: AからBへの送信行為やその日時は第三者機関の署名対象に含まれておらず,検証できない。 ウ: 証明できるのはハッシュ値を第三者機関へ送った日時にファイルが存在したことであり,ファイルの作成日時そのものではない(作成はそれ以前かもしれない)。 エ: 正しい。当該日時のファイルの存在と,ハッシュ値照合による非改ざん(完全性)が検証できる。これがタイムスタンプの証明内容である。 💡 タイムスタンプが証明するのは「存在性(その時刻にあった)」と「完全性(以降変わっていない)」の2点のみ。作成日時・送達・送信者の行為までは証明しない,という限定を押さえるのがひっかけ対策である。
※Web掲載用に表記を一部変更しています。著作権はIPAに帰属します。