免責聲明:本文旨在傳遞更多市場信息,不構成任何投資建議。文章僅代表作者觀點,不代表火星財經官方立場。
小編:記得關註哦
來源:以太坊愛好者
原文標題:以太坊 2.0 采用瞭新的架構,智能合約開發者需要註意些什麼?
瞭解以太坊 2.0 的基本架構以及對開發者的挑戰。
原文標題:《科普 | 以太坊 2.0 的設計抉擇》(Design Choices in Eth2.0) 撰文:ditya Asgaonkar
本文為研究員 Aditya Asgaonkar 在 EthCC 大會上的演講幻燈片,據其自述,是為瞭向智能合約開發者說明 Eth2 的設計方案,以及開發者的開發體驗會有什麼樣的變化。他在演講中鮮明地勾勒出 Eth2 的基本架構,以及 Eth2 在設計上的挑戰。
正文中對幻燈內容的說明和分段,俱為編者所加。
在這一段,作者指出,以太坊 2.0 的兩大設計目標是可擴展性和安全性。
前者意味著吞吐量呈超線性增長,若節點資源投入量提升 K 倍,則整個系統的吞吐量增長大於 K 倍。
後者則意味著相應於節點所形成的共識安全性,保證所有部分都是同樣安全的。
後者用分片(把整個系統的狀態切分開來形成不同的片區)來實現,而前者用信標鏈來實現。
但是兩相結合之下,信標鏈就不能保存所有的分片數據、執行所有的分片交易,否則就會打破可擴展性要求。
因此,兩者的分工是,信標鏈負責共識、隻保存分片狀態的默克爾根,而且不執行分片交易;分片則沒有任何共識機制,僅有隨機抽取的驗證者來出塊、驗證並將默克爾根提交到信標鏈上。
但這樣一來,開發者今天習以為常的東西,在 Eth2.0 裡面就不一定現實瞭,比如:對系統中任意合約的同步調用。因為基本問題是,發起調用時,接受調用的分片不知道有人正在發起跨分片交易,除非信標鏈裡不僅有狀態默克爾根值信息,還有別的信息。但這樣就會打破可擴展性。
這就引發瞭兩者狀態訪問模式的比較。靜態狀態訪問的例子是無狀態執行,這種模式下,所需的狀態信息是附加在交易的見證信息裡跟交易一起傳播的,這樣確定性更強,但這樣就會遭遇上述問題;動態訪問模式下,交易的打包先後順序可能會引發問題。
最後,演講者指出,可擴展性和安全性是 Eth2.0 的終極追求,而相似於 Eth1 的執行模式隻是次要目標;並呼籲智能合約開發者放心,問題都可以解決的。
來源鏈接:docs.google.com