特許紛争におけるGitコミットタイムスタンプ証明
特許紛争において、コストのかかる問いは「あなたがこのコードを書いたか」であることはほとんどありません。問われるのは「いつ書いたかを証明できるか」です。Gitはすべてのコミットに日付を記録しますが、その日付はあなたが所有していないデータベースに存在し、1回のリベースで書き換えることができます。特許紛争におけるGitコミットタイムスタンプ証明は、コミット履歴を、第三者がビットコインブロックチェーンに対して検証できる暗号学的な先行技術へと変えることで、このギャップを埋めます。しかも、誰かがあなたのソースコードを読むことなく実現します。
本記事では、その証明が実際に何であるか、どのように自動生成されるか、そして法的な会話の中でどこまで通用するかを説明します。
Gitコミットタイムスタンプ証明とは何か
Gitコミットタイムスタンプ証明とは、特定のコミットハッシュが特定の時点に存在していたことを示す暗号学的記録であり、ビットコインブロックチェーンにアンカリングされたものです。定義はこれで全部です。あなたのコードやロジック、ビジネスについて記述するものではなく、ある時点におけるフィンガープリントの存在を証明するものです。
開発者がしばしば混同する2つのものを切り分けておくと役立ちます。
- Git内のコミット日付。 コミットオブジェクトに保存され、
git commit --amendやリベースで編集可能で、GitHubのようなプラットフォームを使っている場合はあなたが管理していないインフラ上でホストされています。法的な監査では、このような内部ログは自己都合や改ざん可能として日常的に退けられます。 - ビットコインにアンカリングされた証明。 あるビットコインブロックがマイニングされる前にそのハッシュが存在していたという記録です。一度ブロックが確認されれば、いかなる主体も——ホスティングプロバイダーも、当社も、あなたも——それを改変したり日付を遡らせたりすることはできません。
人々が驚く点の1つ: 証明が対象とするのはコミットハッシュであり、ソースコードではありません。Timestamp GITは実際のソースを閲覧・複製・保存することは一切ありません。数学的にハッシュだけをスタンプします。これは設計上ゼロ知識であり、プライベートリポジトリや営業秘密を含むリポジトリでもこのアプローチを安全に使える理由です。
これがIP戦略にどう組み込まれるかの全体像については、開発者のための知的財産ガイドが周辺領域を扱っています。本記事はタイムスタンプ証明そのものに焦点を当てます。
公証人のアナロジー: なぜタイムスタンプが証拠になるのか
公証人を考えてみてください。あなたは封印された封筒を渡し、公証人はそれに日付を押印します。公証人は封筒を開けず、手紙を読まず、内容のコピーも取りません。押印が証明するのはただ1つ: この封印された物体がこの日に存在していたということです。
これをこのワークフローに当てはめてみましょう。
- 封印された封筒はあなたのコミットハッシュです——リポジトリ状態の一方向SHA-1/SHA-256フィンガープリントです。内容について何も明かしませんが、内容と一意に結びついています。
- 公証人はビットコインです。買収されることも、押印の日付を遡るよう圧力を受けることもなく、あなたのビジネスについて意見も持ちません。
- あなたが保管する公証済みのカーボンコピーは
.otsレシートファイルとマニフェストです。証拠はあなたが保持し、誰にでも渡すことができます。
なぜこのアナロジーが法的に重要なのか。内部証拠の失敗モードは、それが間違っていることではなく、それがあなたの証拠であることだからです。Gitサーバーログは「信じてくれ」と言います。公開ブロックチェーンのアンカーは「自分で確かめろ、ここに数学がある」と言います。この違いが、コミット履歴を弁護士が先行技術の主張を組み立てられるものへと変えるのです。
Timestamp GITがコミットを特許紛争の証拠に変える仕組み
3ステップのモデルはシンプルです。
ステップ1 — フィンガープリント。 コミットすると、Gitはその瞬間のリポジトリ全体の正確な状態を表す一意の一方向ハッシュ(SHA-1またはSHA-256)を生成します。これはあなたの成果物の暗号学的に安全なフィンガープリントです。
ステップ2 — アンカリング。 Timestamp GITはコミットハッシュのみを抽出し、リポジトリごとに日次のテキストマニフェストファイルにまとめ、そのマニフェストのSHA-256ハッシュを生成し、Merkleツリーを構築し、OpenTimestampsプロトコルを使ってMerkleルートをビットコイントランザクションにアンカリングします。ハッシュの存在は特定のビットコインブロック内で時間的に凍結されます。
ステップ3 — 証明。 あなたは不変の.otsレシートファイルを受け取ります。マニフェストとレシートはあなた自身のリポジトリに——専用のtimestampsブランチか、別のシャドウリポジトリに——プッシュされ、弁護士、監査人、または裁判所に提出できる状態になります。
内部では、マネージドパイプラインは次のように動作します。
- コミット検出 — GitHub Appがwebhook経由で新しいコミットを検出します。
- ハッシュキュー — コミットハッシュはバッチ処理のためにインメモリのキーバリューストアに入ります。
- 深夜のcronワーカー — 毎晩、ワーカーが保留中のハッシュをグループ化し、
.txtマニフェストを書き出し、Merkleツリーを構築し、公開OTSカレンダーに対して証明を作成し、ルートをビットコインにアンカリングします。 - 証明の配信 — マニフェストとレシートがあなたのリポジトリに戻ります。ビットコインの確認には通常約3時間かかるため、証明の書き込みはバッチ実行の数時間後に完了します。
あなたのチームにとって重要な点: GitHub Appを一度インストールするだけです。 CLIツールも、プロトコルコマンドも、手動の手順もありません。夜間のワーカーが残りをこなし、開発者のマシンにインストールするものは何もありません。生のプロトコルアプローチ——カレンダーとトランザクションを自分でオーケストレーションする——でさえ、私たちはあなたが実行する必要のあるワークフローではなく、実装の詳細として扱っています。
ハッシュを自分たちの手でインフラから出すことを望むチームのために、Enterprise ZKモードはwebhookを、あなたのランナー上で動作しコミットハッシュのみをTimestamp GIT APIにプッシュする12行のGitHub Actionに置き換えます。ソースリポジトリは完全に蚊帳の外に置かれます。
なぜこれが特許紛争で重要なのか(そして人々が誤解していること)
繰り返し出てくる3つのシナリオ:
- パテントトロール。 非実施主体(NPE)は一般的な技術に対して広範な特許を出願します。あなたがその技術を彼らの出願日より何ヶ月も前に実装し、それを証明できれば、アンカリングされたコミット日付はそのクレームを無効化しうる先行技術となります。
- 従業員との紛争。 リード開発者が退職すると、ある機能がいつ考案されたかをめぐる議論が始まります。不変のタイムスタンプは「彼が言った、彼女が言った」を、どちらの側も編集できない日付に置き換えます。
- クリーンルーム主張。 競合他社が類似のものを「独自に開発した」と言います。あなたが完成したロジックを18ヶ月前に持っていたことを証明すれば、独自開発という話では乗り越えられない数学的な壁を作り出します。
そして早めに潰しておく価値のある3つの誤解:
- 「私のGitHubコミット履歴で十分だ。」 それはあなたが管理していない第三者によってホストされ、編集可能です。amend、rebase、force-push——日付は動きます。
- 「持っていたことを証明するにはコードを公開しなければならない。」 いいえ。Timestamp GITはハッシュをアンカリングし、ソースは決してアンカリングしません。実装を開示することなく先行技術の証拠を得られます——これは営業秘密にとってまさに望ましいことです。
- 「自分でOpenTimestampsを実行しなければならない。」 その必要はありません。GitHub Appがプロトコルをエンドツーエンドで処理し、次のセクションで結果を確認する方法を示します。
証明の検証と提示
検証はローカルかつゼロ知識です。誰でも.otsファイルを取得し、Timestamp GITを信頼することなく——あるいは当社が存在する必要すらなく——ビットコインブロックチェーンに対して検証できます。暗号学的証明は完全にSHA-256とビットコインブロックデータに依存しています。これが「ベンダー非依存」の実践的な意味です: 独自形式もなく、ロックインもありません。
日常的な使用のために、製品は同じ証拠をより親しみやすい形で提示します。
- 公開検証ページ
/verification/{user}/{repo}/{date}— ステップバイステップの多段Merkleチェーン検証。すべての計算はあなたのブラウザ内でローカルに行われます。誰もあなたが何を検証しているか見ません。 - PDF証明書 特定の日付用(
/api/report/{user}/{repo}/{date})——法務顧問に渡す成果物です。 - 監査CSV 台帳全体の(
/api/audit/{user}/{repo})——完全な保管チェーンのレビューに有用です。 - READMEバッジ 検証ステータスを公開表示します。投資家や買収企業はこれらをIP成熟度のシグナルとして読み取ります。バッジのURLとmarkdownスニペットは
/api/badgeLink/{user}/{repo}から取得できます。
スクリプトから公開ステータスを確認する簡単な方法:
curl -s https://timestampgit.dev/api/statusSummary/acme/payments-service
プライベートリポジトリはURLに暗号化されたHMACを付加するため、認可されたユーザーのみがステータスを閲覧できます。HMACはサーバーインスタンスに固有です。
このプロセスのステップバイステップ版——Merkleチェーンを自分でたどる方法を含む——については、Gitリポジトリのビットコインタイムスタンプを検証する方法をご覧ください。
デプロイオプション: マネージド、Enterprise ZK、セルフホスト
スタンダードモード(GitHub App)。 リポジトリにアプリをインストールします。HEADコミットハッシュのみを読み取り、証明をtimestampsブランチまたはシャドウリポジトリに書き込みます。GitHubの権限モデルでは、ソースリポジトリへの少なくとも読み取り専用アクセス(コミットハッシュ専用の権限は存在しません)と、ターゲットリポジトリへの読み書きアクセスが必要です。
Enterprise ZKモード。 12行のGitHub Actionがあなたのインフラ上で動作し、コミットハッシュのみをAPIにプッシュします。ソースリポジトリへの読み取りアクセスは不要で、コードがあなたの環境から出ることはありません。
Dockerセルフホストライセンス。 最大限のセキュリティとエアギャップ環境向けに、Timestamp GITはDockerイメージとして提供されます。クイックスタートのDocker Composeセットアップは次のようになります。
services:
timestampgit:
image: rue1401/timestampgit:prod
ports:
- "8080:8080"
volumes:
- ./data:/app/data
restart: unless-stopped
valkey:
image: valkey/valkey:8
restart: unless-stopped
docker compose pull
docker compose up -d
docker compose logs -f timestampgit
起動後、アプリケーションはhttp://localhost:8080で利用可能になり、初回起動時のセットアップウィザードがGitHub Appの接続を案内します。評価用の期間限定デモライセンスは、Docker Licenseページのリクエストフォームから入手できます。そのルートを取る場合、セルフホストDockerのウォークスルーがセットアップ全体を扱っています。
FAQ
ビットコインにアンカリングされたGitコミットタイムスタンプは、実際に特許紛争で証拠として採用されますか? 世界的に認知された暗号学的標準に基づく法廷で通用する証拠を提供します。この証明は、あるコミットハッシュが特定のビットコインブロック時刻に存在していたことを示し、先行技術を立証するために使用できます。採用可否は管轄区域と法務顧問によりますが、暗号学的証明自体は誰でも数学的に検証できます。
Timestamp GITは私のソースコードを閲覧または保存しますか? いいえ。Timestamp GITはコミットハッシュのみを処理します。スタンダードモードではGitHub AppがHEADコミットハッシュを読み取り、Enterprise ZKモードではGitHub Actionがあなたのインフラからハッシュのみをプッシュし、ソースリポジトリへの読み取りアクセスはありません。コードはあなたの環境に留まります。
開発者のマシンにインストールする必要があるものは何ですか? 何もありません。Timestamp GITはマネージドGitHub Appです。リポジトリに一度インストールすれば、毎晩すべてのコミットが自動的にアンカリングされます。チームが学んだり覚えたりするCLIツールはありません。
プライベートリポジトリを保護するのにいくらかかりますか? パブリックリポジトリはOpen Sourceプランで無料です。プライベートリポジトリはPro Agencyで月額$49、GitHub Actionsを使うEnterprise ZKは月額$199でカバーされます。エアギャップ環境向けにDockerセルフホストライセンスも用意されており、評価用の期間限定デモライセンスがあります。
結論
Gitコミットタイムスタンプ証明は、あなたがすでに行っていること——コードのコミット——を、防御可能な先行技術へと変えます。コミット履歴だけでは法的監査に耐えられません。なぜなら編集可能で、他人がホストしているからです。ビットコインにアンカリングされたハッシュは耐えられます。数学が公開され、記録が不変だからです。
実践的な道筋は、タイムスタンプを手作業の雑用と考えるのをやめることです。GitHub Appを一度インストールし、重要なリポジトリを指定し、夜間のアンカリングに仕事を任せましょう。証拠が必要なときにステータスダッシュボードを確認し、IP成熟度を示したいときにバッジを埋め込み、実際に必要になった日に.otsレシートを弁護士に渡してください。
関連記事
- Gitリポジトリのビットコインタイムスタンプを検証する方法
- 自動Gitタイムスタンプ: GitHub Appがすべてのコミットをアンカリングする仕組み
- 知的財産の保護: ソフトウェア開発者のためのガイド