張衛家:
我理解是一個是節點不作為的懲罰,另一個是對惡意作為的懲罰。我認為這種懲罰應該在DAO(社區自動管理系統)建立起來,有了懲罰共識以后才有意義。5隨機性問題:協議并非二選一
主持人:關于PoS協議,隨機性是非常重要的,目前Beacon chain選擇的是RANDAO結構來實現隨機性,而未來,開發者計劃使用可驗證延遲函數(VDF),請楊鎮老師給大家講講RANDAO和可驗證延遲函數(VDF)這兩款隨機抽樣技術的情況。
楊鎮:
RANDAO 就是 random DAO 的意思,其中的 DAO 就是 Decentralized Autonomous Organization 的縮寫,也就是所謂的“去中心化自治組織”。這種方式是通過一個智能合約來使多人合作一起生成隨機數的方式。它使用了智能合約開發里的所謂 commit-reveal 的設計模式。合約應該是可以反復使用的,也就是應該是一個循環狀態機;每次產生一個隨機數的執行過程會分為三個階段:提交、揭示和實際計算。第一個階段是所有參與者各提交一個他們各自隨意指定的輸入數據的哈希值,等所有人都提交完或者規定時間達到時,進入第二階段,由所有提交人提交之前哈希值對應的原始數據。如果兩次提交的數據相符,則作為一個有效的計算輸入。待所有人揭示完畢或達到規定時間之后,合約將自動基于有效的計算輸入(應該多于一個固定的最小數量)來計算實際的隨機數。然后合約回到第一階段的狀態,可以重新開始生成隨機數。RANDAO 模式的風險就是:在揭示階段,最后一個提交原始數據的人,是可以看到之前所有其他人的原始數據的(因為所有交易的附加數據都是公開的),可以預知最終的結果。VDF 則是作為一種開源硬件(ASIC)設計的,目的是用來作為對通過 RANDAO 方式產生的隨機數進行再計算來獲得最終結果,它是要與 RANDAO 共同使用的,并不是二選一的關系。也就是說,在 Eth 2.0 中,首先會由所有參與委員會的成員基于 RANDAO 的方式產生一個隨機數,然后由 VDF 將此隨機數作為輸入來計算得到最終的隨機數。
VDF 的計算過程是一種無法通過并行計算加速的計算過程,這也就能避免通過并行計算的方式提前獲知結果而從中牟利的可能。目前這個延遲的時間(也就是計算的難度)被設定為 102 分鐘,就是必須要經過 102 分鐘的計算才能得到最終的隨機數。
Mako:
VDF 礦機的研究,目前是以太坊基金會和 filecoin 一起在做,進展好像不是很多。61024個分片:兼顧安全和性能
主持人:剛才,張衛家老師有提到說,以太坊的分片數量被設為了1024個,這些分片之間會互現由合約進行交流,那么為何會設置為1024這個數字,不是更多也不是更少呢?其中的權衡之道是什么?此外這也意味著會有131072(1024*128)個驗證者的位置(最優),而屆時如果驗證者數量不夠,會發生一些什么?
阿劍:
哈哈哈。這個數量咋定出來的我也不知道??赡苄枰?2 的次方個吧。另外,增發率也會動態調整來激勵驗證者加入。
Mako:
程序員喜歡 1024。
張衛家:
二進制,肯定是二的次方。1024 不是固定的,如果驗證節點不夠,Vitalik 也能讓基金會運行一些節點。
阿劍:
確實可能是安全和性能的權衡,驗證者不能太少,不然分片就容易被攻破。
楊鎮:
社區里的大神解釋過這個問題,說是出于安全性的考慮,基于每個分片至少 128 個驗證者這個設計來確定的 1024 個分片這個數字。我并不是算法專家,沒法簡單地解釋為什么 128 個驗證者就是安全的。大家有興趣的話,可以去看 V 神的論文:http://vitalik.ca/files/Ithaca201807_Sharding.pdf對于 Eth 2.0 的分片系統來說,因為每個分片都是獨立的地址空間,所以如果系統中處理的所有交易都不是跨片交易,也就是不依賴于其他分片的數據,那么整體處理速度理論上確實能提高了 1000 倍;但這個整體性能是會隨著跨片交易比例的提高而顯著降低的。關于跨片交易的處理是分片系統中最復雜的部分,目前也還沒有確定的技術方案。最后有關驗證者數量不夠的問題,
此文由
中國比特幣官網 編輯,未經允許不得轉載?。?a href="http://m.huohuxiazai.com/">首頁 > btc是什么 » Eth 2.0 會成為第一個從 PoW轉PoS 的公鏈嗎?丨SheKnows第五期