Zennoxa Shield
Application Security Glossary

Code Signing

Code signing is the practice of using a cryptographic digital signature to prove the author or publisher of software and to verify that the code has not been altered since it was signed.

Code signing applies a digital signature to software artifacts such as binaries, packages, container images, or scripts. The publisher signs the artifact with a private key, and anyone can use the corresponding public key or certificate to confirm both authenticity (who produced it) and integrity (that it has not been modified since signing).

Mechanically, the signing process hashes the artifact and encrypts that hash with the publisher's private key; verification recomputes the hash and checks it against the decrypted signature. Trust in the signer's identity is usually established through a certificate authority or, in modern software supply chains, through keyless signing approaches that bind signatures to verified identities and record them in a transparency log.

For developers, code signing prevents attackers from distributing tampered or impersonated software and enables operating systems, package managers, and deployment systems to enforce that only trusted, unmodified artifacts run. It is a core building block of a secure software supply chain, complementing provenance and integrity verification.

Frequently asked questions

What is code signing?
Code signing is attaching a cryptographic digital signature to software so that recipients can verify who published it and confirm the code has not been tampered with since it was signed.
How does code signing work?
The publisher hashes the artifact and signs that hash with a private key; verifiers recompute the hash and check it against the signature using the public key or certificate, confirming both origin and integrity.
Code signing vs build provenance?
Code signing proves who signed an artifact and that it is unchanged, whereas build provenance records how the artifact was built from which sources; they are complementary layers of supply chain trust.

Related terms

Code Signing — Zennoxa Glossary — Zennoxa Shield