Ich verstehe, dass SegWit Transaktionsblockdaten kleiner macht, indem die Signatur nicht im Block gespeichert wird, sodass mehr Transaktionen in 1 MB passen. Dies liegt daran, dass die Signatur nicht mehr in der Blockchain gespeichert wird. Die Signatur macht fast 70 % des Datengewichts des Blocks aus. Bei einer SegWit-Transaktion wird also 70 % weniger in der Blockchain gespeichert. Aber wo werden die Signaturen gespeichert, wenn nicht in der Blockchain?
Das ist nicht genau. Der Zeuge wird in der Blockchain gespeichert.
Beim Segwit-Format ist die Signatur Teil des Zeugen, der Zeuge Teil der Transaktion und die Transaktion wird vollständig in den Block geschrieben. Knoten, die Segwit verstehen, laden die vollständige Transaktion einschließlich der Signatur herunter und speichern sie.
Segwit ist jedoch aufwärtskompatibel aufgebaut. Es ist so gemacht, dass es möglich ist, eine "gestrippte Version" einer Segwit-Transaktion zu erstellen, bei der der "Zeuge" weggelassen wird. Diese abgespeckte Version ist eine nicht standardmäßig gültige Transaktion gemäß den Pre-Segwit-Regeln. Dies bedeutet, dass Pre-Segwit-Knoten es nicht weitergeben, wenn es unbestätigt ist, sondern es akzeptieren, wenn es in einen Block aufgenommen wird. Segwit-fähige Knoten würden die gestrippte Version als unvollständig betrachten und sind daher darauf angewiesen, die vollständige Version der Transaktion von einem anderen Segwit-fähigen Knoten zu erhalten.
Da die Transaktionsausgaben Teil der gestrippten Transaktion sind (weil sie nicht Teil des Zeugen sind), kommen Pre-Segwit-Knoten zu demselben Schluss in Bezug auf das Eigentum an Geldern, indem sie den gestrippten Blöcken folgen wie segwit-fähige Knoten, die die vollständigen lesen Blöcke.
Ein Teil der Kritik an Segwit ist, dass Pre-Segwit-Knoten die Signatur von Segwit-Transaktionen nicht verifizieren, da sie den Zeugen nicht erhalten und nicht wissen, was sie damit anfangen sollen. Dies bedeutet, dass ein Legacy-Knoten möglicherweise einen segwit-ungültigen Block akzeptiert, bis dieser Block nicht mehr Teil der am meisten funktionierenden Kettenspitze ist. Ein solcher Block würde sich jedoch nicht gut im Netzwerk ausbreiten, da etwa 89 % der Knoten im Netzwerk segwit-fähig sind . Wenn Sie einen erheblichen Geldbetrag aus einer Segwit-Transaktion erhalten und einen Segwit-unfähigen Knoten betreiben, sollten Sie möglicherweise auf zusätzliche Bestätigungen warten, bevor Sie es für bare Münze nehmen. Bei erheblichen Beträgen wäre dies jedoch eine großartige Idee.
Es wird immer noch in der Blockchain gehalten. Es wird nur so gehalten, dass Nicht-Segwit-Clients die Signatur niemals sehen oder speichern.
EricLavault
Murch
faul
Murch
wlad
wlad