Timestamp GIT Secure your prior art without exposing code

← All posts

2026-08-23

ソフトウェアにおける存在証明:初心者ガイド

ソフトウェアにおける存在証明:初心者ガイド
timestamp git blockchain proof

ソフトウェアにおける存在証明:初心者向けガイド

あるソフトウェアが特定の時点に存在していたことを証明するとは、実際には何を意味するのでしょうか。「ソースコードを公開せずに、自分が先にこれを作ったと示したい」と思ったことがあるなら、その答えは存在証明と呼ばれる概念にあります。このガイドでは、その考え方を説明し、よくある誤解を解き、Timestamp GIT がそれをセットアップ不要の GitHub App にしている方法を紹介します。

ソフトウェアにおける存在証明とは何か

存在証明とは、特定のデジタルデータが特定の時点に存在していたことを示す暗号学的な証拠です。ソフトウェアにおいて、そのデータは通常 Git コミットハッシュです。このプロセスは次のように機能します。

  • データの一方向ハッシュ(暗号学的フィンガープリント)を作成する。
  • そのフィンガープリントを、不変の公開台帳である Bitcoin ブロックチェーンにアンカーする。
  • 誰でも独立してアンカーを検証できるレシートを保存する。

内部ログ、メール、通常のバージョン管理のタイムスタンプとは異なり、暗号学的証明は特定の人物やサーバーの誠実さに依存しません。証拠は Bitcoin の公開ブロックチェーン上に存在し、その数学的整合性は誰でも検証できます。

存在証明は、知的財産権紛争において先行技術を確立するための重要なツールでもあります。パテントトロールがあなたの技術を主張してきた場合、Bitcoin にアンカーされたタイムスタンプがあれば、その実装が何ヶ月も何年も前から存在していたことを示せます。

シンプルな例え:コードのための公証人

従来の公証人を考えてみましょう。あなたが文書に署名し、公証人がそれを見届け、公式の印鑑と日付を押します。後で誰でもその印鑑を見て、その文書がその日付に存在していたことを知ることができます。

存在証明はデジタルデータに対して同じことを行います。

  • フィンガープリント — Git コミットハッシュは、その瞬間のリポジトリの正確な状態を示す一意のフィンガープリントです。
  • アンカー — フィンガープリントは公証人の公式登記簿のように、Bitcoin ブロックチェーンに記録されます。
  • 証明 — 公証済み証明書のように、誰でも検証できる .ots レシートファイルを受け取ります。

重要な違いは、公証人のサーバーやデータベースを信頼する必要がないことです。Bitcoin の公開台帳が記録を不変のものにします。

内部の仕組み(簡潔に)

内部では、ソフトウェアの存在証明は次の 3 つのステップに従います。

  1. フィンガープリント — Git が正確なリポジトリ状態の一方向ハッシュを生成します。そのハッシュがコミットメントです。
  2. アンカー — Timestamp GIT はコミットハッシュのみを抽出し、毎日バッチ処理して Merkle ツリーを作成します。その後、OpenTimestamps プロトコルを使用して Merkle ルートが Bitcoin トランザクションにアンカーされます。
  3. 証明 — Bitcoin ブロックが承認されると、不変の .ots レシートファイルを受け取ります。誰でも標準の OpenTimestamps 検証ツールを使用して Bitcoin ブロックチェーンに対して検証できます。

ローカルでのコミットハッシュは次のようになります。

# Your Git commit hash is a one-way fingerprint of the full repository state
git rev-parse HEAD
# Example output: 7c2f0a9b3e8d4f1c6a5b9c0d1e2f3a4b5c6d7e8f

Timestamp GIT はこのパイプライン全体を自動化します。GitHub App を一度インストールすれば、監視対象リポジトリへのすべてのコミットが毎晩自動的にフィンガープリント化され、アンカーされます。CLI ツールも、手動の OpenTimestamps コマンドも、Bitcoin ウォレットのセットアップも不要です。この製品は、プロトコルを GitHub 統合の背後に隠すマネージドサービスです。

ゼロ知識は組み込みです。Timestamp GIT がソースコードを見たり、コピーしたり、保存したりすることはありません。処理するのはコミットハッシュのみです。Enterprise ZK モードでは、コミットハッシュさえも GitHub Action によって自社インフラからプッシュされるため、ソースリポジトリへの読み取りアクセスは不要です。

検証は独立しています。.ots レシートをダウンロードして、Timestamp GIT が消滅したとしても、自分で Bitcoin ブロックチェーンに対して検証できます。

存在証明が重要な理由:よくある誤解

誤解 1:「Git 履歴があれば十分」

Git 履歴は開発には便利ですが、完全に制御できないサーバー上に存在します。Git コミットは書き換え可能で、日付も変更でき、内部ログは法的監査において自己都合的または操作可能なものとして却下されることがよくあります。存在証明はハッシュを公開ブロックチェーンにアンカーし、タイムラインを数学的に検証可能にします。

誤解 2:「先行技術を証明するにはコードを公開する必要がある」

