« 2007年05月27日 | メイン | 2007年05月29日 »

2007年05月28日

PDFと署名(34) — PDFへのタイムスタンプ付与

昨日は、少し回り道をしてしまいましたが、次は、PDFとタイムスタンプについて調べてみます。

今までに、PDFに電子証明書を使って署名することで、PDFの内容が作成後に変更または改竄された場合にはこれを検知することができるようになること、さらには、電子証明書が何らかの形で認証されているものであるならば作者本人が作成したものであることも、つまり否認防止などもできることになります。

さらに、タイムスタンプをつけることで、PDFが「いつ作成されたか」を特定できることになります。実際のビジネスでは、いつ、ということが非常に重要になるケースが多いとでしょうから、電子書類にタイムスタンプをつけるというサービスは、PDFかどうかに関わらず重要なビジネスと思われます。

タイムスタンプ・プロトコルに関する技術調査によりますと、欧米では1990年代の中ごろからタイムスタンプサービスが立ち上がっているようです。

2000年前後にタイムスタンプの標準化が図られました。2001年に電子署名に基づくタイムスタンプの標準であるRFC3161ができています。

RFC3161: Internet X.509 Public Key Infrastructure Time-Stamp Protocol (TSP)

電子文書にタイムスタンプをつける技術はさまざまで、特許も多数ありますが、その中で、電子署名に基づくタイムスタンプ技術は、米国では、裁判で公知の技術として特許には抵触しないという認識になっているようです。

RFC3161のタイムスタンプ方式を簡単にまとめますと次のようになります。

(1)タイムスタンプを付けたい文書のハッシュ値を計算する。
(2)ハッシュ値を、信頼できるTSA(タイムスタンプ・オーソリティ)に送信する。
(3)TSAは、ハッシュ値に、TSAの秘密鍵で電子署名をして、電子署名した署名データを、要求元に送り返す。

以上で、文書のタイムスタンプデータが出来上がります。これを文書と関係つけて保存すれば、それで、タイプスタンプ付き文書となります。

ここで分かりますように、タイムススタンプを施すことで、時間のみでなく、文書の原本性(改竄されたり、変更されてない)までもが分かるようになります。

「PDF 1.6から、署名辞書の署名データ(Contentsキーの値)に含めるPKCS#7のオブジェクトに、タイムスタンプを非署名の属性として含めることができるようになりました。PDFにおけるタイムスタンプは、RFC3161準拠であり、かつ、RFC3161の付録Aに記述されているように計算され、埋め込まれなければならない」、とされています。
(PDF Reference 1.7 P.739より)

投票をお願いいたします

投稿者 koba : 08:00 | コメント (0) | トラックバック