本文へ移動

ガイド

文書がある日までに存在したことをタイムスタンプで証明するには?

ファイルの暗号学的ハッシュを計算し、自分が管理しない日付付き記録に公開します。公開ブロックチェーンの取引、またはタイムスタンプ局が署名したトークンです。後から同じファイルを持つ人が再計算して照合すれば、本文を明かさず、その日までに内容が存在したことを示せます。タイムスタンプが証明するのは日付時点の存在だけです。作者、合意の有無、内容の真実性は証明しません。

更新日 2026年10月3日

暗号学的ハッシュとは

暗号学的ハッシュはファイルから計算する固定長のフィンガープリントです。同じ入力は同じ出力、1文字の変更は全く違うフィンガープリントになります。一方向なので原文を復元できず、同じハッシュの異なるファイル2つを見つけることも、現在の計算機では現実的ではありません。

よく使うのは SHA-256 と Keccak-256 です。SHA-256 は Bitcoin と多くのタイムスタンプ局の一般的な標準。Keccak-256 は Ethereum や Polygon などの互換チェーンで使われ、TrustChain のアンカーも採用しています。どちらも64文字の16進数を出力し、時刻証明に使えます。使った種類を記録することだけが必要です。

  1. 同じファイルなら毎回同じフィンガープリント
  2. 1文字の変更でフィンガープリント全体が変わる
  3. フィンガープリントから本文は復元できない
  4. 1行でも1ギガバイトでもフィンガープリントは同じ長さ

ハッシュの公開で日付を証明できる理由

文書の代わりにハッシュを公開するのが仕組みの要点です。内容が漏れないので公開でき、後から指定ハッシュに合う文書を構築することは現実的にできません。そのため、ハッシュの日付付き公開記録は、その時点までに正確な内容が存在したことを示します。

証拠の強さはハッシュではなく記録にあります。自分の手帳に書いても、手帳と日付を自分で管理するので証明になりません。Bitcoin や Polygon のブロック、またはタイムスタンプ局の署名トークンなら、自分が管理せず多くの人が監視するシステムが日付を付けます。

元ファイルを1バイトも変えずに保管してください。公開値と同じハッシュのファイルを後で出せなければ証拠になりません。再保存した PDF、打ち直した本文、変更履歴付き文書は違う値になります。使用関数と公開場所を添え、正確なファイルを複数箇所に保管します。

タイムスタンプが証明しないこと

特定のバイト列がその日以前に存在したことだけを証明します。作成日すら証明しません。1月の文書を3月にアンカーすれば3月の時刻証明になります。よく期待される3つの性質は付いてきません。Polygon アンカーも署名トークンも含め、このガイドの全方式に共通します。

  1. 作者。コピーしたものを含め、誰でもどのファイルもハッシュ化できます。別の本人確認で行為と人を結び付けない限り、ブロックやトークンのハッシュは作者も公開者も特定しません。
  2. 合意の成立。草稿の時刻証明はその存在を示すだけで、相手の閲覧、承諾、署名は示しません。同じ本文に各人が同意した記録が必要です。
  3. 真実性。請求書、声明、主張のハッシュは、内容の正確さを示しません。事実の確認ではなく、バイト列のフィンガープリントです。

公開チェーンのアンカー:Polygon と Bitcoin

公開チェーン取引にハッシュを入れ、収録ブロックが日付を示します。Polygon や Ethereum では取引データやコントラクトイベントに入れます。Bitcoin は無料の公開プロトコル OpenTimestamps が一般的です。多数のハッシュを1つのマークル木にまとめ、根を1取引に記録し、小さな証明ファイルを渡します。

強みは独立性と持続性です。会社が存続しなくても使え、誰でも公開エクスプローラーで確認できます。ブロックが承認され後続ブロックが積み重なると、変更はネットワーク参加者に見えるので改変を検知できます。

弱点は精度と本人情報です。ブロック時刻はネットワークが決める概算で、Bitcoin は1時間以上ずれる場合もあり、分でなく日の証拠と考えてください。OpenTimestamps の完全確認には数時間かかる場合があり、取引 ID や証明ファイルは自分で保管します。何より取引は人を特定せず、あるウォレットがその時刻に公開したことだけで、作者や同意者は分かりません。

