Ich habe diesen Thread mit Staunen gelesen. Ich finde es klasse, dass hier so viele Nuancen der Entropie-Generierung kritisch diskutiert werden. Es ist wohl illusorisch, hier mit einem Post alle Fragen zu beantworten, daher versuche ich die Diskussion erst mal einzuordnen und zu betonen, dass man sowieso nie einer einzelnen Komponente vertrauen sollte.
Es ist wichtig, die Gesamtsicherheit eines Systems wie einer Hardware-Wallet zu betrachten. Natürlich ist diese die Summe der Sicherheit der einzelnen Komponenten, aber auch davon abhängig, mit welcher Architektur die einzelnen Bauteile kombiniert werden. Und man darf sich nicht auf einen Einzelaspekt einschiessen, und dann alles andere aussen vor lassen.
Eine Vertrauensminimierung ist nur mit „Open Source“ möglich, was die BitBox02 zu 100% ist. Einzelne Bauteile enthalten eigene Firmware, welche nicht open-source ist. Das gilt für alle bekannten Secure Chips, aber auch für MicroSD-Karten, Mikrocontroller, Kameramodule, Bluetooth-Chips und vieles mehr. Wenn all diese quelloffen sein müssten, gäbe es weltweit keine einzige Open Source-Hardware Wallet. Für die Systemsicherheit ist es wichtig, diese Komponenten innerhalb der Sicherheits-Architektur mit Open-Source-Code so einzubinden, dass diese das Gesamtsystem nicht negativ beeinflussen können. Man vertraut diesen Bauteilen also schlichtweg nicht. Wie wird das in der BitBox02 umgesetzt haben, habe ich hier dokumentiert:
In diesem Thread geht’s ja primär um die Entropie, also wie der Seed mit maximaler Zufälligkeit generiert werden kann. Hier ist auch die Architektur und der Open-Source-Code am wichtigsten:
- Die BitBox02 nutzt fünf unabhängige Entropie-Quellen und kombiniert die im offenen Code für jeden nachprüfbar, so dass jede Quelle die Gesamtentropie nur erhöhen, nicht aber reduzieren kann.
- Die fünf Quellen sind:
- Mikrocontroller
- Secure Chip
- Zufallswert aus der Produktion
- Host-Computer / Smartphone
- Benutzerpasswort
 
Selbst wenn eine oder mehrere Komponenten komprimittiert sein sollten, ist die Firmware der BitBox02 überprüfbar so entwickelt, dass diese Quelle die Entropie der restlichen Quellen nicht negativ beeinflussen kann. Da nicht mal alle Entropiequellen auf der BitBox02 sind, wird das benötige Vertrauen in uns und die Bauteilhersteller maximal reduziert.
Weiter oben wurde auf einen Standard verwiesen, der einen möglicherweise von der NSA mit einer Backdoor versehenen Algorithmus beinhaltet. Ob das stimmt, oder nicht, kann ich nicht abschliessend beurteilen. Auf jeden Fall wurde dieser „shady“ Algorithmus schon 2015 mit der „Revision 1“ von NIST SP 800-90 entfernt. Der Secure Chip der BitBox02 erfüllt die Vorgaben dieser „Revision 1“ und verwendet diesen Algorithmus nicht.
Können wir aber ausschliessen, dass in irgendeiner Komponente eine Backdoor implementiert ist? Natürlich nicht, das kann kein Hersteller. Da hilft auch keine offizielle Zertifizierung oder irgendwelche Audits, da solche Backdoors extrem subtil sein können.
Daher ist es umso wichtiger, mehrere gute Zufallsquellen so zu kombinieren, dass es keinen „Single Point of Failure“ gibt, und man keiner dieser Komponenten vertraut. Das geht mit „open source“ und „closed source“, aber nur mit 100% Open-Source-Code ist dies öffentlich überprüfbar und macht nicht den Code-Autor zur neuen Instanz, der ich vertrauen muss.
Falls dir konkrete Fragen unter den Nägeln brennen: nur her damit. Ich kann wahrscheinlich nicht alle direkt beantworten, aber ich kann immerhin intern die Experten löchern, welche tatsächlich Kryptografie oder Mathematik studiert haben.