特許出願前に自分のコードが存在したことを証明する方法
想定されるシナリオは過酷です。あなたは画期的な機能を構築し、プライベートリポジトリ内で公開し、その後は次に進みました。18か月後、競合他社が同じ技術について特許を出願します。自分の実装が相手の出願日より前に存在したことを証明できなければ、会話は「我々が先に作った」から「証明してみろ」に変わってしまいます。このガイドでは、Timestamp GITとそのマネージドGitHub Appを使用して、特許出願前に自分のコードが存在したことを正確に証明する方法を紹介します。最終的には、Gitコミットに対する不変のビットコインアンカー付きタイムスタンプを取得し、先行技術の抗弁を裏付ける準備が整います。
困難な方法では、OpenTimestampsプロトコルを学び、手動のアンカリング手順を実行し、独自の証明パイプラインを維持する必要があります。Timestamp GITはそれを取り除きます。GitHub Appを一度インストールし、リポジトリを接続するだけで、すべてのコミットが毎晩自動的にバッチ処理され、ビットコインブロックチェーンにアンカーされます。
前提条件:始める前に必要なもの
ビットコインウォレット、ブロックチェーンノード、暗号ツールは必要ありません。必要なものは以下のとおりです。
- GitHubアカウントと、保護したいコードを含む少なくとも1つのリポジトリ。パブリックリポジトリは無料のOpen Sourceプランを利用できます。プライベートリポジトリには有料プランが必要です。
- GitコミットとGitHubリポジトリ設定に関する基本的な知識。コミットのプッシュ、GitHub Appのインストール、ワークフローログの読み方を理解している必要があります。
- Timestamp GITアカウント。無料枠はパブリックリポジトリをカバーします。プライベートリポジトリの場合、Pro Agencyプランは月額49ドル、Enterprise ZK Modeは月額199ドルです。
- オプション:エアギャップ環境またはセルフホスト環境の場合、Dockerホスト。Timestamp GITは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
ただし、ほとんどの開発者にとって、マネージドGitHub Appが最速のルートです。このガイドではそのマネージドパスに従います。
ステップバイステップ:Timestamp GITでコードをビットコインにアンカーする
ステップ1:Timestamp GIT GitHub Appをインストールする
Timestamp GITダッシュボードから始めて、GitHub Appをインストールします。監視したい対象リポジトリを選択します。Standard Modeでは、GitHubの権限システムはコミットハッシュのみを公開できないため、ソースリポジトリへの読み取りアクセスが必要です。Timestamp GITはHEADコミットハッシュのみを読み取り、ファイルの内容は読み取りません。
アプリはまた、証明が保存されるターゲットリポジトリへの書き込みアクセスも必要とします。ターゲットは、専用ブランチ上の同じリポジトリでも、別のシャドウリポジトリでもかまいません。
ステップ2:監視するリポジトリを設定する
インストール後、ダッシュボードでリポジトリリストを開き、保護したいリポジトリの監視を有効にします。有効にすると、GitHub AppはWebhookを介して新しいコミットを検出します。インストールするCLIも、設定するプレコミットフックも、学ぶべきOpenTimestampsコマンドもありません。
検出された各コミットハッシュは、毎日の処理のためにインメモリキューに入ります。Timestamp GITはソースコードを保存、コピー、読み取りしません。
ステップ3:Standard Modeを維持するか、Enterprise ZK Modeに切り替える
Standard Modeは多くのチームにとって十分です。GitHub AppはHEADコミットハッシュを自動的に読み取り、証明ファイルを選択したターゲットブランチに書き戻します。
最大限のゼロ知識運用を実現するには、Enterprise ZK Modeを選択します。短いGitHub Actionがあなたのインフラストラクチャ上で実行され、コミットハッシュとコミットIDのみをTimestamp GIT APIにプッシュします。このモードでは、Timestamp GITはソースリポジトリへの読み取りアクセスをまったく必要としません。ソースが環境から出ることはありません。
ダッシュボードには正確なアクションスニペットが表示されます。概念的には、ワークフローはメタデータのみを送信し、ファイル、パス、blob、リポジトリの内容は送信しません。
ステップ4:毎晩のCronワーカーにハッシュをアンカーさせる
Timestamp GITは保留中のハッシュを1日1回処理します。深夜に、cronワーカーは次のことを行います。
- 保留中のコミットハッシュをリポジトリごとにグループ化します。
- 各リポジトリのマニフェストファイルを作成します。
- ネイティブにマークルツリーを構築します。
- 公開OTSカレンダーを使用してOpenTimestamps証明を作成します。
- マークルルートをビットコインブロックチェーンにアンカーします。
毎日のアンカー後、証明の作成はバックグラウンドで続行されます。ビットコインの確認には通常約3時間かかるため、証明は夜間バッチの開始から数時間後に表示されます。このプロセスを監視したり、手動でトリガーしたりする必要はありません。
ステップ5:不変の証明ファイルを受け取る
確認が完了すると、Timestamp GITは証明アーティファクトをリポジトリにプッシュバックします。次のものが表示されます。
- バッチと対象コミットを説明するマニフェストファイル。
- 暗号タイムスタンプ証明を含む1つ以上の
.otsレシートファイル。
ファイルは、設定に応じて専用のtimestampsブランチまたはシャドウリポジトリに配置されます。これらはGit内の通常のファイルであるため、保存、コピー、弁護士への引き渡しが容易です。
ステップ6:READMEに検証バッジを追加する
Repository Connectedページから、生成されたバッジ埋め込みコードをコピーします。これは標準のShields.ioスタイルのマークダウンパターンに従います。
[](https://timestampgit.dev/status/{user}/{repo})
{user}と{repo}を実際のGitHubアカウント名とリポジトリ名に置き換えます。バッジは公開ステータスダッシュボードにリンクしており、誰でも最古のアンカー日、毎日の規則性、ビットコインブロックデータを確認できます。
プライベートリポジトリの場合、バッジURLには暗号化されたHMACが含まれており、許可されたユーザーのみがステータスを表示できます。
ステップ7:PDF証明書または監査CSVをダウンロードする
法的記録として、Repository Statusダッシュボードを開いて以下をダウンロードします。
- 特定の日付のPDF証明書。
- タイムスタンプ付きコミットの完全な台帳をリストした完全な監査CSV。
どちらも、弁護士、投資家、または裁判所への提出に人間が読める記録が必要な場合に役立ちます。基盤となる.otsファイルは、数学的に独立した証明であり続けます。
タイムスタンプが実際に機能したことを検証する方法
Repository Statusダッシュボードを確認する
公開ステータスページが最速のシグナルです。以下が表示されます。
- 証明の寿命と最古のアンカー日。
- 毎日のアンカーの規則性。
- ビットコインブロックの高さとトランザクションデータ。
- タイムスタンプ付き日付のカレンダーヒートマップ。
現在のコミット日付が確認済みのビットコインブロックとともに表示されていれば、アンカーは成功しています。
ブラウザでローカル検証を実行する
/verification/{user}/{repo}/{date}の検証ページでは、ブラウザ内でローカルにステップバイステップのマークルチェーン検証を実行します。つまり、検証計算はTimestamp GITのサーバーに依存して自身の結果を証明するわけではありません。コミットハッシュからビットコインブロックまでの暗号パスをたどります。
.otsレシートを独立して検証する
証明はSHA-256とビットコインブロックデータのみを使用するため、Timestamp GITにロックインされることはありません。.otsレシートをダウンロードし、標準のOpenTimestamps検証ツールを使用してビットコインブロックチェーンに対して検証できます。独自のソフトウェアは必要ないため、会社が消滅しても証明は有効なままです。
READMEバッジを確認する
最後に、README内のバッジが検証済み状態を表示し、公開ステータスページにリンクバックしていることを確認します。そのバッジは、同僚、監査人、メンテナにとって軽量な外部シグナルです。
一般的な問題のトラブルシューティング
コミットがタイムスタンプされない
まずGitHub Appの権限を確認してください。Standard Modeでは、Timestamp GITはソースリポジトリへの読み取りアクセスと、ターゲットリポジトリまたはブランチへの書き込みアクセスが必要です。どちらかの権限が欠けていると、コミットハッシュを読み取れず、証明を書き込めません。
証明に時間がかかりすぎる
タイムスタンプは即時ではありません。Timestamp GITは毎晩ハッシュをバッチ処理し、その後マークルルートをビットコインにアンカーします。ビットコインの確認には通常、トランザクションのブロードキャスト後約3時間かかります。証明は確認後に書き込まれるため、数時間の遅延は想定内です。
プライベートリポジトリのステータスが表示されない
プライベートリポジトリのステータスURLは、Timestamp GITサーバーインスタンスに関連付けられた暗号化HMACを使用します。ステータスページが空白または未承認の場合は、同じインスタンスで認証されており、プライベートリポジトリ用に生成されたリンクを使用していることを確認してください。
セルフホストのセットアップが失敗する
Dockerセルフホスティングの場合、Composeファイルが有効であること、ライセンスファイルが正しくマウントされていること、valkeyサービスが実行されていることを確認してください。docker compose logs -f timestampgitからのTimestamp GITログが最初に確認する場所です。
FAQ
ビットコインのタイムスタンプは法的に先行技術として認められますか?
法律は管轄区域によって異なりますが、暗号タイムスタンプは特定の時点での存在の強力な証拠を提供します。Timestamp GITはOpenTimestampsプロトコルを使用しており、データをビットコインブロックチェーンにアンカーするため、争うことは非常に困難です。具体的なケースについては必ず法律顧問に相談してください。
ソースコードをTimestamp GITに公開する必要がありますか?
いいえ。Timestamp GITはGitコミットハッシュのみを処理し、ソースコードを処理することはありません。Standard Modeでは、GitHub AppはHEADコミットハッシュのみを読み取ります。Enterprise ZK Modeでは、あなたのインフラストラクチャ上のGitHub ActionがハッシュのみをAPIにプッシュするため、コードが環境から出ることはありません。
Timestamp GITが廃業したらどうなりますか?証明はまだ有効ですか?
はい。証明はビットコインブロックチェーンにアンカーされており、標準のOpenTimestampsツールを使用して独立して検証できます。証明はSHA-256とビットコインブロックデータのみに依存しており、独自技術やロックインはありません。
プライベートリポジトリにTimestamp GITを使用できますか?
はい。Pro Agencyプラン(月額49ドル)またはEnterprise ZKプラン(月額199ドル)で可能です。プライベートリポジトリのステータスURLは暗号化されたHMACで保護されているため、許可されたユーザーのみがタイムスタンプステータスを表示できます。
結論:今日、先行技術を確保しましょう
これで、特許出願前にコードが存在したことを証明するための再現可能なワークフローが手に入りました。GitHub Appを接続し、夜間アンカーを実行させ、.otsレシート、PDF証明書、監査ログを収集します。その結果は、自分のログ、サードパーティのサーバー、またはTimestamp GITの存続に依存しない暗号的な先行技術の盾です。
今すぐTimestamp GIT GitHub Appをインストールし、最初のリポジトリを接続してください。パブリックリポジトリは無料で開始できます。プライベートリポジトリはPro AgencyまたはEnterprise ZKプランでカバーされます。エアギャップ環境の場合は、Dockerデモライセンスをリクエストして同じパイプラインをセルフホストできます。次の特許請求は、エスカレートする前にあなたの証明に直面するはずです。
訴訟やライセンス圧力においてこれがなぜ重要なのかについてのより広い視点は、Timestamp Git Commits to Defend Against Patent Trollsを参照してください。
関連記事
- Timestamp Git Commits to Defend Against Patent Trolls
- Automate Code Timestamping with a GitHub App
- The Best GitHub App for Timestamping Your Commits