Timestamp GIT Secure your prior art without exposing code

← Alle Beiträge

2026-09-19

Git-Commits automatisch mit einer GitHub-App zeitstempeln

Git-Commits automatisch mit einer GitHub-App zeitstempeln
timestamp git blockchain proof

Git-Commits automatisch mit einer GitHub-App zeitstempeln

Sie wissen bereits, dass der Nachweis, wann ein Commit existierte, genauso wichtig sein kann wie der Code selbst. Wenn Patent-Trolle, Kundenstreitigkeiten oder ein ehemaliger Mitarbeiter jemals Ihre Zeitachse infrage stellen, reicht ein selbst gehostetes Git-Protokoll in der Regel nicht aus. Interne Protokolle können bearbeitet werden, und der Verlauf eines gehosteten Repositorys ist kein unveränderlicher Nachweis des Stands der Technik.

Der schwierige Weg besteht darin, das zugrunde liegende Zeitstempel-Protokoll zu erlernen, für jeden Commit manuelle Befehle auszuführen, Hashes zu kopieren, auf Bestätigungen zu warten und Belege sicher zu speichern. Dieser Ansatz scheitert in dem Moment, in dem Sie mehrere Repositories, mehrere Entwickler oder eine arbeitsreiche Release-Woche haben.

Timestamp GIT nimmt Ihnen diese gesamte manuelle Last ab. Sie installieren einmalig eine GitHub-App, wählen die zu schützenden Repositories aus, und jeder neue Commit wird automatisch nach einem nächtlichen Zeitplan in die Bitcoin-Blockchain gestempelt. Es gibt keine CLI-Tools auszuführen, keine Belegdateien manuell zu verwalten und keine OpenTimestamps-Befehle zu erlernen.

Wenn Sie mit dem zugrunde liegenden Grund, warum dies wichtig ist, noch nicht vertraut sind, lesen Sie What Is Cryptographic Prior Art and Why Does It Matter for Software?.

Dieser Artikel führt Sie durch den automatisierten Weg: einmalige Einrichtung, was zwischen Commit und Bitcoin-Anker passiert, wie Sie Ihre Nachweise überwachen und wie Sie den Prozess langfristig gesund halten.

Einmalige Einrichtung: Installieren der GitHub-App

Die gesamte Einrichtung besteht aus der Installation einer GitHub-App. Es gibt keinen lokalen Agenten, keine Konfigurationsdatei und kein zu wartendes Skript.

Hier ist der Ablauf:

  1. Installieren Sie die Timestamp GIT GitHub-App aus dem GitHub Marketplace.
  2. Wählen Sie die Repositories aus, die Sie überwachen möchten.
    • Öffentliche Repositories werden im kostenlosen Tarif unterstützt.
    • Private Repositories erfordern den Pro- oder Enterprise-Plan.
  3. Wählen Sie Ihren Bereitstellungsmodus:
    • Standard-Modus: Die GitHub-App liest den HEAD-Commit-Hash aus dem Quell-Repository und schreibt Nachweisdateien in ein Ziel-Repository oder einen Ziel-Branch.
    • Enterprise-ZK-Modus: Eine GitHub Action, die in Ihrer Umgebung läuft, überträgt ausschließlich Commit-Hashes an die Timestamp-GIT-API. Timestamp GIT erhält keinerlei Lesezugriff auf das Quell-Repository.
  4. Bestätigen Sie den Zugriff.
    • Der Standard-Modus erfordert Lesezugriff auf das Quell-Repository und Lese-/Schreibzugriff auf das Ziel-Repository. Dies ist eine Anforderung des GitHub-Berechtigungssystems: Es gibt keine reine Commit-Hash-Leseberechtigung.
    • Der Enterprise-ZK-Modus erfordert nur Lese-/Schreibzugriff auf das Ziel-Repository. Das Quell-Repository muss Timestamp GIT niemals Lesezugriff gewähren.
  5. Fertig. Ab diesem Zeitpunkt werden neue Commits automatisch erfasst.

Nach der Installation können Sie die überwachten Repositories über das Timestamp-GIT-Dashboard verwalten. Es gibt nichts zu kompilieren, keinen Daemon auszuführen und keinen Cron-Job zu konfigurieren.

