Hardforks

為什麼永久鏈分裂只發生在硬分叉中?

  • June 30, 2018

閱讀了許多關於硬分叉和軟分叉實際上是什麼的文章。卻無法真正領悟其中的精髓。我的理解是硬分叉帶來了核心區塊鏈程式碼(賬戶、交易、區塊)的變化。所以共識實際上打破了因為升級和未升級的節點有兩個不同版本的區塊鏈。

而在軟分叉的情況下,核心區塊鏈程式碼保持不變,但可能是挖礦客戶端對其應用了一些限制。基本上,如果我想軟分叉說 Block Gas Limit 從 150 萬到 100 萬,而不是更改核心區塊鏈程式碼本身,挖礦客戶端和完整節點只需應用外部過濾器來接受直到 100 萬氣體限制。因此,無論所有節點是否升級,它們都由相同的區塊鏈程式碼管理。因此,任何分裂都應發生在同一條鏈上,並通過 GHOST 協議解決。

我的理解清楚嗎?有人請澄清

您的理解很接近,但並不完全正確。

軟分叉是一種改變,它使一些以前合法的區塊變成非法的。

硬分叉是一種改變,它使一些以前非法的塊合法化。

現在想像一下大部分網路已經應用了更改,並從尚未應用更改的節點的角度考慮這一點。

在軟分叉的情況下,最長鏈中的所有塊看起來都是合法的。可能偶爾會有未升級的礦工創建的區塊被網路的其餘部分認為是非法的,但它們很快就會被大多數人孤立,因此儘管未升級的節點有時會對哪個最長的節點有不同的看法環比多數,這種情況不會持續太久。

在硬分叉的情況下,最長鏈中創建的塊似乎是非法的。所以一個未升級的節點不會建立在它們之上,而是建立在它的未升級節點創建的最長鏈上。

因此,使用軟分叉,網路偶爾會分裂,但會很快收斂,而使用硬分叉,網路會分裂成兩條獨立的鏈,它們將無限期地並行增長。

引用自:https://ethereum.stackexchange.com/questions/52405