Cosign vs Notary: Signing Container Images
Cosign (Sigstore) is the widely adopted modern image signer, notably keyless signing; classic Notary v1 (DCT) is largely legacy, with Notation as its successor.
Image signing proves provenance and integrity. Cosign, part of Sigstore, supports key-based and keyless (OIDC, transparency log) signing and stores signatures alongside images in the registry. Notary v1 underpinned Docker Content Trust and is now mostly legacy; the CNCF Notary project continues as Notation.
| Cosign | Notary | |
|---|---|---|
| Project | Sigstore | Notary v1 (legacy) / Notation v2 |
| Keyless signing | Yes (OIDC + Rekor log) | No |
| Adoption (2026) | Broad and growing | v1 legacy; Notation emerging |
| Signature storage | In the OCI registry | TUF metadata |
| Ease of CI use | Strong (keyless from OIDC) | Heavier setup |
Where Cosign wins
Cosign is the de facto modern choice: keyless signing uses your CI OIDC identity and a transparency log (Rekor), so there are no long-lived keys to manage, which fits ephemeral CI well. Signatures live in the registry next to the image, and the Sigstore ecosystem (policy, attestations) is broad.
Where Notary/Notation fit
Classic Notary v1 (Docker Content Trust) is largely legacy; do not start new work on it. The CNCF Notation project (Notary v2) offers a TUF-based, registry-native signing standard backed by some enterprise/registry vendors, and may fit organizations standardizing on that ecosystem.
In CI
Cosign keyless signing pairs naturally with CI OIDC tokens, avoiding key storage. If your registry or compliance stack mandates Notation, use it; otherwise Cosign is the simpler, more widely supported default in modern pipelines.
The verdict
For new pipelines, prefer Cosign, especially keyless signing tied to CI OIDC; treat Notary v1 as legacy. Consider Notation only if your registry or organization standardizes on it.