タイムスタンプ付きのデジタル署名を使用するリアルタイムアプリケーションを知りたい。特に、現在有効期限が切れている古い署名済みドキュメントを信頼できるアプリケーションについて知りたいです。
デジタル署名 「有効期限」。署名は秘密鍵で実行され、対応する公開鍵に対して検証されるためです。公開キーは certificates を介してidentity(たとえば、法的に定義された個人)にリンクされています。証明書の通常の標準( X.509 )は、証明書が期限切れになることを指定します。有効期限を過ぎると、証明書は使用できなくなります。したがって、ドキュメントのデジタル署名は期限切れになります。特定の日付を過ぎると、検証できなくなります。ユーザー証明書は通常2〜3年後に期限切れになるため、これは「実際の」署名、たとえばビジネス契約。
なぜデジタル証明書が期限切れになるのですか?いくつかの答えがあります。科学的な答えは、証明書は指定された所有者による秘密鍵の排他的な制御を「保証」するものであり、認証局は時間の制限なしにそのような保証をすることを望んでいないということです。また、技術の進歩により、特定のキーが時間の経過とともに弱くなり、確実に寿命が尽きる可能性があります。皮肉な答えは Peter Gutman によるものです。
おそらく、Validityの名前をRenewalFeeDueDateに変更して、実際の使用法を反映させることができます。
どちらの方法でも、署名の有効期限が切れます。どうすればそれを解決できますか?別の署名付き!つまり、タイムスタンプです。タイムスタンプは、特定の「ドキュメント」(ビットのシーケンス)が過去の日付に存在したことの証明です。内部的には、タイムスタンプが発行された日付とタイムスタンプ付きドキュメントのハッシュを含む構造に対して計算された署名です。 Time Stamping Authorityは、正確な時計を維持する責任があり、間違った日付で構造に署名しないでください。
アイデアは次のとおりです。ある時点[〜#〜] t [〜#〜]で、最初のドキュメント、署名、および関連するすべての追加オブジェクト(すべての証明書、CRLおよびその他の要素)を使用して署名を検証します[〜#〜] t [〜#〜]。日付[〜#〜] t [〜#〜]では、証明書はまだ期限切れになっていないと想定しています。次に、それらすべてを大きな袋に入れ(Zipアーカイブとして想像してください)、適切なTSAからタイムスタンプを取得します。後日T 'で、タイムスタンプが有効であることを確認できるため、バッグ全体とその内容がすでに存在していることを確認します[〜#〜] t [〜#〜]:したがって、想像することができます自分自身を時間に投影し直します[〜 #〜] t [〜#〜]、そして現在の日付がであるかのように署名を検証できます[〜#〜] t [〜#〜] -一方、一部の証明書が期限切れになった場合でも(つまり、日付T 'に、タイムスタンプがないと、署名を検証できなくなります)。
タイムスタンプはそれ自体が署名であるため(実際には RFC 3161 をご覧ください:タイムスタンプは [〜#〜] cms [〜#〜] の特殊なケースです署名)、それも有効期限の対象となります。したがって、再帰する必要があります:日付T ''、タイムスタンプはまだ検証可能ですが、タイムスタンプを取得し、それを新しいバッグに検証するために必要な証明書をすべて取得します。そのバッグに対して追加のタイムスタンプが発行されます。等々。これは エッフェル塔 のような古いベアメタルの建物に似ています。定期的に新しいレイヤーのペイントで覆うように注意する限り、それらは永遠に続くことができます。
詳細は難解で複雑です。関連する規格については、以下を参照してください。
概要:タイムスタンプはタイムトラベルデバイスですが、トラベラーは署名の仮想検証者にすぎません。
Adobeのアクロバットでのデジタル証明書とデジタル署名付きタイムスタンプの使いやすく、直感的で、企業や裁判所にやさしい実装。任意のデジタル証明書を使用でき、RFC 3161タイムスタンプ認証局を使用するように簡単に構成できます。デジタル署名とタイムスタンプはメタデータに保存され、署名およびスタンプされた署名の作成後に行われたバージョンまたは編集のための組み込み機能があります。
以前の調査から、セキュリティで保護されたタイムスタンプを持つデジタル署名の領域で情報を見つけるのは難しいことを知っているので、ここにいくつかのスターターリンクがあります。