タイムスタンプ局と公証人

タイムスタンプ局は、ハッシュと現在時刻に署名してトークンを返すサーバーです。一般標準は RFC 3161、欧州 eIDAS には監督下の提供者による適格版があります。文書でなくハッシュを送るので、局に内容は伝わりません。

強みは正確な時刻、広く認識された形式、多くの文書・コード署名ツールの内蔵対応です。弱みは局の時計、鍵管理、存続への信頼が必要で、後の検証に形式対応ソフトが必要なことです。署名鍵が漏れれば、それまでの全トークンに疑問が生じます。

人による方法は公証人です。本人を確認し署名に立ち会い、日付を記録します。ハッシュとは異なる証拠で、この一覧で唯一、誰がその場にいたかを示します。費用と日程調整が必要で、通常は紙の署名を証明し、電子ファイルのバイト列は証明しません。ファイルもハッシュ化しないと、公証紙面と編集された電子版が食い違い得ます。

自分宛てメールが弱い理由

よくある方法ですが、弱点は3つです。自分で管理するメールボックスでは、添付を変えて削除・再作成できます。ヘッダー日付は平文で受信中や書き出した後に編集できます。全文がメールにあるので、非公開性もコンパクトさもありません。

利点は、自分が制御しないメール提供者の受信時刻だけです。何もないより少し良くても、提供者は証明をしておらず、ログは証拠用ではなく、何年後かのサーバー記録取得も手伝いません。同じくらい簡単に日付を示すなら、ファイルをハッシュ化し OpenTimestamps で記録します。1コマンドででき、公開の時刻記録は無料です。

TrustChain の役割

単なる時刻証明の問いは、ある日までにバイト列が存在したかです。TrustChain は、確認済みの双方が正確な本文にいつ同意したかのためにあります。双方が Sumsub で写真付き身分証と自撮りの確認を1回行い、同じ最終本文に署名します。双方にアカウントがあれば暗号化チャットも使えます。未確認アカウントは署名できません。

署名時、TrustChain は本人確認済みアカウントの署名ごとに、ブラウザーやアプリが編集できない時刻付き監査記録を書きます。これはハッシュだけでは得られません。任意のアンカーは署名記録の Keccak-256 フィンガープリントを Polygon メインネットに書いて公開日付を与えます。Free($0、カード不要、月1件と AI Advisor 3回)では、追加合意書やアンカーは各 $1 の単発で、アンカーに本人確認が必要です。Pro は月 $19 で合意書とアンカー各20件、Elite は $49 で各100件。月額制でいつでも解約できます。

アンカー時はフィンガープリント、内部記録 ID、空のウォレット欄2つを載せ、本文・氏名・メールは載せません。TrustChain はフィンガープリント計算と記録・証明書・PDF の提供のため本文を保管し、これらは全プラン無料です。暗号化チャットは読めません。公開リンクはアカウント不要で状態とアンカー済みフィンガープリントを示し、本人情報は示しません。タイトルは Elite 作成分のみ。Polygon 取引は独立にどのエクスプローラーでも確認できます。メインネットのコントラクトは 0x649Bc303d15E173D95B4d379e163868b03cf5Fec です。

時刻証明の性質は変わりません。アンカー済みフィンガープリントと日付はどこでも確認できますが、執行可能性は所在地と内容により、TrustChain は主張しません。

手作業で行う

ハッシュ関数を選んで記録します。次は自分のファイル用です。TrustChain は内部記録・アカウント ID も含むので本文ハッシュと一致しません。SHA-256 ツールは主要 OS にあります。TrustChain と Ethereum 互換チェーンの Keccak-256 には短いスクリプトが必要です。OpenSSL などの sha3-256 は NIST SHA-3 で、パディングが違い、別の結果になるためです。

オンライン計算機には注意が2つあります。貼り付けやアップロードは端末を離れるので、公開したくない文書に使わないでください。ブラウザー内完結が良く、計算前に切断して使えるかが粗い確認になります。また、未知のサイトはアルゴリズム名を誤記することもあるため、少なくとも1回はローカルコマンドと照合してください。

