RFC 3161をわかりやすく解説 — 信頼できるタイムスタンプの仕組み
RFC 3161は、信頼できるタイムスタンプの作成方法を定義した国際標準です。デジタルファイルが特定の時点に存在したことの暗号学的証明を生成します。Internet Engineering Task Force(IETF)が発行したもので、タイムスタンプ局(Timestamp Authority、TSA)がファイルのフィンガープリントを受け取り、認定日付を付与し、暗号署名するプロトコルを規定しています。その結果、誰でも独立して検証可能な改ざん防止トークンが生成されます。ProofStamperはRFC 3161を使用して無料の認定タイムスタンプを生成します。
RFC 3161は難しそうに聞こえます — 暗号学者だけが気にするようなもの、と。実際には、シンプルな問題を解決する簡単なシステムです:ファイルが特定の日付より前に存在していたことを、誰も反論できない形でどう証明するか?このガイドでは、前提知識なしで、ステップバイステップでこの標準を解説します。
RFC 3161はどんな問題を解決するのか?
デジタルファイルには根本的な信頼の問題があります:メタデータ(作成日、更新日)は誰でもいつでも変更できます。1月15日にファイルが存在したと主張しても、それを証明する組み込みの方法はありません。
これは実際の状況で重要です:
- フリーランサーが作業を納品し、クライアントが遅延を主張する
- 写真家が自分の画像がコピーされたことを発見し、相手が先に作成したと主張する
- 企業が監査日前にコンプライアンス文書が存在していたことを証明する必要がある
- 研究者が発見の優先権を確立する必要がある
これらすべてのケースで、日付を確認する信頼できる第三者が必要です。RFC 3161はまさにそれを提供します:タイムスタンプ局からの独立した暗号署名付きタイムスタンプを取得するための標準化されたプロトコルです。
RFC 3161の仕組み — ステップバイステップ
1. ファイルのハッシュ化
デバイスがSHA-256を使用してファイルの暗号学的ハッシュを計算します。ハッシュは固定長の文字列(指紋のようなもの)で、ファイルの正確な内容に対して一意です。カンマ一つ変えても完全に異なるハッシュが生成されます。重要なのは、ハッシュはファイルの内容を一切明かさないということです — 一方向の数学関数です。
2. ハッシュをタイムスタンプ局(TSA)に送信
ハッシュ — ファイルではなく — がタイムスタンプ局に送信されます。TSAは信頼できる組織が運営する独立したサーバーです。ファイルの内容は知りません、フィンガープリントだけです。
3. TSAがタイムスタンプトークンを作成
TSAはハッシュを受け取り、信頼できる時計から現在の日時を付与し、プライベート暗号鍵でパッケージ全体にデジタル署名します。これにより、元のハッシュ、正確なUTC日時、TSAのデジタル署名と証明書を含むタイムスタンプトークン(.tsrファイル)が生成されます。
4. 証明を受け取る
これで、ハッシュ(つまりファイル)が認定日に存在していたという暗号学的証明を得られます。この証明は改ざん防止、独立検証可能、自己完結型です。
project-proposal-v3.pdf → SHA-256: 7d2f3c8a91b4e6f5... (64文字)
プロセス全体が設計上ゼロ知識です:タイムスタンプ局はファイルを見ることも保存することもアクセスすることもありません。内容について何も明かさない数学的フィンガープリントのみを受け取ります。
タイムスタンプトークンの中身は?
.tsr(Timestamp Response)ファイルはASN.1/DER形式でエンコードされたバイナリファイルです。簡略化した内訳:
- バージョン
- プロトコルバージョン(通常1)
- Policy OID
- TSAのタイムスタンプポリシー
- Message Imprint
- 使用されたハッシュアルゴリズム+送信されたハッシュ値
- シリアル番号
- この特定のタイムスタンプの一意の識別子
- 生成時刻
- タイムスタンプ作成の正確なUTC日時
- 精度
- TSAの時計の精度(通常1秒以内)
- Nonce
- リプレイ攻撃を防ぐための乱数(オプション)
- TSA証明書
- 検証に必要な公開鍵を含むTSAのデジタル証明書
RFC 3161を使うのにASN.1エンコーディングを理解する必要はありません。ProofStamperやOpenSSLがパースを行います。しかし、トークンの中身を知ることで、なぜ信頼できるのかを理解するのに役立ちます。
RFC 3161タイムスタンプの検証方法
検証がRFC 3161に法的効力を与えます。誰でもタイムスタンプを検証できます。
ProofStamperを使用(最も簡単)
ProofStamperの検証ページにアクセスし、元のファイルと.tsrトークン(またはProof Pack ZIP)をアップロードします。ツールがファイルのハッシュを再計算し、トークン内のハッシュと照合し、TSAのデジタル署名を検証します。
OpenSSLを使用(技術ユーザー向け)
OpenSSLという無料のオープンソース暗号ツールキットを使用して、完全にオフラインでタイムスタンプを検証できます。
この独立性は重要な特徴です:ProofStamperやその他のサービスが存在しなくなっても、あなたの証明は有効なままです。
裁判所がRFC 3161を信頼する理由
国際標準である
RFC 3161はIETF(Internet Engineering Task Force)が発行しました。HTTPやTCP/IPなどのコアインターネットプロトコルを定義する同じ組織です。プロプライエタリな技術ではなく、オープンで査読済みの標準です。
eIDASに認められている
EUでは、eIDAS規則(第41条)が電子タイムスタンプを明示的に定義し、法的効力を与えています。RFC 3161タイムスタンプは電子的であるという理由だけで証拠として拒否されることはありません。
証明が独立して検証可能
プラットフォーム依存の監査証跡とは異なり、RFC 3161タイムスタンプはオープンソースツールで誰でも検証できます。
暗号学的完全性が数学的に保証されている
デジタル署名は公開鍵暗号に基づいています。有効なタイムスタンプを偽造するにはTSAの秘密鍵を破る必要があり、現在の技術では計算上不可能です。
RFC 3161 vs 他のタイムスタンプ方式
| 方式 | 標準 | 独立性 | 検証可能性 | 速度 | コスト | プライバシー |
|---|---|---|---|---|---|---|
| RFC 3161(例:ProofStamper) | 国際(IETF) | ✅ 独立TSA | ✅ 誰でもオープンツールで | 数秒 | 無料〜低額 | ✅ Zero-knowledge |
| ブロックチェーンタイムスタンプ | 様々 | ✅ 分散型 | ✅ ブロックチェーンエクスプローラー経由 | 数分〜数時間 | ¥150〜1,500 | ⚠️ ハッシュが公開される可能性 |
| メール「自己送信」 | なし | ❌ 同じプロバイダー | ❌ プロバイダー依存 | 数秒 | 無料 | ❌ プロバイダーが内容を閲覧 |
| 公証人 / 弁護士 | 国内法 | ✅ 資格を持つ専門家 | ✅ 署名入り証明書 | 数日〜数週間 | ¥7,500〜30,000+ | ❌ 文書を閲覧 |
| クラウドストレージのアップロード日 | なし | ❌ プロバイダー管理 | ❌ プロバイダーが変更可能 | 数秒 | 無料 | ❌ プロバイダーがファイルを閲覧 |
RFC 3161は、無料、即時、国際標準化、独立検証可能、ゼロ知識を同時に満たす唯一の方式です。
用語集
- ハッシュ(SHA-256)
- 任意のファイルを固定長の文字列に変換する数学関数。一方向性で衝突耐性があります。SHA-256は256ビット(16進数64文字)の出力を生成します。
- タイムスタンプ局(Timestamp Authority、TSA)
- 認定タイムスタンプを発行する独立サーバー。ProofStamperはドイツに拠点を置く無料のコミュニティ運営TSA、FreeTSAを使用しています。
- タイムスタンプトークン(.tsr)
- TSAが生成する暗号学的証明ファイル。ハッシュ、認定日付、TSAのデジタル署名を含みます。
- デジタル署名
- メッセージが特定のエンティティによって作成され、改ざんされていないことを証明する暗号メカニズム。
- eIDAS
- 電子識別とトラストサービスに関するEU規則(No 910/2014)。第41条で電子タイムスタンプを定義。
- IETF
- Internet Engineering Task Force。インターネット標準(RFC)を開発・公開する国際組織。RFC 3161は2001年に公開、RFC 5816で更新。
- Proof Pack
- PDF証明書と暗号.tsrトークンを含むZIPアーカイブのProofStamper用語。完全で自己完結型の存在証明。
よくある質問
- RFC 3161はいつ公開されましたか?
- RFC 3161は2001年8月にIETFによって公開されました。2010年にRFC 5816で更新されました。この標準は20年以上安定して広く採用されています。
- RFC 3161は無料で使えますか?
- 標準自体はオープンで無料です。タイムスタンプサービスが無料かどうかはTSA次第です。ProofStamperは無料のコミュニティ運営TSA、FreeTSAを使用しています。
- RFC 3161タイムスタンプは偽造できますか?
- 有効なタイムスタンプを偽造するには、TSAの秘密鍵を侵害するか暗号アルゴリズムを破る必要があり、現在の技術では計算上不可能です。
- RFC 3161とブロックチェーンタイムスタンプの違いは?
- どちらもデータが特定の時点に存在したことを証明します。RFC 3161は信頼できる第三者(TSA)に依存し、ブロックチェーンは分散ネットワークに依存します。RFC 3161の方が高速で、標準化されており(eIDAS認定)、ゼロ知識です。
- RFC 3161はファイルの作成者を証明しますか?
- いいえ。RFC 3161はファイルが特定の日付に存在したことを証明します — 誰が作成したかではありません。著作者の確立には追加の証拠が必要です。
- RFC 3161はどのハッシュアルゴリズムをサポートしますか?
- RFC 3161はアルゴリズムに依存しませんが、SHA-256が現在最も一般的です。ProofStamperはSHA-256のみを使用しています。