Die automatisierte Pipeline: Vom Commit zum Bitcoin-Anker

Sobald die GitHub-App installiert ist, läuft der Prozess, ohne dass Sie darüber nachdenken müssen.

Was nach jedem Commit passiert

Wenn Sie einen Commit in ein überwachtes Repository pushen, erkennt die GitHub-App den neuen Commit über einen Webhook. Die App liest Ihre Quelldateien nicht. Sie extrahiert ausschließlich den Commit-Hash – einen kryptografisch sicheren Fingerabdruck des Repository-Zustands zu diesem Zeitpunkt.

Dieser Commit-Hash wird für den nächsten nächtlichen Batch in eine Warteschlange gestellt.

Der nächtliche Verankerungslauf

Jede Nacht führt ein Worker-Prozess die folgende Pipeline aus:

  1. Alle in der Warteschlange befindlichen Commit-Hashes für jedes überwachte Repository werden gesammelt.
  2. Manifest-Dateien werden für den Tag erstellt.
  3. Aus den gesammelten Hashes wird ein Merkle-Baum aufgebaut.
  4. Die Merkle-Wurzel wird mithilfe des OpenTimestamps-Protokolls in der Bitcoin-Blockchain verankert.
  5. Nachweisbelege werden generiert und zurück in einen dedizierten Timestamps-Branch oder ein Shadow-Repository übertragen.

Die Bitcoin-Bestätigung selbst dauert in der Regel einige Stunden. Das bedeutet, dass die Nachweisdateien in der Regel einige Stunden nach dem nächtlichen Lauf in Ihrem Repository erscheinen, nicht unmittelbar nach dem Commit.

Zustellung der Nachweise

Das Ergebnis ist eine .ots-Belegdatei plus das tägliche Manifest. Diese Dateien werden in einen dedizierten Branch oder ein Shadow-Repository geschrieben, wodurch sie von Ihrem normalen Quellcode-Verlauf getrennt bleiben.

Sie können das Ergebnis mit gewöhnlichen Git-Befehlen überprüfen:

# Nach Abschluss der nächtlichen Verankerung
git fetch origin

# Nach dem dedizierten Timestamps-Branch oder Shadow-Repository suchen
git branch -r

# Den Branch auschecken, der .ots-Belege enthält
git checkout <timestamps-branch>

# Die täglichen Nachweisdateien auflisten
ls -1 *.ots

Der genaue Branch-Name hängt von Ihrer Repository-Konfiguration ab.

Enterprise-ZK-Modus

Für Teams, die einem Dritten keinerlei Quellcode-Zugriff gewähren können, ändert der Enterprise-ZK-Modus den Datenfluss.

Anstatt dass die GitHub-App Metadaten des Quell-Repositorys liest, läuft eine kleine GitHub Action innerhalb Ihrer Infrastruktur. Die Action überträgt ausschließlich den Commit-Hash an die Timestamp-GIT-API. Timestamp GIT erhält niemals Code, liest niemals das Quell-Repository und sieht niemals etwas anderes als den Hash.

Die nächtliche Verankerungspipeline ist ab diesem Punkt identisch: Hash-Warteschlange, Manifest, Merkle-Baum, OpenTimestamps-Nachweis, Bitcoin-Anker und Zustellung der Nachweise zurück an Ihr Ziel-Repository.

Überwachung und Fehlerbehandlung

Automatisierung bedeutet nicht blindes Vertrauen. Sie sollten sehen können, dass das System funktioniert, und Sie sollten einen klaren Weg haben, wenn etwas falsch aussieht.

Repository-Status-Dashboard

Jedes überwachte Repository verfügt über eine Statusseite, die Folgendes anzeigt:

  • Nachweis-Langlebigkeit, einschließlich des frühesten Ankerdatums.
  • Tägliche Verankerungsregelmäßigkeit.
  • Bitcoin-Block- und Transaktionsdaten, die mit jedem Zeitstempel verknüpft sind.
  • Eine Kalender-Heatmap der verankerten Tage.
  • Herunterladbare Audit-CSV- und PDF-Zertifikatsberichte.

Sie können den Status auch über die öffentliche API abfragen:

