Einführung in Bitcoin Core 32.0
Bitcoin Core 32.0 hat seinen finalen Release-Kandidaten-Testzyklus begonnen, nachdem die Entwickler am 14. September v32.0rc1 markiert haben. Dies bringt die Schätzung der Gebühren, die Leistung der Blockvalidierung und Sicherheitsfixes näher an die geplante Veröffentlichung am 10. Oktober. Die offizielle GitHub-Veröffentlichung des Bitcoin Core-Projekts zeigt v32.0rc1 bei Commit d0231bb, signiert mit einer verifizierten Maintainer-Signatur am 14. September um 12:58 UTC. Der Veröffentlichungszeitplan des Projekts zielt weiterhin auf den 10. Oktober für das finale v32.0-Tag ab, obwohl das Datum von Tests und weiteren Fixes abhängig bleibt.
Fokus der Version 32
Version 32 konzentriert sich auf das Verhalten der Knotensoftware, Wallet-Schnittstellen, Gebührenberechnung, Netzwerk und Leistung. Die Entwurfsveröffentlichungsnotizen listen keine Änderungen an den Konsensregeln von Bitcoin auf, was bedeutet, dass das Update nicht neu definiert, welche Transaktionen oder Blöcke das Netzwerk als gültig betrachtet. Bitcoin Core 32.0 tritt mit Gebühren- und Sicherheitsupdates in die finale Testphase ein. Der Feature-Freeze trat am 20. August in Kraft, wodurch die Arbeiten auf notwendige Fixes vor der Veröffentlichung beschränkt wurden.
Testphase und Feedback
Am 14. September trennten die Entwickler den 32.x-Zweig vom Hauptentwicklungszweig und begannen den Release-Kandidaten-Zyklus, während die Entwicklungsarbeiten für Version 33 separat fortgesetzt wurden. Der erste Kandidat ist für Knotenbetreiber, Wallet-Entwickler und andere Benutzer gedacht, um zu testen, bevor die Entwickler entscheiden, ob der Code bereit für eine stabile Veröffentlichung ist. Bitcoin Core eröffnete am 15. September ein spezielles Feedback-Problem für die Testphase des Release-Kandidaten 32.0, einen Tag nachdem RC1 markiert wurde.
Das Projekt bittet Tester, den Testleitfaden für spezifische Überprüfungen des RC zu verwenden und Softwareprobleme über separate GitHub-Issues zu melden.
Bis zum 16. September wurde kein finales v32.0-Binär veröffentlicht. Bitcoin Core aktualisiert sich nicht automatisch. Betreiber wählen, wann sie neue Versionen installieren, was bedeutet, dass ältere Versionen aktiv bleiben können, nachdem neue Software verfügbar wird. Dieses manuelle Upgrade-Modell war in früheren Sicherheitsoffenlegungen von Bedeutung.
Sicherheitsupdates und Fehlerbehebungen
Wie crypto.news zuvor berichtete, gab Bitcoin Core im Mai CVE-2024-52911 bekannt, nachdem der anfällige 28.x-Zweig das Ende seiner Lebensdauer erreicht hatte. Der Fehler war bereits in Bitcoin Core 29.0 behoben worden, bevor technische Details öffentlich wurden. Eine der sichtbareren Änderungen von Bitcoin Core 32 betrifft estimatesmartfee, das RPC, das von Wallets und Anwendungen zur Berechnung von Transaktionsgebühren verwendet wird.
Version 32 fügt einen separaten Schätzer hinzu, der auf Transaktionen basiert, die derzeit im Mempool des Knotens warten. Der neue Mempool-Schätzer liefert sowohl wirtschaftliche als auch konservative Schätzungen basierend auf den aktuellen Bedingungen ausstehender Transaktionen. Bitcoin Core überprüft die jüngste Blockaktivität, bevor er sie verwendet, und kann die Schätzung ablehnen, wenn der Mempool zu spärlich oder ungesund erscheint.
Verbesserungen der Blockvalidierung
Bitcoin Core 32 ändert, wie Knoten Transaktionsdaten abrufen, während sie Blöcke verbinden, insbesondere wenn die benötigten Informationen aus dem Speicher gelesen werden müssen. Die Software kann jetzt vorherige Transaktionsausgaben, bekannt als prevouts, aus der Chainstate-Datenbank über mehrere Worker-Threads vorab abrufen, während die Blockvalidierung fortgesetzt wird. Der Standard sind acht Vorababruf-Threads, wobei Betreiber die Einstellung auf 16 erhöhen oder das parallele Abrufen deaktivieren können, indem sie sie auf null setzen.
Die Verbesserung soll die Zeit reduzieren, die beim Warten auf Festplattenlesungen verbracht wird, wenn ein Knoten Blöcke verarbeitet, die Eingaben enthalten, die nicht bereits in schnelleren Speichercaches verfügbar sind. Der Effekt variiert je nach Speicherhardware, Cache-Verhalten und Knotenkonfiguration.
Änderungen an RPC und Wallet-Tools
Separate RPC-Änderungen geben den Betreibern mehr Informationen während der AssumeUTXO-Hintergrundvalidierung. Bitcoin Core 32 behebt einen Fehler bei der Wallet-Benachrichtigung, der nicht-Windows-Systeme unter einer engen Bedingung betrifft. Die Entwurfsnotizen besagen, dass ein authentifizierter RPC-Benutzer mit Berechtigung zur Erstellung von Wallets einen Wallet-Namen mit speziellen Ersetzungszeichen erstellen könnte, wenn der Knoten mit -walletnotify konfiguriert war.
Ein neuer exportwatchonlywallet RPC erstellt eine Deskriptor-Wallet-Datei, die öffentliche Deskriptoren, Transaktionshistorie und Adressbuchdaten ohne private Schlüssel enthält. Ein weiterer neuer Befehl, derivehdkey, ermöglicht es einer Wallet, einen erweiterten öffentlichen oder privaten Schlüssel durch einen Pfad abzuleiten, der mindestens einen gehärteten Schritt enthält.
Fazit und Ausblick
Der aktuelle Zeitplan von Bitcoin Core listet weiterhin den 10. Oktober als Ziel für die Markierung von v32.0. Der Feedback-Thread für die RC-Tests, der am 15. September eröffnet wurde, bleibt aktiv, wobei die Entwickler Tester, die tatsächliche Bitcoin Core-Defekte finden, anweisen, separate Probleme vor der endgültigen Veröffentlichung zu melden.