Transactions

硬分叉後節點如何劃分?軟叉?

  • May 22, 2018

硬分叉後,全節點會發生什麼?假設在分叉之前存在 11,000 個 BTC 全節點。所有 11,000 人最終都支持 BCH 和 BTC 嗎?或者 BCH 是否開始建構自己的節點網路。不問礦工,只問全節點(不過,如果你也能解決挖礦節點的問題,這會有所幫助)。

此外,在軟分叉場景中,我相信 11,000 個節點被劃分 - 比如說 7000 個支持軟分叉(例如 Segwit),其餘 4000 個不支持。在那種情況下,支持者和非支持者之間的交易如何保持合法。

硬分叉後,全節點會發生什麼?假設在分叉之前存在 11,000 個 BTC 全節點。所有 11,000 人最終都支持 BCH 和 BTC 嗎?或者 BCH 是否開始建構自己的節點網路。不問礦工,只問全節點(不過,如果你也能解決挖礦節點的問題,這會有所幫助)。

硬分叉意味著正在使用一組新的共識規則,它將區塊鏈分為遵循舊規則的區塊鍊和遵循新規則的區塊鏈。一個節點沒有“介於兩者之間”來遵循兩個規則,並且節點通常不具備同時支持兩個區塊鏈的能力。

如果發生硬分叉,支持新規則的節點和硬分叉的啟動規則將與不支持新規則的節點分開。他們成為自己的網路並擁有自己的區塊鏈。這適用於所有完整節點,礦工是其中的一個子集。

因此,在您的範例中,除非專門設計用於支持 BCH 和 BTC,否則任何節點都不會支持 BCH 和 BTC。標準行為(即節點使用比特幣核心作為 BTC 或比特幣 ABC 用於 BCH)是只支持一個共識規則是硬編碼的鏈。這 11,000 個節點中的一些將具有 BCH 規則,因此它們將與其他沒有 BCH 節點的節點分開。

此外,在軟分叉場景中,我相信 11,000 個節點被劃分 - 比如說 7000 個支持軟分叉(例如 Segwit),其餘 4000 個不支持。在那種情況下,支持者和非支持者之間的交易如何保持合法。

軟分叉向後兼容舊節點。它的設計方式必須確保舊節點不會在軟分叉啟動後被踢出網路。所以對於軟分叉,軟分叉的設計是為了讓新規則下的交易在舊規則下也有效。對於隔離見證,這是通過剝離完全新的隔離見證特定組件來完成的,以便非隔離見證節點能夠解析和驗證交易。

在軟分叉中,沒有鏈分裂,所有 11,000 個節點仍在使用 BTC 並遵循相同的區塊鏈。

硬分叉是與之前的規則集不兼容的規則更改。因此,任何未更新到新規則的節點都只會保留在遵循舊規則集的鏈上:除非所有礦工和節點都更新,否則將出現不可修復的鏈分裂,從而導致創建新的分叉幣。

分叉是與先前規則集兼容的規則更改,即收緊將有效塊集限制為先前允許的子集的規則。只要大部分算力更新到新規則,所有節點都會收斂到新規則上。未升級到新規則的礦工偶爾可能會發現與新規則不兼容的新區塊,將被多數算力孤立。

如果兩個鏈提示在製作交易時使用相同的規則,則大多數交易將在另一條鏈上重播。只有在相應鏈尖或 UTXO 上的幣庫輸出中派生出的交易才是安全的,這些交易已通過在兩個鏈尖上發送兩個衝突的交易來進行去中介化。通過在分叉更新中包含交易格式的更改,可以實現顯式重放保護。

另請參閱:什麼是軟分叉?

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