タイムスタンプ(時刻認証)とは?
タイムスタンプ(時刻認証)とは、時刻認証局 (TSA:Time-Stamping Authority) という第三者機関がデータの作成時刻を付与する技術です。
タイムスタンプにより、2つのことを証明できます。
●タイムスタンプが証明できること
・タイムスタンプの付与時点でデータが存在していたこと(否認防止)
・タイムスタンプの付与時点から現時点まで、データが改ざんされていないこと(完全性)
・タイムスタンプの付与時点でデータが存在していたこと(否認防止)
・タイムスタンプの付与時点から現時点まで、データが改ざんされていないこと(完全性)
タイムスタンプ(時刻認証)の手順
タイムスタンプは、データをハッシュ関数でメッセージダイジェストに変換し、時刻情報を付与したものを、時刻認証局(TSA)の秘密鍵で暗号化することで作成します。
具体的に、「タイムスタンプの作成」と「タイムスタンプによる証明」の流れを確認します。
工程 | 説明 |
---|---|
① | 送信者(Aさん)はデータをハッシュ関数で変換し、メッセージダイジェストAを作成 |
② | 送信者(Aさん)はメッセージダイジェストAを時刻認証局(TSA)に送付 |
③ | 時刻認証局(TSA)はメッセージダイジェストAと時刻情報を自身の秘密鍵で暗号化し、タイムスタンプを作成 |
④ | 時刻認証局(TSA)は送信者(Aさん)にタイムスタンプを送付 |
⑤ | 送信者(Aさん)は受信者(Bさん)にタイムスタンプとデータを送付 |
⑥ | 受信者(Bさん)はタイムスタンプを時刻認証局(TSA)の公開鍵で復号 |
⑦ | 送信者(Aさん)はデータをハッシュ関数で変換し、メッセージダイジェストBを作成 |
⑧ | メッセージダイジェストAとメッセージダイジェストBを比較 |
「タイムスタンプの付与時点でデータが存在していたこと」は、タイムスタンプを復号した際の時刻情報により証明できます。
「付与時点から現時点まで、データが改ざんされていないこと」は、メッセージダイジェストAとメッセージダイジェストB一致するので、ハッシュ関数で変換したデータが同じ(=改ざんされていない)と分かります。
【まとめ】タイムスタンプ(時刻認証)
それでは今回学んだ内容をおさらいしておきましょう。
用語 | 説明 |
---|---|
タイムスタンプ(時刻認証) | 時刻認証局(TSA)がデータの作成時刻を付与する技術 データをハッシュ関数でメッセージダイジェストに変換し、時刻情報を付与したものを、時刻認証局(TSA)の秘密鍵で暗号化することで作成 次の2つを証明することができる ・タイムスタンプの付与時点でデータが存在していたこと(否認防止) ・タイムスタンプの付与時点から現時点まで、データが改ざんされていないこと(完全性) |
コメント