Die Entwickler der openSUSE-Distribution berichteten über die Fortschritte des Projekts zur Unterstützung reproduzierbarer Builds. Im Rahmen des Projekts wurde ein konzeptioneller Fork der Distribution Reproducible-openSUSE (RBOS) erstellt, der die Möglichkeit bietet, 100 % identische Binärpakete basierend auf dem bereitgestellten Repository mit Quelltexten, das 3300 Pakete umfasst, zu erstellen. Im Laufe der Projektarbeit wurden etwa 40 Patches (1, 2, 3) vorbereitet, die Probleme mit der reproduzierbaren Neubewertung von Paketen lösen. Etwa die Hälfte dieser Patches wurde bereits an die Upstream-Projekte weitergeleitet. Die Builds von Reproducible-openSUSE sind derzeit nur für Testzwecke ausgelegt und werden nicht für den Einsatz in Produktionssystemen empfohlen, da für sie keine Sicherheitsupdates bereitgestellt werden.
Das Projekt ermöglicht es dem Benutzer, eigene Builds zu erstellen, die bitweise mit den zum Download angebotenen fertigen Builds übereinstimmen, um sicherzustellen, dass die in Paketen verbreiteten Binärdateien aus den bereitgestellten Quellcodes erstellt wurden und keine versteckten Änderungen enthalten. Die Möglichkeit, die Identität eines Binär-Builds zu überprüfen, ermöglicht es, sich nicht nur auf das Vertrauen in die Build-Infrastruktur des Distributors zu verlassen. Eine Kompromittierung des Compilers oder der Build-Tools könnte zu versteckten Hintertüren führen.
Bei der Erstellung reproduzierbarer Builds werden derartige Details berücksichtigt wie die genaue Übereinstimmung von Abhängigkeiten, die Verwendung eines unveränderten Satzes und Versionen der Build-Tools, ein identischer Satz von Optionen und Standardeinstellungen, die Beibehaltung der Reihenfolge der Dateibauten (Anwendung der gleichen Sortiermethoden), das Deaktivieren der Hinzufügung von nicht konstanten Metainformationen durch den Compiler, wie Zufallswerte, Dateipfade und Build-Daten. Auch Fehler und Race Conditions in den Werkzeugen beeinflussen die Reproduzierbarkeit der Builds.
Quelle: opennet.ru
