Laut dem Abschnitt „Master Key Generation“ von BIP32 werden „256 Bits empfohlen“.
Siehe https://github.com/bitcoin/bips/blob/master/bip-0032.mediawiki#Master_key_generation
Warum hielt BIP32 256 Bit für die empfohlene Seed-Größe und warum hielten die Autoren so vieler Bitcoin-Wallet-Implementierungen 256 Bit für unnötig?
Die Gründe für die 3 Nummern:
Bitcoin verwendet 256-Bit-ECDSA-Signaturen. Diese erfordern in der Größenordnung von 2 128 Schritte, um einen privaten Schlüssel aus dem bekannten öffentlichen Schlüssel zu finden. Dies ist das Sicherheitsniveau von Bitcoin: Wir zielen darauf ab, dass ein Angreifer immer 2 128 Schritte ausführen muss. Wenn der Seed weniger als 128 Bit Entropie hat, führt dies zwangsläufig zu einem schnelleren Algorithmus, bei dem ein Angreifer einfach alle möglichen Seeds in weniger als 2 128 Schritten durchlaufen kann. Aus diesem Grund benötigt BIP32 mindestens 128 Bit Entropie .
Wenn der Seed weniger als 256 Bit Entropie hat (aber mehr als 128), haben die resultierenden Schlüssel auch weniger als 256 Bit Entropie. Da die Elliptische-Kurven-Kryptographie Schlüssel mit vollen 256 Bit verwendet (obwohl es einen schnelleren Angreifer gibt, als sie in 2 128 Schritten zu knacken), empfiehlt BIP32 auch 256 Bit Entropie .
Die Kombination aus privatem Schlüssel und Kettencode (der „erweiterte private Schlüssel“) in BIP32 ist 512 Bit groß. Aus diesem Grund kann die Verwendung eines Seeds mit mehr Entropie als 512 Bit die Sicherheit möglicherweise nicht weiter erhöhen - es sind nur Informationen, die weggeworfen werden. Aus diesem Grund begrenzt BIP32 den Seed auf höchstens 512 Bit Entropie .
Scheint eine Frage zu sein, die am besten von den Autoren von BIP32 beantwortet wird.
Abgesehen davon ist es die uralte Frage "wie viel Entropie" brauche ich?!
Dies ist eine ziemlich interessante Lektüre zu: 128 Bit im Allgemeinen. https://crypto.stackexchange.com/questions/48256/how-much-entropy-do-you-need-for-a-secure-certificate-generation
Auch als Faustregel gilt: Wenn man 128 Bit Entropie in ein System einfügt, dann bildet es auch die Obergrenze für die Entropie von allem, was davon abgeleitet wird.
Wenn ich über die Absicht des Autors spekulieren darf, werden wahrscheinlich 256 Bit empfohlen, da die eventuellen Schlüssel genau diese Größe haben und auf diese Weise die Entropie mit der Schlüsselgröße übereinstimmt.
knacc
Pieter Wuille