curl -s https://timestampgit.dev/api/statusLast/$GITHUB_USER/$GITHUB_REPO | jq .

Private Repositories fügen Status-URLs einen verschlüsselten HMAC hinzu. Nur autorisierte Benutzer können Zeitstempel privater Repositories einsehen, und der HMAC ist spezifisch für die Serverinstanz.

README-Badges

Timestamp GIT stellt einbettbare Badges für Ihre README bereit. Das Badge zeigt den aktuellen Verifizierungsstatus an, und jeder, der darauf klickt, kann den Zeitstempel über die verlinkte Seite verifizieren. Dies ist nützlich für Open-Source-Projekte und für Agenturen, die ihren Arbeitsnachweis öffentlich zeigen möchten, ohne privaten Code preiszugeben.

Audit- und Compliance-Exporte

Für Compliance- oder rechtliche Prüfungen können Sie Folgendes herunterladen:

  • Ein vollständiges Audit-Protokoll als CSV.
  • Ein PDF-Zertifikat für ein bestimmtes Datum.

Diese Dateien bieten Ihnen eine Off-Chain-Aufzeichnung, die die kryptografischen Belege in Ihrem Repository ergänzt.

Was passiert, wenn ein Commit übersehen wird?

Wenn ein Commit nicht im erwarteten nächtlichen Batch verarbeitet wird, bleibt der in der Warteschlange befindliche Hash in der Zeitstempel-Warteschlange und wird im nächsten Lauf aufgegriffen. Das Repository-Status-Dashboard ist der erste Ort, an dem Sie nach Lücken oder Unregelmäßigkeiten suchen sollten. Wenn ein Repository durchgehend fehlende Tage aufweist, wenden Sie sich an den Support, bevor Sie sich für einen Rechtsanspruch auf den betroffenen Zeitraum verlassen.

Selbst gehostete Docker-Option

Für Air-Gap-Umgebungen oder maximale Betriebskontrolle ist Timestamp GIT als Docker-Image verfügbar. Eine selbst gehostete Instanz verwendet denselben GitHub-App-Workflow, läuft jedoch auf Infrastruktur, die Ihnen gehört.

Ein minimales 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

Starten Sie es mit:

docker compose pull
docker compose up -d
docker compose logs -f timestampgit

Die Anwendung ist nach dem Start unter http://localhost:8080 verfügbar. Beim ersten Start führt Sie ein Einrichtungsassistent durch die Verbindung Ihrer GitHub-App und die Konfiguration der Instanz. Eine zeitlich begrenzte Demo-Lizenz ist zur Evaluierung verfügbar.

Best Practices für automatisiertes Zeitstempeln

Automatisierung beseitigt die repetitive Arbeit, aber ein paar Gewohnheiten machen Ihre Zeitstempel-Historie deutlich stärker.

Committen Sie regelmäßig. Die Pipeline verankert tägliche Batches. Wenn Sie nur einmal im Monat committen, erzeugen Sie weniger Nachweispunkte und größere Lücken zwischen den Ankern. Regelmäßige Commits schaffen eine dichte, kontinuierliche Aufzeichnung des Stands der Technik.

Verwenden Sie aussagekräftige Commit-Nachrichten. Commit-Hashes sind das, was zeitgestempelt wird, aber der menschenlesbare Audit-Trail ist weiterhin wichtig. Eine Nachricht wie Implement cache warming for API responses ist in einem Streitfall deutlich nützlicher als fix stuff.

Halten Sie .ots-Belege getrennt vom Quellcode. Behandeln Sie den Timestamps-Branch oder das Shadow-Repository als reinen Append-only-Beweisspeicher. Vermeiden Sie es, ihn zu bearbeiten, zu squashen oder zu löschen.

Verifizieren Sie regelmäßig eine Stichprobe. Öffnen Sie mindestens einmal pro Quartal die öffentliche Verifizierungsseite für einen repräsentativen Zeitstempel und bestätigen Sie, dass der Merkle-Nachweis korrekt aufgelöst wird. Dies erkennt Konfigurationsdrift, bevor Sie die Beweise benötigen.

