Artifact Signing
Artifact signing is a security process that attaches a digital signature to a software artifact (such as a compiled binary, container image, or package) to confirm that it has not been tampered with and to verify who produced it. This helps users and systems trust that the software they receive is authentic and unmodified since it was built. Signing typically happens at the end of the build process before an artifact is released or distributed.
Artifact signing is a cryptographic process that ensures the integrity and provenance of a released artifact or binary. It works by generating a digital signature over the artifact's content using a private key, allowing consumers to verify the signature with the corresponding public key to confirm that the artifact has not been altered and to authenticate its origin. Implementations vary across ecosystems: some rely on certificate authority-issued signing certificates, while others use PGP-based key pairs, keyless signing flows (such as Sigstore/Cosign), or other trust models. Because signing operates on the final artifact, it is generally simpler to implement than build attestation, though it does not by itself capture metadata about how or where the artifact was built. Signing does not detect vulnerabilities or malicious logic within the artifact; it only asserts integrity and a binding to a signing identity.
Why it matters
Artifact signing serves as a foundational trust mechanism in software supply chains. Without it, consumers of a software artifact, whether end users, automated deployment pipelines, or downstream developers, have no cryptographic assurance that the artifact they received is the same one that was produced by the claimed author. This gap creates opportunities for attackers to substitute tampered or entirely malicious artifacts during distribution, a category of attack that has proven both practical and damaging in real-world supply chain compromises.
By binding a verifiable identity to an artifact's content, signing enables both humans and automated systems to enforce policies such as "only deploy artifacts signed by our build system" or "only install packages from a known publisher." This is especially important in environments where artifacts traverse multiple repositories, mirrors, or caching layers before reaching their final destination, since each hop introduces a potential point of tampering. Organizations that lack signing verification at consumption points may be unable to distinguish a legitimate update from a supply chain attack.
It is important to note that artifact signing addresses integrity and provenance, not safety. A properly signed artifact can still contain vulnerabilities or even intentionally malicious code. Signing confirms who produced the artifact and that it has not been altered since signing, but it does not make any assertion about the quality or security of the artifact's contents. For this reason, artifact signing is typically one layer in a broader defense-in-depth strategy that also includes vulnerability scanning, build attestation, and access controls on signing keys.
Who it's relevant to
Inside Artifact Signing
Common questions
Answers to the questions practitioners most commonly ask about Artifact Signing.