加密貨幣交易所 加密貨幣交易所
Ctrl+D 加密貨幣交易所
ads

科普 | 如何開發出好用的輕量級客戶端_以太坊:EFI

Author:

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

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

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

EVM計算從根本上來說是“繁重的”。LES如同茫茫沙漠,客戶端就是沙漠中渴求數據的旅人。同步并維護狀態的難度過高。區塊鏈上的歷史記錄在絕大多數情況下是無用的,卻是必不可少的。核心以太坊協議在本質上對“輕量級”不友好。Python太慢了。我們的目標是遠大的,方法是有缺陷的。現在是該從頭再來的時候了。

訪問以太坊協議

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

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

火幣推出《一分鐘讀懂DeFi》系列科普視頻:據官方消息,8月24日,火幣推出《一分鐘讀懂DeFi》系列科普視頻,并與微博財經合作冠名播出,布道DeFi認知,助力行業發展《一分鐘讀懂DeFi》是由火幣成長學院打造的業內首個系統全面講解DeFi的系列科普動畫,繼推出《區塊鏈100問》后的再續佳作。《一分鐘讀懂DeFi》系列動畫對DeFi的發展進行系統梳理,適合想要由淺入深、全面系統了解區塊鏈DeFi的人們輕松了解DeFi。目前視頻已由火幣網官方微博發布。[2020/8/24]

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

自己托管郵件vs.Gmail購買DVD或CDvs.盜版盜版vs.流媒體自己運行以太坊節點vs.Infura我想過采用隱私保護型解決方案。然而,我的所有交易都是通過MyCrypto或Metamask完成的。這兩款錢包都來自中心化提供商。它們都支持用戶使用自己的節點,但是就現有的客戶端來說,我認為這么做成本太高。如果我們想與這些中心化解決方案爭奪市場份額,我們需要為用戶提供更好的選擇。

TRON數字錢包科普資料《波場錢包的現在過去與未來》已上線:據最新消息顯示,由TokenPocket聯合波場TRON官方,以及 TokenPocket 社區志愿者共同撰寫的《波場錢包的現在過去與未來》已正式上線。《波場錢包的現在過去與未來》又稱為波場錢包小白書,詳細介紹了當前TRON錢包與TRON生態密切結合的實例,是目前市面上最為詳細的TRON數字錢包科普資料。波場錢包作為波場公鏈生態中極為重要的入口,是波場生態的重要構成要素。波場錢包從一開始只提供權限管理、轉賬收款、節點投票等基礎功能,到如今不僅可以為用戶提供法幣交易、閃兌和去中心化交易所等方便快捷的交易服務,還能讓用戶直接在錢包上體驗波場上DApp,挖礦、DeFi、Staking等資產增值服務。詳情見原文鏈接。[2020/8/20]

我們對客戶端的要求是:

動態 | 浙江衛視節目科普支付寶區塊鏈防偽溯源產品:昨日,在浙江衛視播出的科普綜藝欄目《智造將來》現場,支付寶首次展示了支付寶區塊鏈防偽溯源產品,以接地氣的方式公開向大眾展示區塊鏈在生活中的應用。[2019/3/4]

能夠在資源有限的設備上運行公開標準“錢包”應用所需的API不需要同步從用戶的角度來說,我希望讓客戶端時刻保持運行,而不會影響我的設備的性能。我希望在離線一段時間后,再上線時無需等待客戶端同步。

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

錢包

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

追蹤區塊鏈的最新區塊查看賬戶余額和nonce讀取合約信息估算交易的gaslimit發送交易監控需要打包的待處理交易大多數錢包都采用標準化的JSON-RPCAPI。根據上述需求轉化成的JSON-RPC端點如下所示:

聲音 | 中科院姚建銓:要加快推進區塊鏈與物聯網融合的科普 培訓:據新華網消息,日前,在區塊鏈與物聯網融合發展峰會上,中國科學院院士姚建銓說,關注區塊鏈技術里面的大數據,跟區塊鏈技術結合起來進行測量和檢測,能更好地提升激光清洗技術。姚建銓建議,無錫今后要加快推進區塊鏈與物聯網融合的科普、培訓,正確引導廣大人民群眾對技術的認知;同時,建立專業、權威,但又普適、成套的理論體系和標準,以此切入區塊鏈的實際應用。[2018/9/18]

eth_blockNumber用來追蹤鏈首塊eth_getBalance和eth_getTransactionCount用來查看賬戶信息eth_call用來讀取合約信息eth_estimateGas用來估算gaslimiteth_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:以太坊ETH區塊鏈EFI以太坊價格歷史走勢圖Ethereal對應情侶名區塊鏈dapp游戲Verify DeFi

酷幣下載
Usetech稱NFT鏈Unique Network金絲雀網絡版本將接受審計_USE:NFT

軟件開發公司Usetech發推稱,“金絲雀網絡版本已準備好接受審計。自從開始工作以來,我們已經完成總共171個Jira任務,它包括了我們想要的金絲雀網絡的所有功能.

1900/1/1 0:00:00
Filecoin 推出生態Showcase計劃_FIL:DEFILANCER價格

雖然Filecoin主網上線才5個月,但Filecoin網絡已經擁有了Web3中最活躍的開發者生態之一.

1900/1/1 0:00:00
以太坊核心開發者:EIP-1559重點在于改善用戶體驗和解決Gas市場的低效問題_ETH:以太坊幣現在的價格是多少

星球日報訊以太坊核心開發者eric.eth發布推特稱,EIP-1559需要上一堂歷史課,因為它現在有點修改了。在2019年初,其對以太坊費用的第一個價格拍賣模型非常糟糕,感到十分沮喪.

1900/1/1 0:00:00
高維解析 | 數字經濟大勢所趨 賦能實體產業_COS:OSMO

當前,全球經濟越來越呈現數字化特征,人類社會正在進入以數字化為主要標志的新階段。數字經濟已經成為世界的主要經濟形態,也成為推動我國經濟社會發展的核心動力.

1900/1/1 0:00:00
巴比特專欄 | 白士泮:把握機遇,建設亞洲數字經濟體_MIN:ION

原標題:《建設亞洲數字經濟體的機遇》作者:白士泮,新加坡國立大學客座教授、李白金融學院院長、原新加坡金融管理局學院院長 本文首發于聯合早報 簡言之,數字經濟指的是通過數字化知識與信息的使用.

1900/1/1 0:00:00
Polkadot發布平行鏈上線流程_POL:LOT

來源:Polkadot中文平臺 平行鏈是Polkadot白皮書中提出的最后一項核心功能,它將允許Polkadot實現其可擴展的多鏈架構.

1900/1/1 0:00:00
ads