Wie viele Adressen können zuverlässig in einem Wallet verwaltet werden?

Ich arbeite an einem Projekt, das am Ende einige hundert (oder sogar mehr) Bitcoin-Adressen pro Tag generieren kann. Theoretisch gibt es nach meinem Verständnis keine Begrenzung der Anzahl der Bitcoin-Adressen in einer Brieftasche, aber ich befürchte, auf lange Sicht mit Bitcoin auf Skalierbarkeitsprobleme zu stoßen.

Wird die RAM- oder CPU-Auslastung erheblich zunehmen? Gibt es eine bekannte Begrenzung der Anzahl der Adressen?

Hinweis: Wahrscheinlich werden 60-80 % dieser Adressen niemals eine Transaktion erhalten. Weiß nicht, ob das einen Unterschied macht.

Antworten (2)

Es gibt kein Problem mit der Speicherung, aber es gibt ein Problem mit der Rechenzeit, die erforderlich ist, wenn Ausgabentransaktionen erstellt werden, die eine große Anzahl von Eingaben aus Ihrer Brieftasche beinhalten.

Dies ist ein Problem, das zum Beispiel von denjenigen belegt wird, die Martingale-Wett-Bots gegen SatoshiDICE betreiben. Nachdem sie mehrere tausend Bitcoin-Adressen mit Transaktionen erhalten haben, beginnen ihre nachfolgenden Wetttransaktionen, die von diesen Münzen abgezogen werden, zu kriechen.

Eine zukünftige Version des Bitcoin.org-Clients wird dies durch den Wechsel von BDB zu LevelDB beheben. Zusätzlich für eine zukünftige Veröffentlichung vorgesehen ist "ultraprune", das auch die Speicheranforderungen verringern wird.

In der Zwischenzeit ist InstaWallet ein Dienst, der eine Lösung finden konnte, die das Problem entschärft. Die können vielleicht ein paar Vorschläge machen.

Soweit ich gehört habe, verwendet Bitcoin eine Hash-Tabelle zum Speichern seiner Adressen, wenn neue Blöcke und Transaktionen daraufhin überprüft werden, ob sie mit unserer Brieftasche zusammenhängen oder nicht. Diese Datenstruktur sollte eine ziemlich effiziente Datenverarbeitung ermöglichen, was bedeutet, dass sie mit einer wachsenden Menge von Adressen ziemlich gut skalieren sollte.

Für jede vernünftige Menge an Adressen sollte Bitcoin also gut skalieren. Im Allgemeinen ist die Größe der wallet.dat klein im Vergleich dazu, wie viel RAM selbst ein Low-End-Computer hat, also sollte es kein großes Problem sein.