いいえ。フィンガープリントは一方向ハッシュです。Timestamp GIT がソースコードを見ることはなく、証明がソースコードを明らかにすることもありません。コードを公開したり、公開文書を提出したりすることなく、先行技術を確立できます。

誤解 3:「ブロックチェーンのタイムスタンプは暗号通貨専用」

ソフトウェア開発者にとっての Bitcoin の主な価値は通貨ではありません。それは不変の公開台帳です。二重支払いを防ぐのと同じ特性が、Bitcoin をあらゆるデジタルデータのタイムスタンプに理想的なものにします。証明は Bitcoin ブロックデータに埋め込まれ、グローバルに検証可能で永続的になります。

存在証明が重要になる現実のシナリオ:

  • 特許出願前に技術を実装していたことを示してパテントトロールに対抗する
  • 従業員との紛争で機能がいつ考案されたかを証明する
  • 競合他社が独立発明を主張する場合にクリーンルーム開発のタイムラインを確立する
  • 公開せずに営業秘密を保護する

Timestamp GIT でコードの存在証明を取得する方法

主なワークフローは次のとおりです。

  1. Timestamp GIT GitHub App をリポジトリにインストールします。 これは一度きりのセットアップです。
  2. 通常どおりコミットを続けます。 GitHub App は webhook を介して新しいコミットを自動的に検出します。
  3. 毎晩、Timestamp GIT がコミットハッシュをバッチ処理し、Merkle ツリーを作成し、Merkle ルートを Bitcoin ブロックチェーンにアンカーします。
  4. 証明は専用ブランチまたはシャドウリポジトリに配信されます。 README に検証バッジを表示して、コミットがアンカーされていることを示せます。
# After installing the GitHub App, your normal workflow is unchanged
git add .
git commit -m "Add proof-of-existence example"
git push origin main

最大限の分離が必要な場合、Enterprise ZK モードは自社インフラ上で GitHub Action を実行し、コミットハッシュのみを Timestamp GIT API にプッシュします。ゼロコードアクセスとは、ソースが環境から出ることがないことを意味します。

エアギャップ環境や規制対象環境向けに、Timestamp GIT は Docker セルフホストイメージとしても利用可能です。これにより、同じ自動化を自社インフラ内で実行できます。

FAQ

存在証明と著作者証明の違いは何ですか?

存在証明は、Git コミットハッシュのような特定のデジタル成果物が特定の時点に存在していたことを確立します。著作者証明は、さらにその成果物を特定の人物または組織に結び付けます。Timestamp GIT は存在証明を提供し、著作者はリポジトリとコミットメタデータから推測できます。

存在証明は Timestamp GIT を信頼せずに検証できますか?

はい。証明は OpenTimestamps プロトコルと Bitcoin ブロックチェーンに基づいています。.ots レシートをダウンロードし、標準の OpenTimestamps 検証ツールを使用して Bitcoin ブロックチェーンに対して独立して検証できます。Timestamp GIT が検証に関与する必要はありません。

存在証明にはソースコードの公開が必要ですか?

いいえ。Timestamp GIT は一方向フィンガープリントである Git コミットハッシュのみを処理します。ソースコードがリポジトリから出ることはありません。Enterprise ZK モードでは、コミットハッシュさえも自社インフラからプッシュされ、ゼロコードアクセスが保証されます。

コミット後に証明を取得するまでどのくらいかかりますか?

Timestamp GIT はコミットを毎日バッチ処理し、Bitcoin ブロックチェーンにアンカーします。承認には通常、毎日のバッチ処理後数時間かかります。アンカーが承認されると .ots レシートを受け取ります。

Timestamp GIT の料金はいくらですか?

Timestamp GIT は、公開リポジトリ向けの Open Source プラン、プライベートリポジトリ向けの Pro Agency プラン、GitHub Actions ベースのゼロ知識モード向けの Enterprise ZK プランを提供しています。自社インフラでサービスを実行する必要があるチーム向けに、Docker セルフホストライセンスも利用可能です。

特定のコミットのタイムスタンプを検証したい場合は?

Timestamp GIT は監視対象の各リポジトリに公開ダッシュボードを提供し、継続期間、アンカー日、Bitcoin ブロックデータ、ダウンロード可能な監査 CSV および PDF 証明書を含みます。ステータス、検証、レポート用の API エンドポイントも使用できます。より詳しい手順については、Git コミットタイムスタンプの検証に関する関連記事をご覧ください。

結論

ソフトウェアにおける存在証明は魔法ではありません。一方向フィンガープリント、不変の公開台帳、独立して検証可能なレシートの組み合わせです。従来の代替手段 — Git ログ、サーバータイムスタンプ、メールの履歴 — は法的な文脈では弱いものです。Bitcoin にアンカーされた証明は数学的にはるかに強力です。

Timestamp GIT はこの概念を、一度インストールすれば忘れられる製品に変えます。GitHub App がリポジトリを監視し、夜間にコミットハッシュをバッチ処理し、ソースコードを一切読むことなく .ots レシートを返します。コードがいつ存在したかを証明したいなら、Timestamp GIT をインストールしてリポジトリを接続してください。

関連記事

EU label: AI-generated content