Full-Node

節點如何驗證向後不兼容的塊?

  • December 5, 2020

當您使用最新版本的 Bitcoin Core 開始初始塊下載時,您的節點如何知道舊塊根據軟分叉之前的不同規則是有效的?

在目前的共識規則下,鏈中的舊塊仍然有效。

從廣義上講,這是因為將編寫程式碼以在特定區塊高度執行規則更改,因此較舊的區塊將不受所述新規則的約束。

換句話說:共識規則集不僅涵蓋了新區塊的外觀,還涵蓋了歷史有效鏈的外觀!

有時,會寫入特定的例外情況,例如BIP 30 的情況。

軟分叉是對比特幣協議的一種改變,它為全節點強制執行的規則增加了額外的限制。但是,這些附加限制僅適用於從啟動點開始的塊。預計軟分叉啟動前的塊不會滿足新的限制。這些塊根據舊協議規則進行驗證,這些規則繼續存在於協議實現的程式碼中(例如比特幣核心)。

引用自:https://bitcoin.stackexchange.com/questions/100386