Terminology

我們如何知道哪些軟分叉是使用使用者啟動的軟分叉或礦工啟動的軟分叉實現的?

  • February 13, 2021

這似乎是最常見的定義

  • 當大多數礦工升級以執行新規則時,稱為礦工啟動軟分叉(MASF)。當全節點協調執行新規則時,沒有礦工的支持,它被稱為使用者啟動的軟分叉(UASF)。

我們如何知道哪些軟分叉是由全節點升級客戶端或礦工升級客戶端實現的?有沒有辦法知道,還是我們只是猜測?

<https://github.com/bitcoin/bitcoin/blob/master/doc/bips.md>

大多數過去的軟分叉都部署了礦工啟動的軟分叉,我們知道這一點是因為使用的部署機制只允許礦工啟動的軟分叉。為了讓使用者啟動軟分叉,部署機制必須具有某種不依賴於礦工的啟動形式。到目前為止,所使用的啟動方法都是基於礦工行為而不是標誌日部署的。

有兩個例外,可以說這些軟分叉是使用者啟動的,而不是礦工啟動的。第一個是表面上通過標誌日啟動的 BIP 16(即,在特定時間之後的所有塊都必須支持 BIP 16)。然而,只有在一定門檻值的礦工在他們的區塊中表示支持 BIP 16 之後,才確定標誌日。因此,雖然程式碼是標誌日,但該過程仍然是礦工啟動的軟分叉,只是手動完成而不是通過程式碼完成。

第二個例外是隔離見證。然而,segwit 使用 BIP 9 作為其啟動機制,這完全依賴於礦工信號。所以從技術上講,它嚴格來說是一個礦工啟動的軟分叉。但是你可以爭辯說它是使用者啟動的,因為使用者執行的軟體會在國旗日啟動,但礦工在那天之前就開始發出準備信號。所以確切的機制是通過礦工信號,但可能是使用者啟動的,因為使用者通過執行具有使用者啟動機制的軟體來威脅礦工。

對於未來的軟分叉,很可能會使用 BIP 9(MASF)和 BIP 8(MASF 和 UASF)的組合。然後,您可以確定它是礦工啟動的還是使用者啟動的。對於這兩種情況,礦工都可以在他們的區塊中發出信號來啟動分叉。僅對於 BIP 8,在一定時間後,分叉將通過標誌日啟動,因此如果發生這種情況,則它是使用者啟動的軟分叉。

唯一應該被歸類為 UASF 的軟分叉是 BIP 30。這是由標誌日啟動的,礦工信號並不是正式啟動的一部分。

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