Freedom251 › Code Signing Software
Cosign

What Cosign is
Cosign signs and verifies OCI container images and other software artifacts. It can store container signatures alongside images in an OCI registry and publish generic artifacts through OCI. Supported targets include blobs, binaries, scripts, configuration files, SBOMs, WASM modules, Tekton bundles, eBPF modules, and in-toto attestations signed with DSSE. The default keyless method uses temporary keys held in memory, short-lived Fulcio certificates, and entries in the Rekor transparency log. Other signing options include hardware and KMS keys, encrypted keypairs generated by Cosign, and user-provided PKI. The project lists integrations with AWS ECR, Google Artifact Registry, Docker Hub, Azure Container Registry, GitLab Container Registry, and GitHub Container Registry, and provides CI guidance for GitHub Actions and GitLab. Offline verification works when the image and signature materials are available locally and a trusted root is supplied. Cosign is free and available for Linux, macOS, Windows, and self-hosted use. It is described as a legacy signing system, and its CLI-focused design has no API stability guarantees.
Who it suits
Cosign suits teams signing and verifying software artifacts, including open-source package managers and CI/CD workflows. It is less suited to application integrations, which its documentation does not recommend.
What it does well
- Signs and verifies OCI containers and many other artifact types.
- Supports keyless, hardware, KMS, and user-provided PKI signing.
- Can verify offline with local materials and a trusted root.
- Provides CI guidance for GitHub Actions and GitLab.
What to know first
- Documentation describes Cosign as a legacy signing system.
- No API stability guarantees; application integration is not recommended.
- Key generation is limited to ECDSA-P256, with SHA256 hashes for specified signing methods.
- Keyless signing may publish identity information in public logs.
Limits
Cosign is free, with no hosted service or usage limits stated. Its signing keys are ECDSA-P256, and ephemeral keyless and managed-key signing use SHA256; its CLI design has no API stability guarantees.
Plans
| Plan | Billed and limits | Price |
|---|---|---|
| Cosign | Free; open-source software · No hosted service or usage limits stated | Free |
As github.com lists them, read 3 Oct 2026. The maker's own page has the final word.
Getting started
- Visit the Cosign GitHub project.
- Choose an installation route such as a release binary, Go, Homebrew, Arch, Alpine, Nix, GitHub Actions, GitLab or a container image.
- Verify downloaded Cosign binaries as the installation guide recommends.
- Choose a signing method: keyless, hardware or KMS, a Cosign-generated encrypted keypair, or your own PKI.
- For offline verification, have the image and signature materials locally and provide a trusted root.
Overview
Cosign is a free command-line tool for signing and verifying OCI container images and other software artifacts. It is best suited to open-source package managers and teams running signing workflows from a CLI or CI pipeline. Its range of signing methods is a strong fit for artifact workflows, but its legacy status and lack of API stability make it a poor choice for new application integrations.
Key features
Cosign’s default keyless flow uses ephemeral keys held in memory, short-lived certificates from Sigstore’s public-good Fulcio certificate authority, and entries in Rekor’s transparency log. That avoids managing a persistent key for this workflow, but signing may publish identity details such as an account email in a public log, where they cannot later be removed. Teams should weigh that exposure before choosing keyless signing.
For different custody requirements, Cosign supports hardware and KMS signing, encrypted keypairs it generates, and bring-your-own PKI. It generates only ECDSA-P256 keys and uses SHA256 hashes for ephemeral keyless and managed-key signing, so workflows requiring other algorithms or hashes should look elsewhere.
Container signatures can be stored alongside images in an OCI registry. Cosign also provides utilities to publish generic artifacts through OCI and supports in-toto attestations with DSSE-signed payloads. Its supported targets include images, blobs, binaries, scripts, configuration files, SBOMs, WASM modules, Tekton bundles, and eBPF modules. This breadth suits supply-chain workflows that need to cover more than container images.
The project identifies tested registries including AWS ECR, Google Artifact Registry, Docker Hub, Azure Container Registry, GitLab Container Registry, and GitHub Container Registry. Installation guidance covers GitHub Actions and GitLab CI/CD, as well as Linux and macOS binaries, Go, Homebrew, Arch, Alpine, Nix, and container images. Cosign can also verify signatures offline when the image and signature materials are local and a trusted root is supplied, a useful option for disconnected environments with those prerequisites in place.
The project recommends verifying downloaded binaries; releases are signed using keyless signing and an artifact key. For support, users can open a GitHub issue or ask in the Sigstore Slack channel. Vulnerability reports go to [email protected], and Sigstore says its Security Response Committee will acknowledge them within 24 hours.
Pricing
Cosign is open-source software with a free plan at no cost, billed Free. There is no free trial because the software is free. The plan includes a certificate, HSM key protection, trusted timestamping, and CI/CD signing, and supports the artifact targets described above. No hosted service or usage limits are stated; this is a software tool rather than a hosted signing service.
Platforms
Cosign supports Linux, macOS, Windows, and self-hosted use. Installation guidance spans release binaries, package managers, Go, CI pipelines, and container images, giving teams several ways to put the CLI into their existing environments.
Who it's for
Cosign is most compelling for open-source package managers and teams that need to sign or verify artifacts through a CLI or CI workflow, particularly when they need multiple key-custody options, OCI registry storage, attestations, or offline verification. It is not recommended for application integration: its functions were designed for the CLI, and the project provides no API stability guarantees. Sigstore-go is recommended instead for verification integrations.
Pros and cons
- Pro: Multiple signing approaches, including keyless, hardware, KMS, generated encrypted keypairs, and bring-your-own PKI, accommodate different custody needs.
- Pro: OCI storage, generic artifact publishing, attestations, and a broad set of supported targets cover workflows beyond container images.
- Pro: Offline verification is possible when local image and signature materials and a trusted root are available.
- Con: Public transparency logging can expose identity details that cannot be removed later.
- Con: ECDSA-P256 key generation and SHA256 use for ephemeral keyless and managed-key signing constrain workflows that require other algorithms or hashes.
- Con: Its legacy status and lack of API stability guarantees make it a poor foundation for application integrations.
Alternatives
For a wider code signing software comparison, consider what kind of workflow and service model you need. SignPath is another free option, with an open-source plan at no cost subject to eligibility conditions. SignServer may suit teams wanting basic code, document, or container signing and timestamping, with a free community plan and a free trial. Sigstore is a free alternative for developers and software providers, with API support among its platforms.
SignPath Foundation offers a free subscription for eligible, actively maintained open-source projects released under an OSI-approved license. For a paid option with custom pricing, DigiCert Software Trust Manager spans API, web, and desktop platforms. Bamboo Deploy has a Premium plan at $15 a month, billed $45 every 3 months, for up to 50 apps and 1GB cloud hosting. Red Hat Trusted Artifact Signer and ComSignTrust Secure Code Signing Platform (ASCS) are paid alternatives with custom pricing.
Verdict
Choose Cosign if you need a free, flexible CLI for signing and verifying software artifacts across OCI registries and CI workflows, especially for open-source package management. Its breadth of key options and artifact support is the main reason to choose it. Look elsewhere if you need stable APIs for an application integration, other signing algorithms or hashes, or a keyless flow that does not publish identity information to a public log.
Verdict
Cosign offers several signing approaches and supports a broad range of artifact workflows, including offline verification when the required materials are local. Its legacy status and lack of API stability guarantees matter for teams considering it as an application integration.
Questions
How much does Cosign cost?
Cosign is free open-source software at no cost. No hosted service or usage limits are stated.
Which platforms can I use it on?
The listed platforms are Linux, macOS, self-hosted and Windows. Installation guidance also covers Go, Homebrew, Arch, Alpine, Nix, GitHub Actions, GitLab and container images.
Does Cosign support keyless signing?
Yes. Its default keyless method uses ephemeral in-memory keys, short-lived Fulcio certificates and Rekor transparency log entries.
Can Cosign verify artifacts offline?
Yes, when the image and signature materials are available locally and a trusted root is supplied.
Is Cosign suitable for application integration?
The documentation does not recommend it for application integration because Cosign functions were designed for its CLI and have no API stability guarantees.
What does the project recommend for verification integrations?
Cosign is described as a legacy system that should still be used for signing. Sigstore-go is recommended for verification integrations.
Facts from Cosign's own pages
- Artifact storage
- Container signatures can be stored alongside images in an OCI registry, and Cosign also provides utilities for publishing generic artifacts through OCI. · github.com, 3 Oct 2026
- Artifact types
- Cosign includes utilities for publishing generic artifacts through OCI and supports in-toto attestations. · github.com, 2 Oct 2026
- Attestations
- Cosign supports in-toto attestations, with payloads signed using DSSE. · github.com, 3 Oct 2026
- CI integrations
- The installation documentation describes use in GitHub Actions and GitLab CI/CD pipelines. · docs.sigstore.dev, 3 Oct 2026
- Development status
- Cosign is described as a legacy system that should still be used for signing, while Sigstore-go is recommended for verification integrations. · docs.sigstore.dev, 2 Oct 2026
- Integration limitation
- Cosign functions were designed for its CLI rather than as an API; the documentation says there are no API stability guarantees and does not recommend Cosign for application integration. · docs.sigstore.dev, 2 Oct 2026
- Intended users
- The Sigstore integration guidance identifies open-source package managers as primary stakeholders for artifact signing and verification workflows. · docs.sigstore.dev, 2 Oct 2026
- Keyless signing
- Its default keyless signing uses the Sigstore public-good Fulcio certificate authority and Rekor transparency log. · github.com, 3 Oct 2026
- Key options
- Cosign supports hardware and KMS signing, generated encrypted key pairs, and bring-your-own PKI. · github.com, 3 Oct 2026
- Notable limit
- Cosign generates ECDSA-P256 keys and uses SHA256 hashes for ephemeral keyless and managed-key signing. · github.com, 3 Oct 2026
- Offline verification
- Cosign can verify locally available images offline when the signature bundle and trusted root are available. · github.com, 3 Oct 2026
- Platforms and installation
- The project links Linux and macOS release binaries and documents installation through Go, Homebrew, Arch, Alpine, Nix, GitHub Actions, GitLab, and container images. · docs.sigstore.dev, 3 Oct 2026
- Public log privacy
- The quick start warns that signing may place identity information such as an account email in public transparency logs, where it cannot later be removed. · github.com, 3 Oct 2026
- Purpose
- Cosign signs and verifies OCI containers and other software artifacts. · github.com, 3 Oct 2026
- Registry integrations
- The project lists tested registries including AWS ECR, Google Artifact Registry, Docker Hub, Azure Container Registry, GitLab Container Registry, GitHub Container Registry, Harbor, and others. · github.com, 3 Oct 2026
- Registry storage
- It can sign, verify, and store container signatures in an OCI registry. · github.com, 2 Oct 2026
- Security model
- For keyless signing, Cosign uses ephemeral keys held in memory, short-lived Fulcio certificates, and Rekor transparency log entries. · docs.sigstore.dev, 3 Oct 2026
- Security reporting
- Sigstore asks vulnerability reporters to email [email protected] and says the Security Response Committee will acknowledge reports within 24 hours. · github.com, 3 Oct 2026
- Security verification
- The installation guide recommends verifying downloaded Cosign binaries; releases are signed with keyless signing and an artifact key. · docs.sigstore.dev, 2 Oct 2026
- Signing limitation
- Cosign generates only ECDSA-P256 keys and uses SHA256 hashes for ephemeral keyless and managed-key signing. · github.com, 2 Oct 2026
- Support
- The project directs users with issues to open a GitHub issue or ask in its Slack channel. · github.com, 3 Oct 2026
Where Cosign stands on Freedom251
- Code Signing Software#4 of 28