Reproduzierbare Builds für Poker-Clients: Warum Open Source allein nicht reicht
Open Source stärkt das Vertrauen in Online-Poker, weil Spieler und Prüfer lesen können, wie ein Client Karten verifiziert, Aktionen signiert und Handaufzeichnungen verarbeitet. Aber veröffentlichter Quellcode beantwortet eine wichtige Frage noch nicht: Ist der geprüfte Code auch wirklich der Code, den der Browser ausführt?
Hier werden reproduzierbare Builds wichtig. Das Reproducible-Builds-Projekt beschreibt sie als Praktiken, die einen unabhängig verifizierbaren Weg vom Quellcode zum fertigen Programm schaffen. Für Poker bedeutet das: Die öffentlichen Client-Regeln müssen mit der Datei zusammenpassen, die beim Spieler ankommt.
Die Lücke zwischen Quellcode und Live-Client
Eine Pokerseite kann Quellcode veröffentlichen und trotzdem versehentlich oder absichtlich einen anderen Client ausliefern. Im öffentlichen Repository steht eine Logik, während das komprimierte Produktionspaket eine andere enthält. Für die meisten Spieler ist diese Lücke unsichtbar, weil moderne Webanwendungen gebaut, gebündelt, minimiert und automatisch ausgeliefert werden.
Bei einer normalen Website ist das ein Software-Sicherheitsproblem. Bei einem Poker-Client ist es auch ein Fairness-Problem. Der Client kann Verifikationsergebnisse anzeigen, ein Hand-Transcript interpretieren, Tischregeln anwenden oder melden, ob eine Shuffle-Prüfung bestanden wurde. Wenn der Live-Client vom geprüften Quellcode abweicht, vertraut der Spieler wieder einer Blackbox.
Darum ist Open-Source-Poker stärker, wenn es mit einer Möglichkeit verbunden ist, den ausgelieferten Client neu zu bauen und zu vergleichen.
Was ein reproduzierbarer Build beweist
Ein Build ist reproduzierbar, wenn derselbe Quellcode, dieselben Anweisungen und eine festgelegte Umgebung wieder dieselbe Ausgabedatei erzeugen. Wenn zwei unabhängige Personen den Poker-Client neu bauen und denselben Hash wie die Live-Version erhalten, steigt das Vertrauen: Der Live-Client stammt wahrscheinlich aus dem veröffentlichten Quellcode.
Nicht jeder Spieler muss Entwicklerwerkzeuge benutzen. Entscheidend ist, dass Sicherheitsforscher, technisch interessierte Spieler oder Dritte die Prüfung durchführen können. Wenn jemand öffentlich zeigt, dass der Live-Client nicht zum reproduzierten Ergebnis passt, ist das ein ernstes Signal. Der Vergleich ist mechanisch: Quellcode hinein, Build heraus, Hash vergleichen.
Quellcode ist wie ein Rezept. Ein reproduzierbarer Build hilft zu prüfen, ob das servierte Gericht wirklich nach diesem Rezept gekocht wurde.
Was er nicht beweist
Reproduzierbare Builds sind nützlich, aber keine Magie. Sie beweisen nicht, dass der Quellcode korrekt ist. Schlechte Logik kann ebenfalls reproduzierbar gebaut werden. Sie beweisen nicht, dass jede Abhängigkeit sicher ist. Sie erkennen keine Absprachen, Bots, gestohlenen Konten oder private Kommunikation zwischen Spielern.
Sie ersetzen auch nicht die Verifikation einer einzelnen Hand. Ein sauber gebauter Client ist nur eine Ebene; die Hand selbst braucht weiterhin Shuffle-Beweise, Signaturen, Aufzeichnungen und Material, das erneut geprüft werden kann. Für diesen Teil siehe wie man eine Pokerhand selbst verifiziert und den unabhängigen Leitfaden unter fairpoker.app/verify-guide.html.
Die genaue Aussage ist also begrenzt, aber wichtig: Reproduzierbare Builds helfen zu prüfen, ob der verwendete Client dem Code entspricht, den andere einsehen können.
Worauf Spieler achten sollten
Ein ernsthaftes Projekt sollte erklären, wo der Quellcode liegt, wie der Build läuft, welche Versionen festgeschrieben sind und wie die fertigen Dateien verglichen werden. Hashes sollten leicht prüfbar sein, und Release Notes sollten zeigen, welche Quellcode-Version welchen Client erzeugt hat.
Digitale Signaturen können eine weitere Ebene hinzufügen, weil sie zeigen, wer eine Version freigegeben hat. Eine einfache Erklärung steht in wie digitale Signaturen dich schützen. Signaturen und Reproduzierbarkeit beantworten aber verschiedene Fragen. Eine Signatur sagt, wer eine Datei signiert hat. Reproduzierbarkeit fragt, ob diese Datei aus dem öffentlichen Quellcode entstanden ist.
Fazit
Faires Poker braucht mehr als das Versprechen, dass das Deck korrekt gemischt wurde. Es braucht auch Vertrauen, dass die Software zur Prüfung dieses Versprechens selbst überprüfbar ist. Reproduzierbare Builds machen diese Behauptung testbar und gehören deshalb zur Diskussion über verifizierbares Online-Poker.