Sur Debian, tous les nouveaux packages doivent désormais être reproductibles.
Sur un environnement tel que décrit dans le fichier buildinfo, la compilation du package source devra créer un deb identique au bit près.
Cette initiative contribue à la sécurité de la supply chain logicielle, en favorisant la détection des paquets altérés.
Les builds reproductibles, portés par l’« effet Snowden »
Dans la communauté Debian, le sujet des builds reproductibles avait véritablement pris son essor à l’été 2013, dans la lignée des révélations d’Edward Snowden.
Les patchs se sont alors succédé pour, par exemple, supprimer les données non déterministes dans des bibliothèques statiques, stabiliser l’ordre de génération de champs de contrôle… ou ajouter aux archives le fameux fichier buildinfo décrivant la configuration des environnements de build.
Au dernier pointage, plus de 98 % des paquets dans les archives Debian – hors architecture s390x – ont été rendus reproductibles.
Debian a emmené d’autres Linux dans son sillage
Parallèlement, Debian a impulsé un mouvement plus englobant : le projet Reproducible Builds. Dans ce cadre, des distributions comme NixOS et Arch Linux ont rendu reproductibles certaines de leurs images de base.
Le projet est rattaché à la Software Freedom Conservancy, organisation à but non lucratif de droit américain. Ses principaux sponsors financiers sont l’Open Technology Fund (financé essentiellement par le gouvernement américain) et le Sovereign Tech Fund (filiale de l’agence fédérale allemande pour l’innovation de rupture). Proxmox est aussi dans la boucle. Google le fut, comme Siemens et Mullvad VPN. 1&1, DigitalOcean et Infomaniak procurent des ressources de calcul.
Reproducible Builds a identifié une quinzaine de variables d’environnement dont la présence est susceptible d’engendrer des packages non reproductibles. Parmi elles :
Horodatages
Usernames ou hostnames
Schémas d’encodage des fichiers
Nombres aléatoires (UUID, clé privée/publique, graine de hachage…)
Références à des adresses mémoire
Informations d’architecture (version de kernel, par exemple)
Locales
Illustration générée par IA
The post Debian passe finalement aux builds reproductibles appeared first on Silicon.fr.