Abschnitt 7 des offiziellen Bitcoin-Papiers „Reclaiming Disk Space“ erklärt, dass nur Block-Header benötigt werden, um Transaktionen zu verifizieren. Im Wesentlichen, indem sichergestellt wird, dass die Transaktion hinter genügend Blöcken begraben wurde. Warum ist die Blockchain dann so groß? Es scheint, als könnten wir alle nur Header speichern und viel Speicherplatz zurückgewinnen. Kann ich die Integrität des Netzwerks unabhängig nur mit Blockheadern überprüfen?
Um einen neuen Block mit einem neuen Satz von Transaktionen zu validieren, muss Ihr Knoten auch sicherstellen, dass das Quellkonto für jede neue Transaktion tatsächlich über ein Guthaben verfügt, das ausgegeben werden kann. Dazu benötigen Sie die gesamte Blockchain.
Die Rückgewinnung von Speicherplatz beschreibt das, was heutzutage als Pruning bezeichnet wird. Nachdem Sie die gesamte Blockchain heruntergeladen haben, können Sie das meiste sicher wegwerfen, da alte ausgegebene Transaktionsausgaben nie wieder benötigt werden. Dies wird in Bitcoin Core noch nicht vollständig unterstützt, wird aber wahrscheinlich in der nächsten Hauptversion möglich sein.
Aus dem Papier (meine Hervorhebung):
Sobald die letzte Transaktion in einer Münze unter genügend Blöcken begraben ist, können die zuvor ausgegebenen Transaktionen verworfen werden, um Speicherplatz zu sparen
Sie sprechen über die vereinfachte Zahlungsüberprüfung (SPV), den nächsten Abschnitt in der Abhandlung. Mit SPV verwenden Sie nur Header und Merkle-Bäume, um zu überprüfen, ob eine Transaktion eine bestimmte Anzahl von Bestätigungen hat. Eine Transaktion mit einer hohen Anzahl von Bestätigungen ist wahrscheinlich sicher, aber Sie können sich nicht 100 % sicher sein, ohne die gesamte Blockchain herunterzuladen und zu verifizieren. SPV-Kunden vertrauen darauf, dass die Mehrheit der Miner ehrlich ist, was Full Nodes in den meisten Fällen nicht tun müssen. Heute wird SPV von vielen leichten Clients wie MultiBit und Bitcoin Wallet für Android verwendet.
Luca Matteis
David Schwarz
Luca Matteis
David Schwarz