Reproduzierbare Builds sorgen dafür, dass mehrere Entwickler unabhängig voneinander identische Binärdateien von Bitcoin Core erzeugen. Erst wenn alle Ergebnisse übereinstimmen, wird signiert und veröffentlicht.
Reproduzierbare Builds als Prüfverfahren
Reproduzierbare Builds sind das Verfahren, mit dem Bitcoin Core aus offenem Quellcode ein überprüfbares Programm macht. Mehrere Entwickler erstellen unabhängig voneinander dieselbe Binärdatei. Weichen ihre Ergebnisse voneinander ab, wird nichts veröffentlicht.
Quellcode ist für Menschen lesbar, die Binärdatei dagegen nicht. Wer Bitcoin Core herunterlädt, startet in der Regel eine fertig übersetzte Datei. Ohne Kontrolle könnte genau an dieser Stelle manipulierter Code eingeschleust werden, etwa durch einen kompromittierten Rechner oder einen veränderten Compiler.
Das Build-System setzt deshalb auf Determinismus. Aus demselben Quellcode und derselben Toolkette muss Bit für Bit dieselbe Datei entstehen. Seit Version 22.0 aus dem Jahr 2021 nutzt Bitcoin Core dafür das Werkzeug GNU Guix, das den älteren Gitian-Prozess abgelöst hat.
Signaturen statt Vertrauen in Einzelne
Mehrere Entwickler bauen die Software auf eigenen Systemen und vergleichen die kryptografischen Prüfsummen der Ergebnisse. Erst wenn alle Prüfsummen übereinstimmen, signieren sie das Ergebnis mit ihrem Schlüssel.
Diese Signatur bestätigt drei Dinge: Die Binärdatei ist nicht manipuliert, die Toolkette ist unverändert, und alle haben denselben Quellcode verwendet. Die Signaturen werden öffentlich in einem eigenen Verzeichnis gesammelt. Wie Guix die Entwicklung vertrauensloser macht, zeigt eine technische Analyse ausführlich. Jeder kann den Build selbst wiederholen und eine eigene Signatur beitragen.
Reproduzierbare Builds und dezentrale Ordnung
Das Build-System beseitigt einzelne Fehlerpunkte im Erstellungs- und Verteilungsprozess. Kein einzelner Entwickler, kein Server und kein Compiler muss blind vertrauenswürdig sein. Abweichungen werden sichtbar, bevor eine Version Nutzer erreicht.
Reproduzierbare Builds übertragen damit das Kernprinzip von Bitcoin auf die Software selbst. Nicht Autorität erzeugt Vertrauen, sondern unabhängige Überprüfung. Friedrich August von Hayek beschrieb, wie Ordnung aus dem Zusammenspiel vieler Einzelner entsteht, ohne dass eine zentrale Instanz sie plant. Das Build-System funktioniert ähnlich: Sicherheit entsteht aus vielen Prüfern, die sich gegenseitig kontrollieren.
Für Bitcoin ist das folgerichtig. Ein Geld mit fixem Angebot von 21 Mio. BTC und Proof-of-Work verliert seinen Wert, wenn die Software, die diese Regeln durchsetzt, heimlich verändert werden kann. Hartes Geld braucht deshalb auch eine harte, überprüfbare Lieferkette.
Grenzen gibt es trotzdem. In der Praxis prüfen nur wenige Nutzer selbst nach und verlassen sich auf die Signaturen anderer. Reproduzierbare Builds schützen zudem nicht vor Fehlern, die bereits im geprüften Quellcode stecken. Sie sichern den Weg vom Code zur Datei, nicht die Qualität des Codes.
Im vorherigen Bildungsartikel berichteten wir über Pull Request: Wie neuer Code in Bitcoin Core gelangt.





