大約5年前,我們開始構建Trinity——以太坊網絡上的新型“輕量級客戶端”。那時候Geth剛剛發布了第一版LES協議,而我們曾心懷遠大的夢想。
遠大的夢想往往被現實所擊倒。這些年來,我們得到了一些教訓:
EVM計算從根本上來說是“繁重的”。LES如同茫茫沙漠,客戶端就是沙漠中渴求數據的旅人。同步并維護狀態的難度過高。區塊鏈上的歷史記錄在絕大多數情況下是無用的,卻是必不可少的。核心以太坊協議在本質上對“輕量級”不友好。Python太慢了。我們的目標是遠大的,方法是有缺陷的。現在是該從頭再來的時候了。
訪問以太坊協議
如果你想要與以太坊協議交互,擺在你面前的是兩個選擇:
自己運行客戶端。使用Infura等中心化提供商的服務。上述兩個選擇可以滿足大多數用例的要求,但是它們位于兩個極端。以太坊客戶端需要消耗大量磁盤空間,花費數小時乃至數天時間進行同步,而且對CPU和內存的占用通常很大。中心化提供商是一種簡單可靠的方案,但是要以犧牲隱私性、安全性和去中心化原則為代價。
人民數字FINTECH推出區塊鏈科普動畫:人民日報數字傳播發布微博稱,人民數字FINTECH出品《趣味科普|區塊鏈動畫》。[2020/3/31]
為什么我們不能有介于二者之間的第三種選擇?互聯網已經證明過很多次了了,在困難模式和簡單模式之間,人們往往會選擇后者。
自己托管郵件vs.Gmail購買DVD或CDvs.盜版盜版vs.流媒體自己運行以太坊節點vs.Infura我想過采用隱私保護型解決方案。然而,我的所有交易都是通過MyCrypto或Metamask完成的。這兩款錢包都來自中心化提供商。它們都支持用戶使用自己的節點,但是就現有的客戶端來說,我認為這么做成本太高。如果我們想與這些中心化解決方案爭奪市場份額,我們需要為用戶提供更好的選擇。
我們對客戶端的要求是:
動態 | 區塊鏈技術入選科普雜志《科學美國人》2019十大突破性技術榜單:據新浪網今日新聞報道,美國科普雜志《科學美國人》公布 2019 十大突破性技術榜單。區塊鏈技術因在保障食品安全中的作用而上榜。 入選榜單具體原因:區塊鏈技術的發展應用將顯著改善食品污染源數據追蹤的困境。利用區塊鏈云端系統,食品制造商可以依次在計算機儲存各類過程的信息。[2019/9/29]
能夠在資源有限的設備上運行公開標準“錢包”應用所需的API不需要同步從用戶的角度來說,我希望讓客戶端時刻保持運行,而不會影響我的設備的性能。我希望在離線一段時間后,再上線時無需等待客戶端同步。
這就是我心中的“圣杯”,是我舍命也要攀登的高峰。
錢包
我們這里講的是如何為錢包構建一個完美的客戶端。錢包無處不在,而且主要由中心化提供商支持。總的來說,錢包要滿足以下需求:
聲音 | CNBC主持人:加密貨幣最大的缺點之一就是難以向外行快速科普:CNBC主持人Ran NeuNer近期發推稱,加密貨幣最大的缺點之一就是很難向外行快速解釋。當人們要求我向他們解釋比特幣時,我知道他們至少需要一個小時才能真正理解。[2019/9/10]
追蹤區塊鏈的最新區塊查看賬戶余額和nonce讀取合約信息估算交易的gaslimit發送交易監控需要打包的待處理交易大多數錢包都采用標準化的JSON-RPCAPI。根據上述需求轉化成的JSON-RPC端點如下所示:
eth_blockNumber用來追蹤鏈首塊eth_getBalance和eth_getTransactionCount用來查看賬戶信息eth_call用來讀取合約信息eth_estimateGas用來估算gaslimiteth_sendRawTransaction用來發送交易eth_getTransactionReceipt表示交易已經被挖出如果我們更深入分析該功能的必備條件,就會得到更低一級的需求:
財政部副部長朱光耀:數字經濟還處在發展的過程中,要以科普、推動的態度來推進數字經濟發展:今日,在中國發展高層論壇2018年會上,財政部副部長朱光耀表示:“數字經濟還處在發展的過程中,要以科普、推動的態度來推進數字經濟發展。也要關注數字經濟的其他影響,包括稅收征管、反洗錢監管措施等要跟上。”[2018/3/25]
訪問賬戶和合約存儲以支持eth_call、eth_estimateGas、eth_getBalance和eth_getTransactionCount訪問gossip網絡來追蹤鏈首塊和eth_sendRawTransaction訪問鏈上歷史記錄來獲得eth_getTransactionReceipt因此,如果我們可以滿足這些需求,就可以構建一個適合輕量級錢包的客戶端,不需要同步,也無需犧牲隱私性和安全性。
如今的以太坊網絡
目前,以太坊客戶端可以在以太坊協議和LESDevP2P協議之間進行選擇。
LES協議采用服務器/客戶端模型。在該模型中,數據會根據要求從服務器流向客戶端。該協議不允許客戶端通過任何有意義的方式返回數據,這點可以從協議狀態看出。根據我的經驗來看,LES協議中的服務器和客戶端在數量上嚴重失衡。運行服務器的成本很高,現有服務器的數量不足。這就導致LES變得不可靠,而且經常會變得完全不可用。
以太坊協議則另有缺陷。該協議很好地達到了目的,確保網絡中所有的節點都盡可能地復制了完整的歷史記錄和狀態數據。這對客戶端的要求很高。網絡中的每個節點都必須保存完整的歷史記錄和狀態。沒有保存這些數據的節點不太可能保持健康的點對點連接,可能會在無法滿足對等節點的數據要求時斷開連接。
在本系列文章中,我們想要解構以太坊協議這一“龐然大物”。該協議包含了我們理想的客戶端類型的所必備的一切功能。它的設計適合全節點和礦工,但是不適合我們所概述的輕量級客戶端。
解構以太坊協議
讓我們將目光轉向以太坊協議……
我們需要解決這個問題。在與以太坊協議交互時,人們可選擇的方式有限,而且高度依賴中心化提供商。當前的網絡狀態就預示了未來可能發生的情況。
我們構想了另一種適用于以太坊錢包的輕量級客戶端。這一構想不只是一個想法,而是以實驗、原型以及我們對現有協議不斷深入的認知為基礎的。
我們正在研究的解決方案需要對核心以太坊協議進行一些修改,以便支持該用例。在該系列的下一篇文章中,我將概述需要修改和新增的部分,以及我們計劃如何去實現它們。最重要的是,我將講述我自己對這一新型輕量級客戶端的用戶體驗的期望。
原文鏈接:https://snakecharmers.ethereum.org/the-winding-road-to-functional-light-clients/作者:PiperMerriam翻譯&校對:閔敏&阿劍
加入PolkaWorld社區,共建Web3.0!對于大眾來說,“GavinWood”這個名字暫時還沒有“中本聰”、“V神”那么家喻戶曉。但在很多區塊鏈開發者的心中,他卻是傳奇程序員和技術領袖.
1900/1/1 0:00:001月27日,mStableDAO和mStableprotocolDAOSnapshot聯合發布六個新提案.
1900/1/1 0:00:00推特賬號@CryptoBull2020凌晨發文稱:美國東部時間2月1日星期一上午8點30分,有6萬人計劃購買并持有XRP;該群組已有6萬人,在過去90分鐘內新增了1萬名成員.
1900/1/1 0:00:00據PolkaWorld消息,波卡創始人GavinWood最近在談話節目中被問到“誰在負責和治理Kusama?是Polkadot嗎?”GavinWood表示,不是Polkadot.
1900/1/1 0:00:00在周二舉行的參議院財政委員會聽證會上,美國國稅局專員CharlesRettig表示,正在起草一項與加密貨幣稅收報告有關的法案,該標準有助于縮小美國的稅收差距.
1900/1/1 0:00:00來源:每日經濟新聞 作者:胡琳 目前,數字人民幣試點工作穩步開展。近期,《每日經濟新聞》記者注意到,在數字人民幣APP中,快遞巨頭順豐出現在數字人民幣APP“推送子錢包”頁面.
1900/1/1 0:00:00