Safeguard
Supply Chain•

Signing and provenance myths vs facts: 8 common misunderstandings

Eight myths about signatures, SLSA provenance and attestations, set against what the specifications actually say. Short, sourced and easy to share.

Safeguard Security Team
3 min read

Signed does not mean safe, provenance does not mean reviewed, and a Build level is not a security score. Here are eight common myths about signing, provenance and attestations, each set against what the SLSA, in-toto and Sigstore documents actually say.

Myth versus fact

MythFact
A valid signature means the software is safeA signature shows who signed and that bytes are unchanged. It says nothing about intent
Provenance proves the code was reviewedProvenance describes the build. Source level threats belong to the Source track
Provenance shows the package was published to my registrySLSA says provenance claims an artifact was built, not published to a particular registry
SLSA L3 means no vulnerabilitiesBuild levels cover build integrity. SLSA says dependency threats are not explicitly addressed in this version
Verifying the signature is enoughYou must also check identity, expectations and the digest
Short lived certificates mean old signatures failLog entries and timestamps prove signing during validity
A VSA means I can stop checkingA VSA does not protect against a compromised verifier
Attestations are only for big vendorsSLSA Build L2 is defined around a hosted platform generating and signing provenance, which a small team can use too

A closer look at four of them

Signed is not safe. A producer could sign malicious code on purpose. SLSA states this kind of attack cannot be directly mitigated through its controls, so consumers lean on review, reputation and incentives.

Check the identity. For keyless signing, the verify command needs the expected certificate identity and issuer. For commits, the gitsign README warns that the plain git verify commands do not verify cert claims. A signature from the wrong identity is valid cryptography and a failed trust check.

Levels are about the build. Build L2 means a hosted platform generates and signs provenance. Build L3 adds isolation and protected signing keys. Neither says anything about whether the dependencies are clean.

Old signatures survive. The bundle spec requires a log timestamp or RFC 3161 timestamp whenever short lived certificates may be verified after expiry, which is how old signatures stay checkable.

A short checklist that avoids all eight

  1. Verify the signature against roots you chose.
  2. Check the signer identity and issuer.
  3. Match the subject digest to your artifact.
  4. Compare provenance to expectations: builder, repository, build type, parameters.
  5. Scan the content separately for vulnerabilities.
  6. Keep the bundle and verification record.

Where Safeguard fits

Safeguard covers the content side of that checklist with SBOM and dependency scanning, reachability analysis and policy gates. Start with the free scan.

Quick check

What is the single biggest misunderstanding?

That a signature or level equals safety. Both describe process and identity, not whether the contents are vulnerable or malicious.

Should small projects bother with provenance?

If a hosted platform can generate it cheaply, yes. It gives consumers something concrete to check.

Sources

Last reviewed: 19 October 2026.

Never miss an update

Weekly insights on software supply chain security, delivered to your inbox.

Self-healing security runs on Safeguard.

Your first fix PR is minutes away.

No sales call required, even your agent can complete the purchase over MCP.