乙太坊 2(信標鏈)上的 50/50 網路拆分將如何發揮作用?
我想知道如果存在某種主要的全球網路分裂——為了這個問題——導致所有 beconchain 節點的恰好 50% 與另一個50%。
據我了解,如果一個 beconchain 節點離線,它會通過從其質押餘額中扣除 ETH 來懲罰它,直到它低於 16 ETH,然後將其從網路中排除。由於區塊鍊是去中心化的,我知道與此相關的決策由所有質押節點共同處理。
我聽人說,排除離線節點的整個做法是為了維護網路的完整性和處理諸如核攻擊之類的事情。因此,即使 90% 的節點突然被破壞,剩下的 10% 也可以迅速排除它們,網路就會癒合。
但在這種情況下,我不是在詢問大約 50% 的節點被銷毀。我說的是如果一半節點由於主要的網路分裂而看不到另一半節點會發生什麼。這可能是技術故障、戰爭,甚至是主要世界大國之間的政治決定。在這種情況下,我假設分界線的每一半上的節點會認為分界線的另一半上的節點是離線的。由於實際上將有兩個獨立的信標鍊主網,因此每個主網都將開始對他們看不到的節點進行懲罰,將它們減少到 16 ETH 以下,然後最終將它們從網路中排除。
如果 netsplit 是永久性的,那麼我想這無關緊要。但是,假設在一周(或一個月或一年)之後,網際網路又重新連接在一起。在這一點上,信標鏈能否再次成為一體?分裂的每一邊的節點有 16 ETH 的股份被另一邊的節點吃掉(據我所知,這實際上是分裂之前存在的所有節點)會收回他們的 16 ETH 嗎?如果每個節點同時擁有 32 個 ETH 和 16 個 ETH,如何保持網路的穩定性,具體取決於您查看的拆分部分?
我一直明白,在比特幣和其他 PoW 區塊鏈上,當分裂的兩側能夠再次看到對方時,較長的鏈會“獲勝”,較短的鏈會“孤立”,但任何花費在孤立鏈上沒有在獲勝鏈上雙倍花費的將被整合。但我不明白 PoS 區塊鏈會如何,尤其是在 50/50 拆分後重新整合的情況下。
如果在任何文件或白皮書中回答了這個問題,那麼被指向相關資訊將與收到答案一樣有價值。由於對乙太坊的了解如此有限,甚至很難知道使用哪個術語來找到正確的答案。即使在Google上搜尋“ethereum netsplit beaconchain”之類的東西也會返回可怕的“看起來沒有多少適合您的搜尋的匹配項”消息。
有一個“不活動洩漏”會耗盡不活動的驗證者(在每個分區上),最終削減它們,以便剩餘的活動驗證者將再次達到 2/3 多數,從而恢復最終性。
重要的一點是,不活動洩漏大約需要 36 天。
INACTIVITY_PENALTY_QUOTIENT 等於 INVERSE_SQRT_E_DROP_TIME*2 其中 INVERSE_SQRT_E_DROP_TIME := 2**13 epochs(大約 36 天)是不活動懲罰將非參與驗證者的餘額減少到大約 1/sqrt(e) ~= 60.6% 的時間。
目前在信標鏈中沒有設計可以在重新整合的情況下將 ETH 返還給被罰沒的驗證者。
解釋活性保證是ethresear.ch上的一個主題,並進行了一些討論。從長時間的網路分裂中“恢復”並沒有優先於活躍度。vbuterin的回复:
我覺得 50/50 網路分區/拆分被嚴重高估為威脅。這在歷史上什麼時候發生在任何地方,並且沒有很快得到解決?如果世界的兩個部分在內部保持連貫,但它們之間的交流是不可能的,這甚至會是一個連貫的故事嗎?維持全球溝通的動力是巨大的,世界上仍然能夠在內部維持溝通的部分地區沒有理由在一兩週內無法找到可以相互交談的東西。無論是在正常生活中,還是由於政府審查,還是由於戰爭,更有可能的是節點下線,要麼是因為它們的運營商發生了什麼事,要麼是因為它們的運營商被整個網際網路切斷了。
不活動洩漏主要是為了應對這種“3/4 的網路同時下線”的風險。