
Поддерживает репозиторий TUF, который безопасно доставляет клиентам корень доверия Sigstore (trusted_root.json), используя пороговое подписание держателями ключей, онлайн-подписание через KMS и автоматизированную публикацию.
Проект root-signing поддерживает репозиторий TUF, используемый для безопасной доставки корневого сертификата доверия Sigstore (trusted_root.json) клиентам Sigstore.
Репозиторий опубликован для использования клиентами sigstore по адресу https://tuf-repo-cdn.sigstore.dev/.
Источники метаданных можно найти в папке metadata/, артефакты (например, trusted_root.json) — в папке targets/. См. Operation для получения подробностей о том, как изменять эти источники.
Безопасность root-signing зависит от владельцев ключей: это должны быть доверенные члены сообщества, которые готовы и способны выполнять обязанности владельца ключа, такие как проверка нового содержимого trusted_root.json и подписание в ходе событий подписания.
Все изменения артефактов или метаданных требуют криптографических подписей от владельцев ключей Sigstore. Текущие владельцы ключей, требования к подписям и график подписания задокументированы в опубликованном репозитории
| Владельцы ключей | Срок |
|---|---|
| Lance Ball | Июль 2025 - |
| Joshua Lock | Июль 2022 - |
| Bob Callaway | Июнь 2021 - |
| Marina Moore | Июнь 2021 - |
| Santiago Torres-Arias | Июнь 2021 - |
| Почётные владельцы ключей | Срок |
|---|---|
| Luke Hinds | Июнь 2021 - Июль 2022 |
| Dan Lorenc | Июнь 2021 - Июль 2025 |
Репозиторий TUF изменяется двумя способами:
События подписания — это pull-запросы, создаваемые и управляемые root-signing, в которых владельцы ключей подписывают предложенные изменения. События подписания происходят по нескольким причинам:
Во всех случаях триггером для создания PR события подписания является push в ветку "sign/*" (либо сопровождающим, либо рабочим процессом).
Существует отдельный репозиторий root-signing-staging: любые нетривиальные изменения (метаданных или артефактов) должны тестироваться в root-signing-staging перед тем, как они будут внесены в событие подписания root-signing.
Онлайн-подписание происходит в двух ситуациях:
На практике онлайн-подписание происходит как минимум каждые три дня из-за истечения срока действия онлайн-подписи.
Онлайн-подписание приводит к развёртыванию «предпроизводственной» версии по адресу https://sigstore.github.io/root-signing/. Это полностью функциональный репозиторий TUF, который используется для запуска как общих тестов клиентов TUF, так и специфичных для Sigstore тестов клиентов (с cosign и другими клиентами sigstore). Успешные тесты приводят к развёртыванию в производственной среде по адресу https://tuf-repo-cdn.sigstore.dev/.
Важные рабочие процессы в root-signing:
create-signing-events создаёт ветки для событий подписания, когда срок действия подписей близок к истечению.
Запускается по расписаниюsigning-event создаёт pull-запросы событий подписания и управляет ими. Запускается при отправке веток
"sign/*"online-sign фиксирует и объединяет онлайн-подписи, а также запускает publish. Запускается при
отправке в "main" (но может быть запущен вручную в любое время)publish публикует тестовый репозиторий на GitHub Pages, запускает клиентские тесты и, наконец, публикует
репозиторий. Запускается по диспетчеризации из online-signОсобая благодарность Dan Lorenc, Trishank Kuppusamy, Marina Moore, Santiago Torres-Arias и всему сообществу SigStore!
Запись церемонии подписания доступна здесь.