AegisBPF release artifacts ship with SLSA v1.0 Build Track Level 3
provenance attestations generated by GitHub's
actions/attest-build-provenance
action, which uses a hardened GitHub-hosted build platform and Sigstore
for unforgeable signing.
For every artifact attached to a GitHub Release tag vX.Y.Z:
| Artifact class | Signature | SBOM | Provenance |
|---|---|---|---|
aegisbpf-*.tar.gz (release archives) |
cosign keyless (*.sig + *.pem) |
SPDX 2.3 + CycloneDX 1.6 | SLSA v1.0 L3 |
*.deb / *.rpm |
cosign keyless | Included in release SBOM | SLSA v1.0 L3 |
SHA256SUMS.txt |
cosign keyless | — | SLSA v1.0 L3 |
ghcr.io/ErenAri/aegis-bpf:vX.Y.Z (OCI image) |
cosign keyless image sig | — | SLSA v1.0 L3 |
Provenance is published to the Sigstore Rekor transparency log and is
discoverable via gh attestation verify.
# GitHub CLI with attestation subcommand (>= 2.49.0)
gh --version
# Cosign 2.x
curl -LO https://github.com/sigstore/cosign/releases/latest/download/cosign-linux-amd64
chmod +x cosign-linux-amd64 && sudo mv cosign-linux-amd64 /usr/local/bin/cosignVERSION=v0.1.1
gh release download "${VERSION}" --repo ErenAri/Aegis-BPF \
--pattern 'aegisbpf-*.tar.gz' \
--pattern 'SHA256SUMS.txt' \
--pattern '*.sig' \
--pattern '*.pem'gh attestation verify aegisbpf-0.1.1-ubuntu-24.04-x86_64.tar.gz \
--repo ErenAri/Aegis-BPFA successful verification prints the predicate type
https://slsa.dev/provenance/v1 and the builder identity
https://github.com/actions/runner/github-hosted. This is the SLSA v1.0
Build L3 claim:
- Scripted: build steps are defined entirely in
.github/workflows/release.yml. - Build service: GitHub-hosted ubuntu-24.04 runners.
- Isolated: each release job runs in a fresh ephemeral VM.
- Unforgeable: signing keys are GitHub OIDC identities, never exposed to user-defined build steps; provenance is logged to Rekor and cannot be retroactively altered without detection.
cosign verify-blob \
--certificate aegisbpf-0.1.1-ubuntu-24.04-x86_64.tar.gz.pem \
--signature aegisbpf-0.1.1-ubuntu-24.04-x86_64.tar.gz.sig \
--certificate-identity-regexp 'https://github.com/ErenAri/Aegis-BPF/.*' \
--certificate-oidc-issuer 'https://token.actions.githubusercontent.com' \
aegisbpf-0.1.1-ubuntu-24.04-x86_64.tar.gzcosign verify ghcr.io/erenari/aegis-bpf:v0.1.1 \
--certificate-identity-regexp 'https://github.com/ErenAri/Aegis-BPF/.*' \
--certificate-oidc-issuer 'https://token.actions.githubusercontent.com'The AegisBPF release pipeline meets each SLSA v1.0 Build L3 requirement as follows:
| SLSA v1.0 requirement | AegisBPF implementation |
|---|---|
| Scripted build | .github/workflows/release.yml is the sole build definition |
| Build service | GitHub Actions hosted runners (no self-hosted for release artifacts) |
| Provenance exists | actions/attest-build-provenance@v2 emits in-toto provenance |
| Provenance authenticated | Sigstore keyless (GitHub OIDC) signing; public Rekor entry |
| Provenance service generated | Signer identity is token.actions.githubusercontent.com, not user-controlled |
| Isolated builds | Fresh ephemeral VM per job; no shared state |
| Unforgeable provenance | Signing secret never materialises in build steps; hardware-backed GitHub OIDC |
| Non-falsifiable | Rekor transparency log is append-only and publicly auditable |
gh attestation verify by default validates the source repository. To
additionally pin to a specific tag or commit:
gh attestation verify aegisbpf-0.1.1-ubuntu-24.04-x86_64.tar.gz \
--repo ErenAri/Aegis-BPF \
--source-ref refs/tags/v0.1.1