SLSA Framework
SLSA is a framework for describing and improving the integrity of software from source change through build and distribution. Its tracks and levels help producers create evidence about software and help consumers decide whether that evidence meets their trust policy.
itSoftware supply chain security | OpenSkills.info
Course pathWalk it in order
Look it upDip in anytime
Go furtherLeaves this page
Don't Panic
Don't Panic: SLSA Framework
SLSA is a framework for asking whether a software artifact came from the source and build process it claims to have used. That sounds like a bureaucratic question until a package, binary, or container image arrives through a familiar channel wearing a convincing name badge. Familiar channels are very good at names. Digests and provenance are better at evidence.
The important shape is a path: source revision, build platform, artifact, distribution, consumer. Provenance records how an artifact moved through the useful middle of that path. It can name the builder, the process, inputs, and the artifact digest. It is not a verdict. A signature can establish that some recognized identity made the statement. It cannot decide whether that identity was the right one for this release, which is where the small print becomes the actual security boundary.
SLSA separates the work into Build and Source tracks. Build asks how trustworthy the evidence about producing an artifact is. Source asks how trustworthy the creation of a source revision was. Their levels are independent, so “SLSA 3” is a vague answer dressed as a concise one. Name the track, level, and specification version instead.
The surprise is that generating provenance is only the beginning. A verifier must match the subject digest, authenticate the evidence, recognize the builder, and compare the source, build type, and external parameters with policy. An unknown parameter is not harmless decoration. It can change a build while leaving a careless verifier pleased with itself.
Start with one release path and one artifact class. The Intro explains the tracks and their limits. Slides give the path and the decision points in a compact map. The Cheatsheet is for the exact checks and level anchors. Field Notes covers the operational edges that turn “we have provenance” into a release boundary that can actually reject something.
Where this skill leads
Relevant careers
See how this topic contributes to broader role-level skill maps.
Sources
- https://slsa.dev/spec/v1.2/
Supports
- SLSA version 1.2 as the approved current specification
- Build and Source track organization
- Provenance and verification summary formats as recommended formats
- https://slsa.dev/spec/v1.2/about
Supports
- Incrementally adoptable guidelines and intended audiences
- Tracks and ascending levels
- Limits involving vulnerabilities, dependencies, and broader security controls
- https://slsa.dev/spec/v1.2/tracks
Supports
- Independent tracks with distinct threats and requirements
- Build provenance purpose and consumer verification model
- Source track purpose
- https://slsa.dev/spec/v1.2/build-track-basics
Supports
- Build Levels 1 through 3 names, requirements, and benefits
- Build Level 1 provenance limitations
- Build Level 2 hosted platform and post-build tamper protection
- Build Level 3 hardened platform and during-build tamper protection
- https://slsa.dev/spec/v1.2/build-requirements
Supports
- Producer and build-platform responsibilities
- Provenance existence, authenticity, accuracy, and completeness requirements
- Hosted and isolated build requirements
- Ephemeral environments, signing-secret protection, and cache isolation
- https://slsa.dev/spec/v1.2/source-requirements
Supports
- Source Levels 1 through 4 names and requirements
- Source revision, source control system, and source provenance definitions
- Reliable history, enforced controls, and two-party review
- https://slsa.dev/spec/v1.2/provenance
Supports
- Provenance definition
- Distinction between Build and Source provenance
- https://slsa.dev/spec/v1.2/verifying-artifacts
Supports
- Provenance inspection as verification
- Signature, subject digest, predicate type, and builder trust checks
- Canonical source, build type, and external parameter expectations
- Publication, consumer, and monitoring verification architectures
- https://slsa.dev/spec/v1.2/threats
Supports
- Source, build, distribution, usage, dependency, and verification threats
- Malicious producer and recursive dependency risks
- Automation as a design priority for broad adoption
- https://slsa.dev/spec/v1.2/use-cases
Supports
- First-party, open source, and vendor applications
- Publication and download verification examples
- https://github.com/sindresorhus/awesome
Supports
- Starting point for discovering security and DevSecOps awesome lists
- https://github.com/bureado/awesome-software-supply-chain-security
Supports
- Discovery of Cosign, SLSA GitHub Generator, in-toto, Witness, and GUAC
- Project categorization across signing, provenance, frameworks, and metadata
- https://docs.sigstore.dev/quickstart/quickstart-cosign/
Supports
- Cosign as a command-line tool for signing artifacts and verifying signatures
- Verification bundles containing signature, certificate, and log inclusion proof
- https://github.com/slsa-framework/slsa-github-generator
Supports
- GitHub Actions provenance generation and verification tooling
- Build Level 3 provenance support and stated limitations
- https://in-toto.io/
Supports
- Open metadata framework for supply-chain integrity
- Evidence about steps, actors, and ordering
- https://witness.dev/docs/
Supports
- Pipeline attestations using the in-toto specification
- Policy verification and software journey audit trails
- https://docs.guac.sh/guac/
Supports
- Ingestion of software security metadata into a graph
- Supply-chain visualization, policy, audit, and risk analysis uses
