
Gestisce il repository TUF che distribuisce in modo sicuro la radice di fiducia di Sigstore (trusted_root.json) ai client, utilizzando la firma a soglia dei titolari delle chiavi, la firma online tramite KMS e la pubblicazione automatizzata.
Il progetto root-signing mantiene il repository TUF utilizzato per distribuire in modo sicuro la radice di fiducia di Sigstore (trusted_root.json) ai client Sigstore.
Il repository è pubblicato per il consumo da parte dei client sigstore all'indirizzo https://tuf-repo-cdn.sigstore.dev/.
Le sorgenti dei metadati si trovano nella cartella metadata/, gli artefatti (come trusted_root.json) nella cartella targets/. Vedere Operatività per maggiori dettagli su come modificare queste sorgenti.
La sicurezza di root-signing si basa sui detentori delle chiavi: devono essere membri fidati della community disposti e in grado di svolgere i compiti di detentore delle chiavi, come verificare il nuovo contenuto di trusted_root.json e firmare durante gli eventi di firma.
Tutte le modifiche agli artefatti o ai metadati richiedono firme crittografiche dai detentori delle chiavi di Sigstore. Gli attuali detentori delle chiavi, i requisiti di firma e il calendario delle firme sono documentati nel repository pubblicato
| Detentori delle chiavi | Mandato |
|---|---|
| Lance Ball | Luglio 2025 - |
| Joshua Lock | Luglio 2022 - |
| Bob Callaway | Giugno 2021 - |
| Marina Moore | Giugno 2021 - |
| Santiago Torres-Arias | Giugno 2021 - |
| Detentori delle chiavi emeriti | Mandato |
|---|---|
| Luke Hinds | Giugno 2021 - Luglio 2022 |
| Dan Lorenc | Giugno 2021 - Luglio 2025 |
Il repository TUF viene modificato in due modi:
Gli eventi di firma sono pull request create e gestite da root-signing in cui i detentori delle chiavi firmano le modifiche proposte. Gli eventi di firma si verificano per diversi motivi:
In tutti i casi, l'innesco per la creazione di una PR di evento di firma è un push verso un branch "sign/*" (da parte del manutentore o di un workflow).
Esiste un repository separato root-signing-staging: qualsiasi modifica non banale (ai metadati o agli artefatti) dovrebbe essere testata in root-signing-staging prima di essere introdotta in un evento di firma di root-signing.
La firma online avviene in due situazioni:
In pratica la firma online avviene almeno ogni tre giorni a causa della scadenza delle firme online.
La firma online porta a un deployment di "preproduzione" all'indirizzo https://sigstore.github.io/root-signing/. Si tratta di un repository TUF completamente funzionale utilizzato per eseguire sia test generici per client TUF sia test specifici per client Sigstore (con cosign e altri client sigstore). I test superati portano al deployment in produzione all'indirizzo https://tuf-repo-cdn.sigstore.dev/.
I workflow importanti in root-signing sono:
create-signing-events crea i branch per gli eventi di firma quando le firme sono vicine alla scadenza.
Viene eseguito secondo una pianificazionesigning-event crea e gestisce le pull request degli eventi di firma. Viene eseguito quando vengono
effettuati push sui branch "sign/*"online-sign esegue il commit e il merge delle firme online, e invia anche publish. Viene eseguito quando
viene effettuato il push su "main" (ma può essere inviato manualmente in qualsiasi momento)publish pubblica un repository di test su GitHub Pages, esegue i test del client e infine pubblica
il repository. Viene eseguito su invio da online-signUn ringraziamento speciale a Dan Lorenc, Trishank Kuppusamy, Marina Moore, Santiago Torres-Arias e all'intera comunità SigStore!
Una registrazione della cerimonia di firma è disponibile qui.