ハッシュを得たら、自分で制御しない日付付きの OpenTimestamps 証明、局のトークン、公開チェーン取引に公開します。正確な原本と、アルゴリズム、ハッシュ、公開場所のメモを保管してください。

後で同じコマンドを同じファイルに実行し、64文字を比較します。0x と大文字小文字は問いませんが、他は全一致が必要です。違えばファイル、方式、文字コードが変わっています。PDF 再保存、改行形式の変換、末尾改行がよくある原因です。チェーンに載せたならエクスプローラーの取引データでも同様に比較してください。

  1. macOS の SHA-256:shasum -a 256 agreement.pdf
  2. Linux の SHA-256:sha256sum agreement.pdf
  3. Windows(PowerShell)の SHA-256:Get-FileHash agreement.pdf -Algorithm SHA256
  4. Python の Keccak-256(先に pip install pycryptodome):python3 -c "from Crypto.Hash import keccak; print(keccak.new(digest_bits=256, data=open('agreement.txt','rb').read()).hexdigest())"
  5. Node.js の Keccak-256(先に npm install ethers):node -e "const {ethers}=require('ethers'); console.log(ethers.keccak256(require('fs').readFileSync('agreement.txt')))"

次によくある質問

タイムスタンプで作者を証明できますか?

いいえ。ハッシュが識別するのはバイト列で、人ではありません。他人が書いたファイルも誰でもハッシュ化できます。TrustChain が答えるのは隣の問い、誰が署名したかです。双方は写真付き身分証と自撮りで確認してから署名し、未確認アカウントは署名できないので、署名は確認済みの本人情報に結び付きます。それでも最初の作者は分かりません。

TrustChain で Polygon にアンカーする費用は?

Free($0、カード不要)は月1件の合意書を含みます。追加 Polygon アンカーは1件 $1 の単発購入で、本人確認が必要です。Pro は月 $19 で合意書とアンカー各20件、Elite は $49 で各100件。月額制でいつでも解約できます。アンカーは任意です。すべての署名合意にブラウザーやアプリが編集できない時刻付き監査記録があり、アンカーで Keccak-256 フィンガープリントを追加します。自分の記録、証明書、PDF は全プラン無料です。

合意書本文はブロックチェーンに保存されますか?

いいえ。アンカーを選ぶと、Keccak-256 フィンガープリント、内部記録 ID、空のウォレット欄2つをオンチェーンに書きます。本文、氏名、メールは書きません。TrustChain はフィンガープリントの計算と記録・証明書・PDF の提供のため、本文をサーバーに保管します。交渉チャットはエンドツーエンド暗号化され、読めません。フィンガープリントは本文だけでなく内部記録・アカウント ID を含むので、本文だけでは再計算できません。

アカウントなしで TrustChain のタイムスタンプを確認できますか?

はい。公開リンクはアカウント不要で、状態と、アンカー済みならフィンガープリントを表示し、本人情報は表示しません。タイトルは Elite で作成した合意のみです。Polygon 取引はどのエクスプローラーでも TrustChain と独立に確認できます。Polygon メインネットのスマートコントラクトは 0x649Bc303d15E173D95B4d379e163868b03cf5Fec です。

タイムスタンプで法的に合意が強くなりますか?

TrustChain はそのような主張をしません。本文がある日までに存在したことをタイムスタンプが示し、記録はどの確認済みアカウントがいつ署名したかを加えます。それだけです。アンカー済みフィンガープリントと日付はどこでも確認できますが、執行可能性は所在地と合意内容により、TrustChain は主張しません。重要なら、お住まいの地域の弁護士に相談してください。

新規の本人確認は現在停止中です。以前に確認を終えた方は引き続き署名できます。未確認の方は再開まで署名できません。下書き、閲覧、リンク共有、記録の検索は利用できます。

Free プランは月1件の合意書に対応。双方の Sumsub 本人確認、日付付き署名ログ、公開リンクを含みます。カード不要です。

続きを読む