Sigstore is an open-source project that makes signing, verifying, and auditing software artifacts as easy as using HTTPS, removing the burden of key management by tying signatures to short-lived OIDC identities instead of long-lived private keys. Cosign is the primary CLI tool in the Sigstore ecosystem: it signs container images, blobs, Helm charts, and OCI artifacts, attaches SBOM and provenance attestations, and enforces verification policies in Kubernetes admission controllers. Real-world adoption now spans Homebrew, PyPI, Maven Central, and GitHub's native Artifact Attestations, and Cosign v3 (October 2025) made the portable Sigstore bundle format the default output for both signing and verifying. This cheat sheet covers the full supply chain security workflow: keyless signing flows, transparency log queries, SLSA provenance, Kyverno policies, Tekton Chains integration, and migration away from the now-retiring Docker Content Trust.
What This Cheat Sheet Covers
This topic spans 15 focused tables and 109 indexed concepts, 97 flashcards. Below is a complete table-by-table outline of this topic, spanning foundational concepts through advanced details.
A jump-to index of every table row in this cheat sheet.
An interactive map of every table and concept in this topic.
Table 1: Sigstore Architecture and Core Components
Sigstore is built on interlocking services that together provide signing, certificate issuance, and public auditability without requiring signers to manage long-lived keys. Understanding how Fulcio, Rekor, and the trust root (TUF) fit together, plus the newer TrustedRoot/SigningConfig objects that carry that trust material locally, is the prerequisite for every other Sigstore concept.
| Component | Example | Description | |
|---|---|---|---|
cosign sign --yes ghcr.io/org/app:abc | • The CLI tool for signing, verifying, and attaching attestations to container images and OCI artifacts. Cosign v3 made the Sigstore bundle format the default signing and verification output • the old flag-per-file layout still works but is being phased out toward Cosign v4. | ||
https://fulcio.sigstore.dev | • Free, open-source Certificate Authority that issues short-lived X.509 certificates (10-minute TTL) bound to an OIDC identity • publishes every certificate to a certificate transparency log so mis-issued certs are detectable | ||
https://rekor.sigstore.dev | • Append-only, tamper-evident transparency log for software signatures, backed by a Merkle tree • Rekor v2 (tile-based, GA since October 2025) is live and opt-in, but the public good instance still defaults new uploads to Rekor v1 while the wider ecosystem migrates | ||
cosign initialize | • Distributes Sigstore's trust root (the Fulcio root CA certificate and Rekor public key), established during a public root-signing ceremony • protects against key compromise and rollback attacks; cosign initialize fetches and verifies the current root | ||
git commit -S -m "msg" | • Sigstore tool for keyless Git commit signing using an OIDC identity, verified with gitsign verify rather than git verify-commit• stores the certificate in the commit and the signing event in Rekor; supports a headless device OAuth flow for remote CI | ||
ClusterImagePolicy CRD | Kubernetes admission controller from Sigstore that enforces image-signing policies using ClusterImagePolicy CRDs before pods are admitted. | ||
cosign trusted-root create --certificate-chain fulcio.pem --rekor-key rekor.pub | A single local file bundling Fulcio, Rekor, and CT log key material for offline or private-instance verification, passed to cosign verify with --trusted-root instead of fetching the root live from TUF. | ||
cosign signing-config create --fulcio="url=https://fulcio.example.com,..." --rekor="url=https://rekor.example.com,..." | Points Cosign's signing requests at specific Fulcio, Rekor, and timestamp-authority service instances, letting operators rotate log shards without every client needing an update. |