買比特幣 買比特幣
Ctrl+D 買比特幣
ads
首頁 > 火星幣 > Info

ETH:如何開發出好用的輕量級客戶端?_ION

Author:

Time:1900/1/1 0:00:00

大約5年前,我們開始構建Trinity——以太坊網絡上的新型“輕量級客戶端”。那時候Geth剛剛發布了第一版LES協議,而我們曾心懷遠大的夢想。

遠大的夢想往往被現實所擊倒。這些年來,我們得到了一些教訓:

EVM計算從根本上來說是“繁重的”。

LES如同茫茫沙漠,客戶端就是沙漠中渴求數據的旅人。

同步并維護狀態的難度過高。

區塊鏈上的歷史記錄在絕大多數情況下是無用的,卻是必不可少的。

核心以太坊協議在本質上對“輕量級”不友好。

Python太慢了。

我們的目標是遠大的,方法是有缺陷的。現在是該從頭再來的時候了。

訪問以太坊協議

如果你想要與以太坊協議交互,擺在你面前的是兩個選擇:

自己運行客戶端。

直播|條子哥 > Chainlink如何在一年內將生態擴大了400%?:金色財經 · 直播主辦的《 Focus 價值50》深度解析 6 大TOP50 項目,白話分享,刷新共識!6月16日16:30準時開播,本期Chainlink中國區負責人 條子哥將在直播間聊聊“Chainlink如何在一年內將生態擴大了400%?”,該項目剛剛被當選世界經濟論壇技術先鋒,感興趣的朋友掃碼移步收聽![2020/6/16]

使用Infura等中心化提供商的服務。

上述兩個選擇可以滿足大多數用例的要求,但是它們位于兩個極端。以太坊客戶端需要消耗大量磁盤空間,花費數小時乃至數天時間進行同步,而且對CPU和內存的占用通常很大。中心化提供商是一種簡單可靠的方案,但是要以犧牲隱私性、安全性和去中心化原則為代價。

為什么我們不能有介于二者之間的第三種選擇?互聯網已經證明過很多次了了,在困難模式和簡單模式之間,人們往往會選擇后者。

大咖零距離 | 寶二爺,李笑來的成功我們能復制嗎?該如何抓住減半行情?:3月3日18:00,金色盤面邀請幣圈KOL老俞說幣做客金色財經《大咖零距離》直播間,將分享《寶二爺,李笑來的成功我們能復制嗎?該如何抓住減半行情?》,敬請關注,欲進群觀看直播掃描海報二維碼報名即可![2020/3/3]

自己托管郵件vs.Gmail

購買DVD或CDvs.盜版

盜版vs.流媒體

自己運行以太坊節點vs.Infura

我想過采用隱私保護型解決方案。然而,我的所有交易都是通過MyCrypto或Metamask完成的。這兩款錢包都來自中心化提供商。它們都支持用戶使用自己的節點,但是就現有的客戶端來說,我認為這么做成本太高。如果我們想與這些中心化解決方案爭奪市場份額,我們需要為用戶提供更好的選擇。

我們對客戶端的要求是:

大咖零距離 | 疫情行情下 如何使用纏論量化交易:2月15日9:00,金色盤面邀請纏論大師琛實投資做客金色財經《大咖零距離》直播間,將分享《疫情行情下 如何使用纏論量化交易》,敬請關注,欲進群觀看直播掃描海報二維碼報名即可![2020/2/14]

能夠在資源有限的設備上運行

公開標準“錢包”應用所需的API

不需要同步

從用戶的角度來說,我希望讓客戶端時刻保持運行,而不會影響我的設備的性能。我希望在離線一段時間后,再上線時無需等待客戶端同步。

這就是我心中的“圣杯”,是我舍命也要攀登的高峰。

錢包

我們這里講的是如何為錢包構建一個完美的客戶端。錢包無處不在,而且主要由中心化提供商支持。總的來說,錢包要滿足以下需求:

追蹤區塊鏈的最新區塊

查看賬戶余額和nonce

動態 | 200余名全球執法人員參加國際犯罪會議,探討如何制止加密犯罪:據TheNextWeb報道,本周,根據澳大利亞聯邦警察(AFP)的聲明,超過200名來自世界各地的執法人員將出席在布里斯班舉行的國際犯罪會議,共同探討尋找加密犯罪的方法。AFP代理局長Justine Gough表示,加密貨幣和加密通信等技術的進步已經改變了罪犯獲取和隱藏資產的方式,抓住并消除犯罪阻止他們獲利,是打擊有組織的犯罪網絡最有效的方法之一。[2019/11/14]

讀取合約信息

估算交易的gaslimit

發送交易

監控需要打包的待處理交易

大多數錢包都采用標準化的JSON-RPCAPI。根據上述需求轉化成的JSON-RPC端點如下所示:

eth_blockNumber用來追蹤鏈首塊

eth_getBalance和eth_getTransactionCount用來查看賬戶信息

eth_call用來讀取合約信息

eth_estimateGas用來估算gaslimit

eth_sendRawTransaction用來發送交易

eth_getTransactionReceipt表示交易已經被挖出

如果我們更深入分析該功能的必備條件,就會得到更低一級的需求:

訪問賬戶和合約存儲以支持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

翻譯&校對:?閔敏&?阿劍

Tags:以太坊ETHGETION比特幣以太坊eth錢包地址怎么注冊GETC幣Data Transaction Token

火星幣
USD:火幣全球站運營周報(2021.01.15-01.22)_FIL

火幣全球站本周事記 火幣合約特推出首期招募火熱開啟為更好的凝聚社區力量,為新人布道 1月20日 火幣合約特推出 誠邀身處在區塊鏈浪潮的優秀社群主具有粉絲群體的行業KOL加入與火幣合約共同構建繁榮.

1900/1/1 0:00:00
KAR:盤點 17 個準備競拍波卡/Kusama 平行鏈的項目_KUSA

波卡生態中有哪些鏈計劃成為波卡/Kusama平行鏈?如何參與CrowdLoan來支持自己看好的項目呢?今天我們就盤點了一些計劃競拍波卡或Kusama平行鏈的項目.

1900/1/1 0:00:00
CYBER:仙桃市核心要點_CYB

全市各級黨政機關、企事業單位干部職工原則上在仙桃過年,確需離仙的,須提前報所在單位批準,嚴禁前往境外及國內中高風險地區,直系親屬返仙的須向單位和居住社區雙報告.

1900/1/1 0:00:00
區塊鏈:鏈游玩家周報(1.18-1.24)_MOB

導語:上周鏈游玩家平臺動態總覽:首席福利官鏈小銀直播;《少女戰爭》1.19上線鏈游玩家平臺;《幻想計劃》1.21上線鏈游玩家平臺.

1900/1/1 0:00:00
NUA:LOEX雷盾周報(2021.1.18-2021.1.24)_HEL

產品 1、PC端V3.3.4最新版本于1月22日發布;交易廣告發布優化,域名優化新增代理:help.loex.io,法幣交易提示語優化;曼谷海外節點服務器進行維護升級,上線項目幣種測試.

1900/1/1 0:00:00
CLUB:荊門市核心要點_NightClub

春節期間,全市機關、事業單位和國有企業干部職工原則上在單位所在地過年。提倡在荊務工外地人員留在荊門過年,提倡在外地務工的荊門人就在當地過年,請用人單位依法依規做好加班工資支付、調休和節日保障工作.

1900/1/1 0:00:00
ads