タイムスタンプで特許トロールからソフトウェアを守る
タイムスタンプでパテントトロールからソフトウェアを守る
アレックスは小さなフィンテックスタートアップの創業者だ。ある火曜日の朝、特許権者を代理する法律事務所から厚い封筒が宅配便で届いた。その書面には、アレックスのコア機能である支払い照合機能が、最近付与された特許を侵害していると主張されていた。その特許は、アレックスがこの機能を本番環境にリリースしてから8か月後に出願されたものだった。
アレックスは、その機能が出願より前から存在していたことを知っている。チームのGitHub履歴には、数か月前からのコミットが残っている。しかし、弁護士が証拠を精査したときの反応は厳しいものだった。「Gitログは自分たちが管理するサーバー上にある。法廷では、自己都合で編集可能なものとして却下されることが多い。」
アレックスに必要だったのは、より優れた内部ログではなかった。必要なのは、先行技術の暗号学的証明、つまり書き換えも日付の遡及も論駁もできないタイムスタンプだった。それを提供するのがまさにTimestamp GITであり、必要なのはGitHub Appをインストールするだけだ。
このガイドは、ワークフローを変えることなくコードをパテントトロールから守りたい開発者、創業者、コンプライアンス担当者向けである。
パテントトロールがソフトウェア開発者を標的にする理由
パテントトロール(正式には非実施主体と呼ばれる)は製品を作らない。広範で曖昧な表現の特許を取得し、長期の訴訟を戦う余裕のない企業から和解金を引き出すために使う。トロールにとって計算は単純だ。たとえスタートアップが勝訴する可能性が高くても、5万ドルの和解要求は200万ドルの防御費用よりはるかに安い。
この非対称性こそがトロールのビジネスモデル全体である。彼らは3つの圧力に依存している。
- 高額な防御費用。 特許訴訟は通常、6桁から7桁の費用がかかる。
- 先行技術の立証の難しさ。 ソフトウェア機能は急速に進化し、裁判所が認める証拠を保持しているチームはほとんどない。
- 脆弱な内部ログ。 Git履歴、サーバーログ、内部Wikiは編集、移行、紛失の可能性があり、相手方弁護士はそれを知っている。
従来の知的財産保護は、ソフトウェア開発者にとってこの問題を解決しない。特許出願は高額で時間がかかる。営業秘密は機密性を守るものであり、日付を守るものではない。内部ログは操作可能なものとして却下される。そこに存在証明のギャップが残る。いつコードを書いたかは自分では分かっていても、裁判官に証明できないのだ。
暗号学的先行技術はこのギャップを埋める。Gitコミットの一方向ハッシュをビットコインブロックチェーンにアンカーすることで、特定のコード状態が特定の日付に存在したという、不変で公的に検証可能な記録が作成される。その記録は、後日出願された特許クレームを無効にできる。ソースコードを公開する必要はない。ハッシュだけでよい。
開発者のプレイブック:Timestamp GITで先行技術を証明する
これを難しい方法で行うなら、OpenTimestampsを学び、ビットコイン取引を管理し、コミットごとにCLIツールを実行することになる。管理された方法は、GitHub Appを一度インストールし、あとは自動化に任せることだ。
以下が、Timestamp GITを使ってコードをパテントトロールから守るための実践的なプレイブックである。
ステップ1:Timestamp GIT GitHub Appをインストールする
timestampgit.devにアクセスし、保護したいリポジトリにTimestamp GIT GitHub Appをインストールする。これは一度きりのセットアップだ。CLIツールも環境変数も不要で、インストール後の手動手順もない。
標準モードでは、GitHub Appはソースリポジトリへの読み取りアクセスと、証明レシートを保存するターゲットリポジトリへの読み書きアクセスのみを必要とする。アプリがソースコードを読むことは決してない。読み取るのはHEADコミットハッシュのみである。
ステップ2:通常どおりコミットを続ける
アプリをインストールしたら、開発ワークフローを変更する必要はない。これまでとまったく同じように、コミット、プッシュ、マージ、デプロイを行う。アプリはWebhookを通じて新しいコミットを自動的に検出する。
ステップ3:夜間のアンカリングをバックグラウンドで実行する
毎晩、Timestamp GITは保留中のすべてのコミットハッシュをバッチ処理し、Merkleツリーを構築し、OpenTimestamps証明を作成し、Merkleルートをビットコインブロックチェーンにアンカーする。ビットコインネットワークが取引を確認した後(通常は数時間以内)、証明レシートは専用のタイムスタンプブランチまたはシャドウリポジトリにプッシュバックされる。
このパイプラインに関与する必要は一切ない。結果として、すべてのコミットに対する継続的に成長するタイムスタンプ証明のチェーンが得られる。
ステップ4:トロールが来たら、証明を取り出す
要求書を受け取った場合、Git履歴について議論する必要はない。Timestamp GITのリポジトリステータスダッシュボードにアクセスし、以下をダウンロードする。
- 該当するコミット日付の
.otsレシートファイル。 - その日付のPDF証明書。弁護士と共有するのに適している。
- 完全な証拠チェーンが必要な場合は、監査台帳をCSVとして。
公開検証ページを使用して、ブラウザ内でローカルにMerkleチェーンをたどることもできる。どの時点でもソースコードは関与しない。
完全な隔離を必要とする組織向けに、Timestamp GITはEnterprise ZKモードを提供している。12行のGitHub Actionがインフラストラクチャ内で実行され、コミットハッシュのみをTimestamp GIT APIにプッシュする。ソースリポジトリがTimestamp GITに読み取りアクセスを許可することは一切ない。
公開ステータスAPIを使用して最新のアンカー済みブロックを確認する簡単な方法は次のとおりだ。
curl -s https://timestampgit.dev/api/statusLast/your-org/your-repo
レスポンスには、最新のアンカーのビットコインブロック高、取引データ、タイムスタンプが含まれる。これを使用して、ダッシュボードにログインせずに自動化が機能していることを確認できる。
避けるべきこと:防御を弱めるよくある間違い
善意があっても、多くのチームが自らの先行技術保護を損なっている。以下の5つの間違いを避けよう。
内部Git履歴やサーバーログのみに依存すること。 アレックスが気づいたように、内部ログは裁判所によって自己都合で編集可能なものと見なされることが多い。公開ブロックチェーンに結び付けられた暗号学的アンカーは、別格の証拠である。
特許が出願された後まで先行技術の確立を待つこと。 タイムスタンプは特許の出願日より前でなければならない。要求書を受け取ってからタイムスタンプを始めても、その特定のクレームに対しては遅すぎる。
手動のタイムスタンプ方法を使用すること。 自分にメールを送る、スクリーンショットを撮る、プライベートデータベースにコミットを記録するといった方法は、エラーが発生しやすく、暗号学的アンカリングを欠いている。自動化された夜間アンカリングは、リスクと労力の両方を排除する。
継続的なカバレッジを無視すること。 注目度の高い一部のコミットだけを保護すると、隙間が生まれる。トロールは保護されていない期間を指摘できる。すべてのコミットを継続的かつ自動的にタイムスタンプすることで、切れ目のないチェーンが作られる。
消滅したり記録を改変したりする可能性のある独自のタイムスタンプサービスを選ぶこと。 証明がベンダーのプライベートデータベースに依存している場合、その強度はベンダーが証言する意思に依存するに過ぎない。Timestamp GITの証明は、公開ビットコインブロックチェーンデータと標準のOpenTimestampsレシートに基づいている。サービスが消滅しても、証明を独立して検証できる。
法廷を超えて:チームにもたらす追加のメリット
特許防御は1つのユースケースに過ぎない。同じタイムスタンプインフラストラクチャは、他の領域でも成果をもたらす。
- エージェンシーとフリーランサー向け: 支払い紛争で作業の納品日を証明し、クライアントのクレームから再利用可能なコードを守る。タイムスタンプ付きコミットは、プロフェッショナルな著作者証明書である。
- コンプライアンス担当者向け: 開発者にGit履歴の説明を依頼することなく、内部ガバナンス用の監査対応CSV台帳とPDF証明書を生成する。
- オープンソースメンテナ向け: READMEに検証バッジを表示して、信頼性とイノベーション成熟度を示す。誰でもバッジをクリックして、ビットコインブロックチェーンに対してタイムスタンプを検証できる。
- エンタープライズ向け: エアギャップ環境またはセルフホスト環境でTimestamp GITをDockerイメージとして実行する。Docker Composeのクイックスタートは次のとおりだ。
services:
timestampgit:
image: rue1401/timestampgit:prod
ports:
- "8080:8080"
volumes:
- ./data:/app/data
- ./license.lic:/app/license.lic:ro
restart: unless-stopped
valkey:
image: valkey/valkey:8
restart: unless-stopped
価格はユースケースに対応している。公開リポジトリは無料、プライベートリポジトリはPro、オンプレミス展開はEnterprise ZKだ。
FAQ:パテントトロールからコードを守る
Gitコミットのタイムスタンプは、どのようにパテントトロールから私を守るのか?
タイムスタンプは、コードが特定の日付に存在したという不変の記録を作成する。トロールが後日、その日付より後に出願された特許を侵害していると主張した場合、暗号学的証明を先行技術として提示し、クレームを無効にできる。Timestamp GITはコミットハッシュをビットコインブロックチェーンにアンカーし、証明を改ざん不可能かつ誰でも検証可能なものにする。
Timestamp GITを使うためにビットコインやOpenTimestampsを理解する必要はあるか?
いいえ。Timestamp GITはOpenTimestampsプロトコルを完全に自動化するマネージドサービスだ。GitHub Appをインストールするだけで、監視対象リポジトリへのすべてのコミットが毎晩自動的にビットコインにアンカーされる。CLIツールも手動手順もブロックチェーンの知識も不要だ。
Timestamp GITがソースコードを見ることはあるか?
いいえ。Timestamp GITはコミットハッシュのみを扱う。標準モードでは、GitHub AppはHEADコミットハッシュのみを読み取る。Enterprise ZKモードでは、GitHub ActionがハッシュのみをAPIにプッシュする。ソースコードが環境の外に出ることはなく、サービスがハッシュからコードを再構築することもできない。
Timestamp GITが廃業したらどうなるか?タイムスタンプを証明できるか?
はい。証明は公開ビットコインブロックチェーンデータと標準のOpenTimestampsレシート(.otsファイル)に基づいている。Timestamp GITが消滅しても、オープンソースツールを使用してビットコインブロックチェーンに対して独立して検証できる。証明はベンダー非依存であり、永久に有効である。
今日からコードを守り始めよう
プレイブックは短い。GitHub Appをインストールし、コミットを続け、夜間のビットコインアンカリングに先行技術の記録を自動的に構築させる。パテントトロールが要求書を送ってきたとき、ワークフローを変更することもソースコードを公開することもなく、コードがいつ存在したかを示す不変で法廷対応の証明を手にすることになる。
timestampgit.devにアクセスして、最初のリポジトリを接続しよう。公開リポジトリは無料でタイムスタンプできる。セルフホスティングを評価したい場合は、Dockerイメージの期間限定デモライセンスがDocker Licenseページで入手可能だ。
パテントトロールに対する数学的な盾は、複雑である必要はない。手紙が届く前に始めればよいのだ。
関連記事
- OpenTimestamps vs Timestamp GIT:あなたのコードに適しているのはどちらか?
- 自動Gitコミットタイムスタンプを数分でセットアップする
- 自動コードタイムスタンプのためのGitHub Appをインストールする