Timestamp GIT vs OpenTimestamps: マネージド vs DIY
timestamp git vs opentimestamps の選択は、結局のところ一点に尽きます。タイムスタンプ基盤を自分で運用したいのか、それともタイムスタンプをサービスとして利用したいのか。
Timestamp GIT は、OpenTimestamps プロトコルを採用し、GitHub App、自動夜間アンカリング、Web ダッシュボード、バッジ、REST API の背後に運用上の複雑さを隠蔽します。生の OpenTimestamps は、同じ基盤となる暗号プリミティブ — Bitcoin ブロックチェーンにアンカーされた SHA-256 ハッシュ — を提供しますが、ハッシュ化、バッチ処理、スケジューリング、レシート保管、検証をすべて自分で処理することが求められます。
どちらのアプローチも、Git コミット履歴が特定の Bitcoin ブロックより前に存在していたことを証明する .ots レシートを生成します。違いは、それを確実に生成する責任が自分にあるのか、マネージドサービスにあるのかです。
選択肢: マネージドタイムスタンプ vs DIY OpenTimestamps
購入の判断はシンプルです。Git コミットが特定の日付に存在していたことを暗号的に否定できない形で証明する必要がある。生のプロトコルでもそれは可能です。そのプロトコル上に構築されたマネージドサービスでも可能です。トレードオフは次の通りです。
- Timestamp GIT: 自動化、容易さ、コンプライアンス対応の証拠、ベンダー運用のインフラ、プライベートリポジトリ向けの有料プラン。
- OpenTimestamps: 完全な制御、オープンソースの透明性、ライセンスコストゼロ。ただし手動ツールと独自の自動化が必要。
多くのチームにとって、正しい評価は「どちらが暗号的に強いか」ではありません。Bitcoin アンカリングの数学は同じだからです。正しい評価は「6 か月後、チームの誰かが cron ジョブの面倒を見なくても、レシート、バッジ、監査レポートを生成し続けているのはどちらか」です。
それが本記事で比較するポイントです。
全体像: Bitcoin アンカー証明への 2 つの道
OpenTimestamps は、データハッシュを Bitcoin ブロックチェーンにアンカーするためのオープンソースプロトコルです。SHA-256 と Bitcoin ブロックデータを使用してタイムスタンプ証明を作成します。中心となる出力は .ots レシートです。これはマネージド製品ではありません。ツールをインストールし、何をハッシュするかを決め、プロセスを自分で実行します。ダッシュボードもバッジジェネレーターも、デフォルトのリポジトリ統合もありません。検証も同様に手動です。Bitcoin ブロックデータに対してプロトコルツールを実行します。
Timestamp GIT は、OpenTimestamps の上に構築されたマネージド SaaS + GitHub App です。GitHub App を一度インストールするだけです。それ以降、監視対象リポジトリへのすべてのコミットは自動的に検出され、夜間マニフェストにバッチ処理され、Merkle ツリーに結合され、公開 OTS カレンダーを介して Bitcoin にアンカーされ、専用ブランチまたはシャドウリポジトリに証明として返されます。開発者マシンにインストールする CLI はありません。維持する cron もありません。この製品は、マネージドワークフローを自社インフラ内で必要とする環境向けに、Docker セルフホストオプションも提供しています。
どちらの道も、Bitcoin ブロックチェーンにアンカーされた .ots レシートを作成します。証明形式と暗号的保証は基本的に同じです。ユーザーエクスペリエンスと運用上の表面積は同じではありません。
選択基準: 開発者とコンプライアンスにとって重要なこと
セットアップと継続利用の容易さ
Timestamp GIT は、GitHub App をインストールしてリポジトリを接続するだけです。ローカルツールもスケジューラーも、管理するレシートストレージもありません。1 つの注意点: GitHub はコミットハッシュのみの権限を提供していないため、標準モードの GitHub App はソースリポジトリへの読み取り専用アクセスを要求します — ただし読み取るのは HEAD コミットハッシュのみです。また、レシートが書き込まれるターゲットの証明リポジトリまたはブランチへの読み書きアクセスも必要です。
OpenTimestamps は、プロトコルツールのインストール、スクリプトの作成、ジョブのスケジューリング、レシートの保管が必要です。単一のリポジトリなら難しくはありませんが、組織全体では現実的なメンテナンスになります。
自動化と信頼性
Timestamp GIT はパイプライン全体を処理します。
- GitHub webhook または GitHub Action によるコミット検出。
- インメモリのキーバリューストアでのハッシュキューイング。
- 夜間ワーカーが保留中のハッシュをマニフェストファイルにグループ化し、Merkle ツリーを構築し、OpenTimestamps 証明を作成し、Merkle ルートを Bitcoin にアンカーします。
- Bitcoin の承認後の証明配信。通常は数時間かかります。
OpenTimestamps には組み込みの自動化はありません。コミット検出、バッチ処理、スケジューリング、レシート配信はすべて自分で行います。
セキュリティとゼロ知識
どちらのアプローチもゼロ知識にできます。Timestamp GIT はソースコードを一切見ることも、コピーすることも、保存することもありません。標準モードでは、GitHub App は HEAD コミットハッシュのみを読み取ります。Enterprise ZK モードでは、GitHub Action が自社インフラ上で実行され、コミットハッシュのみを Timestamp GIT API にプッシュします。ソースが環境から出ることはありません。
生の OpenTimestamps では、ローカルでハッシュ化し、ダイジェストのみをタイムスタンプできます。違いは、Timestamp GIT が GitHub App の権限モデルと HMAC 保護された ZK API によって、その境界をすでに運用化していることです。
既存ワークフローとの統合
Timestamp GIT は GitHub ワークフローにそのまま適合します。提供されるもの:
- README 検証バッジ
- Bitcoin ブロックおよびトランザクションデータを含む公開ステータスダッシュボード
- 監査 CSV エクスポート
- 日付ごとの PDF 証明書
- ステータス、バッジ、検証、レポート用の REST API エンドポイント
プライベートリポジトリのバッジ URL は暗号化された HMAC を付加するため、許可されたユーザーのみがステータスを確認できます。OpenTimestamps は生の .ots ファイルを提供します。それをバッジ、ダッシュボード、コンプライアンスエクスポートに変えるには、カスタムツールが必要です。
Docker によるセルフホスティング
マネージドワークフローが必要だが、すべてを社内に置く必要がある場合、Timestamp GIT は Docker イメージとしても利用できます。
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 の接続とインスタンスの設定を案内します。
価格
Timestamp GIT には、パブリックリポジトリ向けの無料ティア、プライベートリポジトリ向けの Pro Agency プラン(月額 $49)、GitHub Actions ベースのゼロ知識タイムスタンプ向けの Enterprise ZK(月額 $199)があります。Docker セルフホストライセンスは、デモライセンスのリクエストを通じて入手できます。
OpenTimestamps は無料のオープンソースソフトウェアですが、実際のコストはエンジニアリング時間、スクリプト、監視、そして証明が必要になる前にパイプラインが静かに失敗するリスクです。
並べて比較: Timestamp GIT vs OpenTimestamps
| 基準 | Timestamp GIT | 生の OpenTimestamps |
|---|---|---|
| セットアップ時間 | GitHub App を一度インストールし、リポジトリを接続。開発者マシンへのインストール不要。 | プロトコルツールのインストール、スクリプト作成、ジョブのスケジューリング、レシートストレージの管理。 |
| 自動化 | 自動夜間バッチ処理、Merkle ツリー構築、OTS 証明作成、証明配信。 | 手動。すべての自動化は自分のコード。 |
| ユーザーインターフェース | Web ダッシュボード、セットアップウィザード、リポジトリステータスページ、バッジ。 | CLI と生の .ots レシートファイル。 |
| 検証 | 公開ブラウザベースの Merkle チェーン検証、PDF 証明書、監査 CSV、API エンドポイント。 | プロトコルツールを使用した Bitcoin ブロックデータに対する手動検証。 |
| コンプライアンス機能 | README バッジ、日次定期カレンダー、監査台帳 CSV、PDF 証明書。 | 生のレシートのみ。コンプライアンスエクスポートにはカスタムツールが必要。 |
| ゼロ知識 | 標準モードは HEAD コミットハッシュのみを読み取り。Enterprise ZK モードはアクションからハッシュのみをプッシュ。 | ローカルで何をタイムスタンプするかを自分で選択。 |
| 価格 | パブリックリポジトリは無料。Pro Agency $49/月。Enterprise ZK $199/月。Docker セルフホストライセンスあり。 | 無料のオープンソースソフトウェア。ただしエンジニアリング時間とインフラのコストがかかる。 |
| メンテナンス負担 | 自動化パイプラインを備えたマネージドサービス。 | 自己管理のスクリプト、cron ジョブ、監視。 |
暗号的強度は差別化要因ではありません。どちらのアプローチも、OpenTimestamps プロトコルを介して同じ SHA-256 ハッシュと Bitcoin アンカリングを使用します。証明は同一です。運用体験は同一ではありません。
結論: どちらを選ぶべきか?
Timestamp GIT を選ぶべき場合: セットアップ不要で自動化され、GitHub ワークフローに適合し、基盤となるプロトコルを学ぶことなくコンプライアンス対応の証拠を生成するソリューションが必要な場合。これは、ほとんどのスタートアップ、開発会社、フリーランサー、内部チームにとって現実的な道です。
生の OpenTimestamps を選ぶべき場合: 特定の技術要件があり、タイムスタンププロセスのすべてのステップを完全に制御したい場合、そしてインフラ管理に慣れている場合。これは、プロトコル研究者、Git 以外のデータ、カスタムバッチパイプラインにとって理にかなう場合があります。
Docker セルフホストオプションを検討すべき場合: マネージド Timestamp GIT ワークフローが必要だが、エアギャップ、セキュリティ、またはコンプライアンス上の理由ですべてを社内に置く必要がある場合。
ほとんどの開発者とコンプライアンスチームにとって、Timestamp GIT はセキュリティ、利便性、法的防御可能性の最良のバランスを提供します。
FAQ
Timestamp GIT は OpenTimestamps の単なるラッパーですか?
はい、Timestamp GIT は内部で OpenTimestamps プロトコルを使用して、コミットハッシュを Bitcoin ブロックチェーンにアンカーします。ただし、プロセス全体を自動化します。GitHub App をインストールすれば、手動の CLI コマンドなしで、すべてのコミットが毎晩自動的にタイムスタンプされます。生成される .ots 証明は、手動で作成するものと同一です。
既存の証明を失うことなく、生の OpenTimestamps から Timestamp GIT に切り替えられますか?
はい、既存の OpenTimestamps 証明は Bitcoin ブロックチェーンにアンカーされているため、有効なままです。Timestamp GIT は、リポジトリを接続した時点から新しいコミットのタイムスタンプを開始でき、古いレシートは履歴検証のために保持できます。
Timestamp GIT がソースコードを見ることはありますか?
いいえ、Timestamp GIT はゼロ知識になるように設計されています。標準モードでは、GitHub App は HEAD コミットハッシュのみを読み取り、コード自体は読み取りません。Enterprise ZK モードでは、GitHub Action が自社インフラ上で実行され、コミットハッシュのみを API にプッシュするため、ソースコードが環境から出ることはありません。
Timestamp GIT の Bitcoin アンカリングは、手動の OpenTimestamps と同じくらい安全ですか?
はい、どちらも同じ OpenTimestamps プロトコルと Bitcoin ブロックチェーンを使用するため、セキュリティは同一です。Timestamp GIT は複数のコミットハッシュを Merkle ツリーにバッチ処理し、手動で行うのと同じように、ルートを Bitcoin トランザクションにアンカーします。違いは、Timestamp GIT が技術的な詳細を代わりに処理することです。
結論: 先行技術のために正しい選択をする
Timestamp GIT と生の OpenTimestamps はどちらも、Git コミットが特定の時点に存在していたことを数学的に否定できない形で証明します。基盤となる Bitcoin アンカリングの数学は同一です。違いは運用面です。一方はパイプライン全体を自動化するマネージド GitHub App であり、もう一方は自分で実行しなければならないプロトコルです。
時間、シンプルさ、コンプライアンス対応の証拠を重視するなら、Timestamp GIT が現実的な選択です。GitHub App を一度インストールし、リポジトリを接続し、あとは夜間アンカリングに任せるだけです — ソースコードはプライベートなままです。
パブリックリポジトリで Timestamp GIT を無料で試すか、同じワークフローを自社インフラ内で必要とする場合は Docker セルフホストオプションを検討してください。
関連記事
- Automate Git Commit Timestamping with a GitHub App
- How to Prove Your Code Existed on a Specific Date (Without Revealing It)
- Protect Your Startup from Patent Trolls with Git Timestamping