
Verwaltet das TUF-Repository, das den Sigstore-Vertrauensanker (trusted_root.json) sicher an Clients ausliefert, mittels Threshold-Signierung durch Schlüsselinhaber, KMS-Online-Signierung und automatisierter Veröffentlichung.
Das root-signing-Projekt verwaltet das TUF-Repository, das verwendet wird, um die Sigstore-Vertrauenswurzel (trusted_root.json) sicher an Sigstore-Clients auszuliefern.
Das Repository wird für die Nutzung durch Sigstore-Clients unter https://tuf-repo-cdn.sigstore.dev/ veröffentlicht.
Die Metadatenquellen befinden sich im Ordner metadata/, Artefakte (wie trusted_root.json) im Ordner targets/. Siehe Betrieb für weitere Details zur Änderung dieser Quellen.
Die Sicherheit von root-signing beruht auf Schlüsselinhabern: Sie sollten vertrauenswürdige Community-Mitglieder sein, die bereit und in der Lage sind, Pflichten als Schlüsselinhaber wahrzunehmen, wie etwa die Überprüfung neuer trusted_root.json-Inhalte und das Signieren bei Signierveranstaltungen.
Alle Änderungen an Artefakten oder Metadaten erfordern kryptografische Signaturen von Sigstore-Schlüsselinhabern. Aktuelle Schlüsselinhaber, Signaturanforderungen und der Signierzeitplan sind im veröffentlichten Repository dokumentiert.
| Schlüsselinhaber | Amtszeit |
|---|---|
| Lance Ball | Juli 2025 - |
| Joshua Lock | Juli 2022 - |
| Bob Callaway | Juni 2021 - |
| Marina Moore | Juni 2021 - |
| Santiago Torres-Arias | Juni 2021 - |
| Emeritierte Schlüsselinhaber | Amtszeit |
|---|---|
| Luke Hinds | Juni 2021 - Juli 2022 |
| Dan Lorenc | Juni 2021 - Juli 2025 |
Das TUF-Repository wird auf zwei Arten geändert:
Signierveranstaltungen sind Pull Requests, die von root-signing erstellt und verwaltet werden, bei denen Schlüsselinhaber vorgeschlagene Änderungen signieren. Signierveranstaltungen finden aus mehreren Gründen statt:
In allen Fällen ist der Auslöser für die Erstellung eines Signierveranstaltungs-PR ein Push auf einen „sign/*"-Branch (entweder durch einen Maintainer oder einen Workflow).
Es gibt ein separates root-signing-staging-Repository: Alle nicht-trivialen Änderungen (an Metadaten oder den Artefakten) sollten in root-signing-staging getestet werden, bevor sie in einer root-signing-Signierveranstaltung eingeführt werden.
Online-Signierung findet in zwei Situationen statt:
In der Praxis findet die Online-Signierung mindestens alle drei Tage statt, da Online-Signaturen ablaufen.
Die Online-Signierung führt zu einer „Preproduction"-Bereitstellung unter https://sigstore.github.io/root-signing/. Dies ist ein voll funktionsfähiges TUF-Repository, das sowohl für allgemeine TUF-Client-Tests als auch für Sigstore-spezifische Client-Tests (mit cosign und anderen Sigstore-Clients) verwendet wird. Erfolgreiche Tests führen zur Produktionsbereitstellung unter https://tuf-repo-cdn.sigstore.dev/.
Die wichtigen Workflows in root-signing sind:
create-signing-events erstellt Branches für Signing-Events, wenn Signaturen kurz vor dem Ablauf stehen.
Läuft nach Zeitplansigning-event erstellt und verwaltet die Pull Requests für Signing-Events. Läuft, wenn "sign/*"-Branches
gepusht werdenonline-sign committet und merged Online-Signaturen und löst außerdem publish aus. Läuft, wenn
"main" gepusht wird (kann aber jederzeit manuell ausgelöst werden)publish veröffentlicht ein Test-Repository auf GitHub Pages, führt Client-Tests aus und veröffentlicht
schließlich das Repository. Läuft bei Auslösung durch online-signBesonderer Dank gilt Dan Lorenc, Trishank Kuppusamy, Marina Moore, Santiago Torres-Arias und der gesamten SigStore-Community!
Eine Aufzeichnung der Signing-Zeremonie ist hier verfügbar.