Reproduceerbare builds / provenance (SLSA) onderzoeken #1027
Labels
No labels
accepted
bug
declined
docs
duplicate
enhancement
good first issue
in-progress
needs-info
privacy
security
triage
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set
Reference
LibreKAT/Ocideck#1027
Loading…
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Voortgekomen uit het "Te wegen"-punt van #1014 en het residu van ENISA-open punt O1 (
assurance/enisa-sbd-mapping.md, playbook 14 — "release artefacts signed"). Vastgelegd zodat de sterkere garantie niet wegzakt.Stand nu
De release-keten heeft herkomst, maar nog geen reproduceerbaarheid:
SHA256SUMSdraagt een minisign detached signature (#1014, gedaan) — één handtekening verankert alle artefacten.Een handtekening zegt wie voor de bytes instaat. Een reproduceerbare build zegt iets sterkers: iedereen kan uit dezelfde bron dezelfde bytes maken, dus je hoeft de bouwmachine (en de ondertekenaar) níet te vertrouwen. De bronroute biedt daar nu een zwakke vorm van ("een workflow die je kunt lezen" + gepinde toolchain), maar levert geen bit-voor-bit reproduceerbaar artefact.
Doel
Onderzoeken of en hoe reproduceerbaarheid haalbaar is, en wat het zou toevoegen:
Te wegen
Verwant
Residu van #1014; naast #1013. Onderdeel van de veilige-distributievraag #520 en ENISA O1.
Onderzocht en afgehandeld op main (
4ede15ab, PR #1032).Web — empirisch: van 2854 bestanden verschilde er precies één over twee schone builds (
flutter_bootstrap.js), en daarin alleen een willekeurigserviceWorkerVersion-cachebustergetal; geen absoluut bouwpad lekt. Dat getal is nu deterministisch afgeleid van de service-workerinhoud (tool/pack_web_release.dart), zodat de bundelinhoud reproduceerbaar is binnen een vaste bouwomgeving. Herbouw-en-vergelijk-route indocs/BUILD.md.Gewogen weg (mét heropen-trigger,
assurance/reproduceerbare-builds.md): macOS bit-repro is principieel onmogelijk voor een derde (serverside notarisatieticket); Windows te weinig opbrengst; een aparte SLSA-attestatie vraagt L2/L3 een runner-sleutel/isolatie die botst met least-privilege — reproduceerbaarheid bedient "vertrouw de bouwer niet" hier beter.Eerlijke kanttekening — de native-assetslaag (dartcv4/OpenCV via CMake) bleek de resterende variabele voor repro over machines heen. Aangewezen als sluitstuk en apart belegd: #1033 (onder #520).
ENISA-residu O1 bijgewerkt. Bewaker-review (publieke belofte) akkoord. Sluit dit als afgehandeld.