Der Hersteller einer Hardware-Wallet stellt die Firmware bereit, die deine privaten Schlüssel verarbeitet. Ein gewisses Vertrauen bleibt deshalb nötig. BitBox verringert diese Abhängigkeit durch eine quelloffene Wallet-Firmware, reproduzierbare Builds und unabhängige Sicherheitsforschung. Diese Maßnahmen machen die Umsetzung überprüfbar. Sie garantieren aber nicht, dass jede Schwachstelle oder absichtlich eingebaute Hintertür entdeckt wird.
Ein Design prüfen zu können, ist etwas anderes, als seine Fehlerfreiheit nachzuweisen. Wenn du verstehst, was die einzelnen Maßnahmen belegen, kannst du besser einschätzen, welches Vertrauen weiterhin nötig ist.
Offener Quellcode macht die Wallet-Funktionen überprüfbar
BitBox veröffentlicht den Quellcode der Wallet-Firmware und der BitBoxApp. Sicherheitsforscher können untersuchen, wie die Firmware geheime Daten erzeugt und verarbeitet, Schlüssel ableitet und Transaktionen signiert. Die öffentliche Änderungshistorie zeigt außerdem, was sich zwischen Versionen geändert hat.
Du musst den Code nicht selbst vollständig prüfen, um von unabhängigen Untersuchungen zu profitieren. Dass der Code öffentlich ist, belegt allerdings weder, dass jeder Teil geprüft wurde, noch, dass die Software auf einem bestimmten Gerät diesem Code entspricht.
Reproduzierbare Builds verbinden Quellcode und veröffentlichte Firmware
Bei einem reproduzierbaren Build kann jemand den veröffentlichten Quellcode einer Firmware-Version kompilieren und das entstandene Programm mit der ausgelieferten Firmware vergleichen. Stimmen die Ergebnisse überein, hilft das nachzuweisen, dass das veröffentlichte Programm aus diesem Quellcode erstellt wurde.
Das ist eine andere Prüfung als die einer offiziellen Firmware-Signatur. Eine Signatur kennzeichnet Firmware, die der Hersteller autorisiert hat. Reproduzierbare Builds ermöglichen anderen, den Zusammenhang zwischen Quellcode und veröffentlichtem Programm zu prüfen. Keine der beiden Prüfungen beweist, dass das Programm frei von Fehlern oder schädlichem Verhalten ist: Auch schädlicher Code könnte öffentlich sein und sich reproduzierbar erstellen lassen.
Ein Secure Chip ersetzt keine quelloffene Wallet-Firmware
BitBox kombiniert einen Mikrocontroller, auf dem die quelloffene Wallet-Firmware läuft, mit einem separaten Secure Chip. Der Seed – der geheime Ausgangspunkt, aus dem die Wallet-Schlüssel abgeleitet werden – liegt verschlüsselt auf dem Mikrocontroller. Der Secure Chip trägt zum Schutz beim Entschlüsseln bei und verlangsamt und begrenzt Versuche, das Gerätepasswort zu erraten. Den Wallet-Seed oder die privaten Schlüssel erhält er dabei nicht.
Die Schlüsselableitung und das Signieren von Transaktionen erfolgen auf dem Mikrocontroller in der quelloffenen Firmware. So nutzt BitBox einen Secure Chip zum Schutz vor physischen Angriffen, während die Wallet-Funktionen überprüfbar bleiben. Diese Trennung verringert die Abhängigkeit vom Secure Chip. Sie ersetzt aber nicht die Prüfung der Firmware, des Hardware-Designs und ihrer Grenzen.
Die übergeordneten Grundlagen erklärt Was macht eine Hardware-Wallet sicher? Technische Einzelheiten findest du im BitBox-Blogartikel über die Kombination aus Secure Chip und Open-Source-Firmware. Die aktualisierte englische Fassung erläutert auch Unterschiede zwischen den Modellen.
Unabhängige Forschung hilft, Schwachstellen aufzudecken
BitBox fördert unabhängige Sicherheitsforschung durch sein Bug-Bounty-Programm (Englisch). Untersuchungen und Schwachstellenmeldungen können Probleme aufdecken, die durch die Veröffentlichung des Quellcodes und reproduzierbare Builds allein nicht sichtbar werden. Ihr Nutzen hängt vom Umfang und den Ergebnissen der jeweiligen Untersuchung ab. Dass es ein solches Programm gibt, beweist nicht, dass jede Schwachstelle gefunden wurde.
Diese Maßnahmen verringern die Notwendigkeit, sich allein auf die Zusicherungen des Herstellers zu verlassen. Sie machen eine Hardware-Wallet jedoch nicht vollständig unabhängig von Vertrauen. Das BitBox-Bedrohungsmodell (Englisch) beschreibt die Annahmen und Grenzen des Designs. Praktische Angriffsszenarien und deine weiterhin bestehenden Aufgaben erklärt Können Hardware-Wallets gehackt werden?