在分片系統中,透過劃分多個分片數量,從而增加吞吐量。第一個關鍵問題是理解分片是如何劃分的。要什麼採取保護措施,以確保不被不誠實的驗證者控制大量分片。
上面是一個視覺化的展示,即使只有1%的驗證者集中在一個分片上也會造成嚴重的破壞。以太坊計劃使用一個重組過程,以一種不可預知的方式將驗證者分配給分片,以防止不誠實參與者接管分片。
跨分片通訊
這些分片的邊界會發生什麼?它們是如何相互交流的?一個顯而易見的答案是,如果一個應用程式不在我的分片上,我可以在另一個分片上建立一個新帳戶,或者我甚至可以使用一個交叉分片服務,在一個分片上獲取我的錢包地址,並允許我與任何其他分片上的應用程式互動。
想象一下,您希望從與您不在同一分片中的網路參與者收到付款。 你怎麼能從你沒參加的分片中收到錢?
以太坊研究人員提出的視覺化樣本方法
在這裡,我們引用收據的概念。收件人透過提供來源分片中的事務的merkle路徑,顯示他們將從外部分片接收到代幣的證據。目標分片會使用收據並記入收件人的帳戶,這些過程必須原子方式完成。
傳輸中的交易
真正跨分片的原子事務是一個難題,因為它需要在不同分片之間的驗證者同步通訊。如果對跨分片事務的需求非常高,則會導致效能降低,因為更多分片驗證者必須協作以處理跨分片事務。
分片系統必須建立信任機制,確保網路不會從外圍的分片中逆轉這些事務。如何保護自己免受可能發生的大規模重組的影響?
我們迄今為止的最佳答案是確保分片中的驗證者數量高於某個最小閾值,這樣不誠實的驗證者數量壓倒單個分片的機率就非常低。定期(但不是過於頻繁)進行驗證者輪換,限制了池中的驗證者潛在賄賂的能力。但如果驗證者輪換太頻繁,則執行節點的成本將增加,並且分散將受到損害,因為節點將需要更多儲存和頻寬以跟上分片變化。
最終性
最終性是大大簡化這些問題的一個特徵。一旦一個區塊被系統中的經濟多數人標記為最終區塊,我們就可以確定外部分割槽不會在我們的下方發生變化。 最終性將整個分類賬密封起來,這樣就不會發生變化,而且以前的交叉分片交易可以被視為像只有一條鏈一樣安全。
股權證明能夠保證最終結果,而工作證明永遠不能。這就是以太坊開發人員將PoS和分片整合到他們的Eth2.0路線圖計劃中的原因。