Skip to content
Latchkey

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.

CosignNotary
ProjectSigstoreNotary v1 (legacy) / Notation v2
Keyless signingYes (OIDC + Rekor log)No
Adoption (2026)Broad and growingv1 legacy; Notation emerging
Signature storageIn the OCI registryTUF metadata
Ease of CI useStrong (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.

Related guides

References

Run this faster and cheaper on Latchkey managed runners - self-healing included. Start free → 30-day trial · No credit card