So verifizieren Sie den Bitcoin-Zeitstempel eines Git-Repositorys
Sie haben eine .ots-Quittung in Ihrem Repository. Jetzt stellt Ihnen jemand – ein Anwalt, ein Auditor, ein Käufer, der technische Due Diligence durchführt – die einzige Frage, die zählt: Woher wissen wir, dass das echt ist?
Diese Frage ist der ganze Sinn und Zweck kryptografischen Stands der Technik. Ein Zeitstempel, den Sie nicht unabhängig verifizieren können, ist nur eine Behauptung in einer Datenbank. Ein Zeitstempel, den jeder gegen die Bitcoin-Blockchain verifizieren kann, ist ein Beweis. Dieser Artikel führt durch den Verifizierungspfad für Repositorys, die von Timestamp GIT verankert wurden – vom README-Badge bis hinunter zum Merkle-Beweis.
Warum Verifizierung für Git-Zeitstempel wichtig ist
Die Git-Historie ist überraschend leicht anzufechten. Commit-Daten werden von der Maschine festgelegt, die den Commit erstellt hat, und können daher mit einer einzigen Umgebungsvariable zurückdatiert werden. Gehostete Historie liegt auf Servern, die Sie nicht kontrollieren, und selbst gehostete Historie liegt in einer Datenbank, die jemand mit Administratorrechten umschreiben kann. Bei einem rechtlichen Audit werden beide routinemäßig als eigennützig zurückgewiesen.
Kryptografische Verankerung schließt diese Lücke – aber nur, wenn der Beweis von einem Dritten überprüft werden kann, der weder Ihnen noch dem Anbieter vertraut. Das bedeutet zwei Anforderungen:
- Die Verifizierung darf nicht erfordern, Timestamp GIT zu vertrauen. Der Beweis ist eine SHA-256-Hash-Kette, die in einem Bitcoin-Block endet. Jeder kann diese Kette mit Open-Source-Werkzeugen nachvollziehen.
- Die Verifizierung darf nicht erfordern, Ihren Quellcode offenzulegen. Timestamp GIT arbeitet nach einem Zero-Knowledge-Modell: Der Dienst erhält Commit-Hashes, niemals Dateiinhalte. Es gibt nichts zu inspizieren außer Hashes – genau das, was ein Auditor will, denn es bedeutet, dass der Beweis geteilt werden kann, ohne die Codebasis zu teilen.
Aufgrund dieses Designs ist die Verifizierung eine kryptografische Übung, keine Code-Überprüfung. Auditoren, gegnerische Anwälte oder das Engineering-Team eines übernehmenden Unternehmens können alle dieselbe Quittung validieren und zum selben Ergebnis kommen.
Wie ein Timestamp-GIT-Beweis aussieht
Nach dem nächtlichen Verankerungslauf erhält jedes überwachte Repository drei Artefakte:
- Ein tägliches Manifest (
.txt) – die Liste der für diesen Tag gebündelten Commit-Hashes, eine Datei pro Repository. - Ein Merkle-Root – der einzelne SHA-256-Hash, der aus diesem Manifest berechnet wird. Alle einzelnen Hashes fallen zu einem einzigen Wert zusammen.
- Eine
.ots-Quittung – der OpenTimestamps-Beweis, der den Merkle-Root an einen bestimmten Bitcoin-Block bindet.
Diese Artefakte werden in Ihrem Repository in einen dedizierten timestamps-Branch zurückgeschrieben, oder in ein separates Schatten-Repository, wenn Sie das Quell-Repository sauber halten möchten. So oder so werden die Beweise zusammen mit dem Code versioniert, den sie bezeugen, aber in ihrem eigenen Ref – nichts wird jemals in Ihre Arbeitsbranches committet.
Zwei Dinge sind es wert, klar ausgesprochen zu werden:
- Der Beweis enthält keinen Quellcode. Nur Commit-Hashes und ihre kryptografischen Reduktionen.
- Der Beweis ist nicht proprietär. Es ist eine Standard-OpenTimestamps-Quittung über eine Bitcoin-Transaktion, und sie bleibt gültig, ob Timestamp GIT noch existiert oder nicht.
Sobald die Quittungsdatei in Ihrem Repository liegt, haben Sie alles, was zur Verifizierung nötig ist – der Rest ist Werkzeug.
Schritt-für-Schritt-Verifizierung mit den Werkzeugen von Timestamp GIT
Schritt 1 — Den Beweis finden
Öffnen Sie den timestamps-Branch (oder das Schatten-Repository) und finden Sie das Manifest für das betreffende Datum sowie die passende .ots-Datei. Wenn Sie nicht durch Branches suchen möchten, zeigt die Repository-Statusseite dieselben Informationen im Browser:
https://timestampgit.dev/status/{user}/{repo}
Schritt 2 — Die öffentliche Statusseite lesen
Die Statusseite ist die schnellste Plausibilitätsprüfung. Sie zeigt:
- Beständigkeit des Beweises und das früheste Verankerungsdatum
- Tägliche Regelmäßigkeit (eine Kalender-Heatmap der verankerten Tage)
- Den Bitcoin-Block und die Transaktion, die die Verankerung tragen
- Download-Links für das Audit-CSV und das PDF-Zertifikat
Für automatisierte Prüfungen werden dieselben Daten als JSON bereitgestellt:
# Last anchored Bitcoin block
curl -s https://timestampgit.dev/api/statusLast/acme/payments-service
# Total number of stamped commits
curl -s https://timestampgit.dev/api/statusCount/acme/payments-service
# Combined summary (used by the Shields.io badges)
curl -s https://timestampgit.dev/api/statusSummary/acme/payments-service
Schritt 3 — Ein bestimmtes Datum im Browser verifizieren
Für einen Beweis auf Tagesebene verwenden Sie die kryptografische Verifizierungsseite:
https://timestampgit.dev/verification/{user}/{repo}/{date}
Diese Seite führt die vollständige mehrstufige Merkle-Kettenverifizierung lokal in Ihrem Browser durch. Der Commit-Hash, das Manifest, der Merkle-Pfad und der Bitcoin-Block-Header werden alle auf Ihrer Maschine geprüft – die Seite lädt nicht hoch, was Sie verifizieren. Diese Eigenschaft ist wichtig, wenn das Repository privat ist oder unter NDA steht: Der Auditor kann den Beweis bestätigen, ohne dass der Anbieter erfährt, welches Datum ihn interessiert hat.
Schritt 4 — Das Audit-Ledger oder PDF-Zertifikat abrufen
Compliance-Teams benötigen in der Regel ein Artefakt, das sie zu den Akten nehmen können. Beides ist nur eine Anfrage entfernt:
# Full audit ledger as CSV
curl -fsSL https://timestampgit.dev/api/audit/acme/payments-service -o audit.csv
# PDF certificate for one day
curl -fsSL https://timestampgit.dev/api/report/acme/payments-service/2026-09-14 -o certificate.pdf
Schritt 5 — Optional ein Verifizierungs-Badge einbetten
Das Badge-Widget unter /connected/{user}/{repo} bietet Ihnen eine Live-Vorschau und ein fertig zum Einfügen vorbereitetes Markdown-Snippet für Ihre README. Fügen Sie es ein, und jeder – ein Kunde, ein Investor, ein potenzieller Käufer – kann zur öffentlichen Verifizierungsansicht durchklicken:
<!-- Snippet copied from https://timestampgit.dev/connected/acme/payments-service -->
[](VERIFY_LINK)
Jeder der obigen Schritte läuft über den verwalteten GitHub-App-Workflow. Sie installieren die App einmal, und die Verifizierung ist ein Seitenaufruf oder eine HTTP-Anfrage – keine Kommandozeilenwerkzeuge, keine manuelle Protokollbehandlung, nichts, was auf Entwicklermaschinen gepflegt werden muss.
Verifizierungsergebnisse und Sonderfälle interpretieren
Eine erfolgreiche Verifizierung sagt Ihnen etwas Enges und zugleich Mächtiges: Der Commit-Hash existierte zum Zeitpunkt des Bitcoin-Blocks, auf den die Quittung verweist, oder davor, und der Merkle-Beweis verbindet diesen spezifischen Hash mit diesem Block. Da Bitcoin-Blöcke nicht umgeschrieben werden können, ohne den Proof-of-Work erneut zu erbringen, ist die Grenze „zum Zeitpunkt oder davor" absolut.
Einige Situationen treten regelmäßig auf:
- Kein Beweis für ein bestimmtes Datum. Bedeutet meist, dass an diesem Tag keine Commits vorlagen – das Manifest wird aus ausstehenden Hashes erstellt, ein leerer Tag erzeugt also nichts zu verankern. Prüfen Sie die Heatmap auf der Statusseite, um das zu bestätigen.
- Ausstehende Bestätigung. Die Verankerung ist ein zweistufiger Prozess. Der nächtliche Cron-Worker bündelt Hashes, baut den Merkle-Baum und übermittelt den Root an öffentliche OpenTimestamps-Kalender; die Bestätigung in einem Bitcoin-Block dauert dann einige Stunden – normalerweise etwa drei. Ein Beweis, der kurz nach Mitternacht geschrieben wird, ist daher möglicherweise erst später an diesem Morgen endgültig.
- Private Repositorys. Der Zugriff auf die Status- und Verifizierungsseiten für private Repositorys erfordert ein verschlüsseltes HMAC, das an die URL angehängt wird. Das HMAC ist spezifisch für die Serverinstanz, sodass Links nicht gegen eine andere Bereitstellung wiederverwendet werden können.
- Anbieterunabhängigkeit. Wenn Sie den gehosteten Verifizierer lieber gar nicht nutzen möchten, laden Sie die
.ots-Datei herunter und führen Sie sie mit den Open-Source-Werkzeugen von OpenTimestamps selbst gegen die Bitcoin-Blockchain aus. Das ist der harte Weg, und er ist langsamer, aber er existiert – und seine Existenz ist es, die den verwalteten Weg glaubwürdig macht.
Verifizierung in Enterprise- und selbst gehosteten Umgebungen
Enterprise-ZK-Modus. Eine 12-zeilige GitHub Action läuft auf Ihrer eigenen Infrastruktur und überträgt nur Commit-Hashes an die Timestamp-GIT-API. Der Dienst hat niemals Lesezugriff auf das Quell-Repository; Sie benötigen lediglich Lese- und Schreibzugriff auf das Ziel-Repository, das die Beweise erhält. Die Verifizierung bleibt unverändert – dieselben .ots-Dateien, dieselben öffentlichen Bitcoin-Daten, dieselben browserbasierten Merkle-Prüfungen.
Docker selbst gehostet. Für abgeschottete Umgebungen (Air-Gapped) wird Timestamp GIT als Docker-Image ausgeliefert, das Sie selbst betreiben. Ein Schnellstart-Docker-Compose-Setup sieht so aus:
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
Die Instanz ist unter http://localhost:8080 verfügbar, und ein Einrichtungsassistent beim ersten Start führt Sie durch die Verbindung Ihrer GitHub App und die Konfiguration der Bereitstellung. Die Verifizierung funktioniert vollständig innerhalb Ihres Netzwerks: Die .ots-Dateien, die Manifeste und der lokale Verifizierer sind alles, was Sie brauchen.
Eine zeitlich begrenzte Demo-Lizenz zur Evaluierung ist erhältlich, indem Sie das Anfrageformular auf der Docker-Lizenzseite mit Ihrem Namen, Ihrer Firma, Ihrer E-Mail und optional Ihrer Telefonnummer einreichen; die Lizenzdatei kann sofort heruntergeladen werden.
Verifizierung für Compliance-Teams automatisieren
Manuelle Verifizierung ist für ein einzelnes Audit in Ordnung. Kontinuierliche Compliance möchte sie in einer Pipeline haben. Die REST-API deckt das ab:
#!/usr/bin/env bash
set -euo pipefail
REPO="acme/payments-service"
BASE="https://timestampgit.dev/api"
# Merkle chain data for local verification of a specific day
curl -fsSL "$BASE/verify/$REPO/2026-09-14" -o "verify-2026-09-14.json"
# Monthly audit ledger
curl -fsSL "$BASE/audit/$REPO" -o "audit-$REPO.csv"
# PDF certificate per anchored day
curl -fsSL "$BASE/report/$REPO/2026-09-14" -o "certificate-2026-09-14.pdf"
Für Dashboards fragen Sie die Status-Endpunkte ab, statt die vollständige Verifizierungsnutzlast:
# Feed /api/statusLast and /api/statusCount into your monitoring system
curl -fsSL "$BASE/statusLast/$REPO"
curl -fsSL "$BASE/statusCount/$REPO"
Ein nützliches Muster ist, einen veralteten statusLast als Alarmbedingung zu behandeln: Wenn sich der zuletzt verankerte Block für ein Repository mit aktiven Commits seit mehr als einem Tag nicht bewegt hat, braucht etwas in der Pipeline Aufmerksamkeit. Die gesamte Verifizierungsberechnung findet lokal im Browser oder in Ihrem eigenen Skript statt – keine sensiblen Nutzlasten verlassen Ihre Kontrolle. Wenn Sie die Verankerungsseite davon noch einrichten, siehe Automatisiertes Git-Timestamping: Wie eine GitHub App jeden Commit verankert; dieser Artikel handelt bewusst davon, was danach passiert.
FAQ
Muss ich Kommandozeilenwerkzeuge ausführen, um einen Timestamp-GIT-Beweis zu verifizieren?
Nein. Timestamp GIT bietet eine webbasierte Verifizierungsseite, die alle kryptografischen Prüfungen lokal in Ihrem Browser durchführt. Sie können auch die .ots-Datei herunterladen und Standard-OpenTimestamps-Werkzeuge verwenden, wenn Sie das bevorzugen, aber der verwaltete Dienst erfordert keine CLI-Nutzung.
Kann ich einen Zeitstempel verifizieren, ohne Timestamp GIT zu vertrauen?
Ja. Der Beweis stützt sich ausschließlich auf SHA-256-Hashes und Bitcoin-Block-Daten. Sie können die .ots-Datei unabhängig gegen die Bitcoin-Blockchain mit Open-Source-OpenTimestamps-Werkzeugen verifizieren, was Anbieterunabhängigkeit gewährleistet.
Wie lange dauert es, bis ein Zeitstempel verifizierbar wird? Nachdem der nächtliche Cron-Job den Merkle-Root in einer Bitcoin-Transaktion verankert hat, dauert es typischerweise etwa 3 Stunden, bis die Transaktion in einem Bitcoin-Block bestätigt wird. Sobald sie bestätigt ist, ist der Beweis unveränderlich und verifizierbar.
Kann ich Zeitstempel für private Repositorys verifizieren? Ja, aber der Zugriff auf die Status- und Verifizierungsseiten für private Repositorys erfordert ein verschlüsseltes HMAC, das an die URL angehängt wird. Dies stellt sicher, dass nur autorisierte Benutzer die Beweisdetails einsehen können.
Fazit
Die Verifizierung ist der Punkt, an dem ein Zeitstempel aufhört, ein Versprechen zu sein, und zu einem Beweis wird. Die Kette ist kurz und überprüfbar: Commit-Hash → tägliches Manifest → Merkle-Root → Bitcoin-Block. Ob Sie ihn auf der Statusseite bestätigen, die browserbasierte Merkle-Verifizierung ausführen oder das CSV-Ledger für eine Einreichung abrufen – die Schlussfolgerung beruht auf Bitcoin-Mathematik und nicht auf dem Wort von irgendjemandem – auch nicht auf unserem.
Installieren Sie die GitHub App in einem Repository, lassen Sie den nächtlichen Lauf seine Arbeit tun und verifizieren Sie dann selbst ein Datum, bevor jemand Sie darum bittet. Es dauert ein paar Minuten und ist der Unterschied zwischen „wir glauben, wir können es beweisen" und „hier ist der Beweis".
Verwandte Beiträge
- Automatisiertes Git-Timestamping: Wie eine GitHub App jeden Commit verankert
- Geistiges Eigentum schützen: Ein Leitfaden für Softwareentwickler
- Prior-Art-Schutz für Software-Startups: Ein Leitfaden