セキュリティ入門Web講座

広告枠・・・広告やリンク先の保証はしません


この記事を読むために必要な時間は約5分(1537文字)です。

タイムスタンプとは ~ PKIだけでは不十分? 時間を証明する ~

何回かに分けて、公開鍵暗号方式を基礎技術としたディジタル署名(電子契約や電子署名)のお話をしています。
ディジタル署名の弱点対策としてPKIのお話をしました。
電子契約の場合、PKIだけでは、まだ、不足していることがあります。
今回は、その不足部分とそれを補う対策としてタイムスタンプについてお話をします。

タイムスタンプとは?

PKIの不足分

不足分は、次の2つです。

  1. 存在証明
  2. 完全性証明
PKIは本人であることを証明します。
PKIは紙の契約書の場合、印鑑と置き換えるとわかりやすいとお話をしました。
ここでは、紙の契約書との対比でお話をします。

存在証明

電子契約書の場合、紙の契約書と異なり、時間とともに劣化しません
このため、紙のように劣化ぐあいから存在時間を測定することもできません。
何かあった時には、何時(いつ)の時点で電子契約書(電子データ)が存在していたのかを証明する必要がでてきます。
また、PKIを所有している人であれば、後から内容を変えて作り直すこともできます。
後から作成しても、何時(いつ)が証明できれば、前後関係がはっきりしますので、安心です。

完全性証明

電子契約書の場合、紙の契約書と異なり、電子データですから、改ざんが容易です。 それに、何もなければ、改ざんした形跡も残りません。
このため、書き換えられていないことを証明する必要があります。

対策

PKIの弱点対策としてタイムスタンプがあります。
この対策はPKIと基本的には同じ方法です。
しかし、証明することが違います。
PKIが本人を証明するのに対し、タイムスタンプは時間を証明します。

改ざんの対策としては、PKIと同じく電子署名で対応しています。

タイムスタンプの作成

タイムスタンプの作成は次のような順番で行います。
タイムスタンプ
  1. 利用者が電子契約書にPKIで署名します
  2. 利用者は、PKIで署名済みの電子文書からハッシュ値を計算します
  3. 利用者は、計算したハッシュ値を時刻認証局(TSA)に送付します
  4. ハッシュ値を受信した時刻認証局(TSA)は、時刻配信局(TA)から時刻データを取得します
  5. 時刻データを取得した時刻認証局(TSA)は、時刻データをハッシュ値を合わせてタイムスタンプトークンと呼ばれるデータを作ります。
  6. 時刻認証局(TSA)は、タイムスタンプトークンを時刻認証局(TSA)の秘密鍵で暗号化します
  7. 時刻認証局(TSA)は、暗号化したタイムスタンプトークンを利用者に送信します
  8. 利用者は、PKIで署名済みの電子文書と暗号化されたタイムスタンプトークンを保管します

タイムスタンプの検証

タイムスタンプの検証は次のような順番で行います。

  1. 検証したい電子契約書のハッシュ値を計算します
  2. 保管してあるタイムスタンプトークンを、時刻認証局(TSA)の公開鍵で復号します
  3. 復号したタイムスタンプトークンからハッシュ値時刻データを取得します
  4. 電子契約書とタイムスタンプトークン両方のハッシュ値が同じか比較します
  5. 同じであれば、
    • 時刻データの時刻に電子契約書が存在していたこと
    • それ以降契約書に改ざんがないこと
    が証明できます


ご注意

タイムスタンプは、公開鍵暗号方式で暗号化していますので、ディジタル証明書(=秘密鍵)を使用しています。
このため、ディジタル証明書の失効のところでお話したように、ディジタル証明書の有効期限が切れると失効して、有効性が失われます。
長期間保管するような場合は、タイムスタンプが失効する前に、新たなタイムスタンプを付与しましょう。

また、PKIの秘密鍵が漏えいしている場合にも備え、CRL(証明書失効リスト)も確認した方が、より確実です。

タグ:, , , , ,


広告枠・・・広告やリンク先の保証はしません

参考記事(一部広告含む)


このページの記事についてちょっと質問!