Verwenden Sie den Enterprise-ZK-Modus für sensible Projekte. Wenn das Repository Geschäftsgeheimnisse, interne Tools oder unveröffentlichte Produktlogik enthält, ist der Enterprise-ZK-Modus die stärkste Standardeinstellung. Timestamp GIT sieht ausschließlich Commit-Hashes, und Ihr Code verlässt niemals Ihre Umgebung.

Ziehen Sie Docker-Self-Hosting für regulierte Umgebungen in Betracht. Wenn Sie einen Air-Gap-Betrieb oder volle Kontrolle über die GitHub-App-Verbindung benötigen, hosten Sie selbst mit dem Docker-Image.

FAQ

Wie funktioniert automatisches Zeitstempeln mit einer GitHub-App?

Sobald Sie die Timestamp-GIT-GitHub-App installieren und Repositories auswählen, erkennt die App neue Commits automatisch über Webhooks. Jede Nacht bündelt sie alle Commit-Hashes, erstellt einen Merkle-Baum und verankert die Wurzel mithilfe von OpenTimestamps in der Bitcoin-Blockchain. Nachweisbelege (.ots-Dateien) werden anschließend zurück in einen dedizierten Branch Ihres Repositorys übertragen – keine manuellen Schritte erforderlich.

Wird mein Quellcode jemals gegenüber Timestamp GIT offengelegt?

Nein. Timestamp GIT verarbeitet ausschließlich Git-Commit-Hashes, nicht den eigentlichen Quellcode. Im Standard-Modus benötigt die GitHub-App Lesezugriff auf das Repository, um den Commit-Hash abzurufen, liest jedoch niemals Dateiinhalte. Im Enterprise-ZK-Modus läuft eine GitHub Action in Ihrer Infrastruktur und überträgt ausschließlich den Commit-Hash an die API, sodass Timestamp GIT keinerlei Zugriff auf Ihren Code hat.

Was passiert, wenn Timestamp GIT sein Geschäft aufgibt?

Ihre Zeitstempel bleiben für immer gültig. Die Nachweise sind in der Bitcoin-Blockchain verankert und basieren ausschließlich auf SHA-256 und Bitcoin-Blockdaten. Sie können sie unabhängig mit Standard-OpenTimestamps-Tools verifizieren, selbst wenn Timestamp GIT nicht mehr existiert. Die .ots-Belegdateien werden in Ihrem Repository gespeichert, sodass Sie sie immer haben.

Kann ich Timestamp GIT mit privaten Repositories verwenden?

Ja. Die Pro- und Enterprise-Pläne unterstützen private Repositories. Bei privaten Repos enthalten Status-Badges und Verifizierungslinks einen verschlüsselten HMAC, sodass nur autorisierte Benutzer den Zeitstempel-Status einsehen können. Der Enterprise-ZK-Modus wird für maximale Privatsphäre empfohlen, da er keinen Lesezugriff auf das Quell-Repository erfordert.

Einrichten und vergessen

Manuelles Zeitstempeln scheitert, weil es davon abhängt, dass jemand daran denkt, es zu tun. Der Wert kryptografischen Stands der Technik entsteht durch Konsistenz über Monate und Jahre, nicht durch eine einzelne heroische Anstrengung.

Timestamp GIT macht diese Konsistenz zur Infrastruktur. Installieren Sie die GitHub-App einmal, verbinden Sie Ihre Repositories, und der nächtliche Worker übernimmt Fingerprinting, Batching, Bitcoin-Verankerung und Nachweiszustellung. Sie erhalten unveränderliche Nachweise des Stands der Technik ohne laufenden Betriebsaufwand.

Der kostenlose Tarif deckt öffentliche Repositories ab. Pro fügt private Repositories für 49 $/Monat hinzu, und der Enterprise-ZK-Modus kostet 199 $/Monat mit dem GitHub-Action-Workflow. Für Air-Gap- oder regulierte Umgebungen ist auch die selbst gehostete Docker-Lizenz verfügbar.

Beginnen Sie noch heute mit dem Aufbau Ihres Portfolios kryptografischen Stands der Technik: Installieren Sie die Timestamp-GIT-GitHub-App und verbinden Sie Ihr erstes Repository.

Verwandte Beiträge

EU label: AI-generated content