大約5年前,我們開始構建Trinity——以太坊網絡上的新型“輕量級客戶端”。那時候Geth剛剛發布了第一版LES協議,而我們曾心懷遠大的夢想。
遠大的夢想往往被現實所擊倒。這些年來,我們得到了一些教訓:
EVM計算從根本上來說是“繁重的”。
LES如同茫茫沙漠,客戶端就是沙漠中渴求數據的旅人。
同步并維護狀態的難度過高。
區塊鏈上的歷史記錄在絕大多數情況下是無用的,卻是必不可少的。
核心以太坊協議在本質上對“輕量級”不友好。
Python太慢了。
我們的目標是遠大的,方法是有缺陷的。現在是該從頭再來的時候了。
訪問以太坊協議
如果你想要與以太坊協議交互,擺在你面前的是兩個選擇:
自己運行客戶端。
TRON數字錢包科普資料《波場錢包的現在過去與未來》已上線:據最新消息顯示,由TokenPocket聯合波場TRON官方,以及 TokenPocket 社區志愿者共同撰寫的《波場錢包的現在過去與未來》已正式上線。《波場錢包的現在過去與未來》又稱為波場錢包小白書,詳細介紹了當前TRON錢包與TRON生態密切結合的實例,是目前市面上最為詳細的TRON數字錢包科普資料。波場錢包作為波場公鏈生態中極為重要的入口,是波場生態的重要構成要素。波場錢包從一開始只提供權限管理、轉賬收款、節點投票等基礎功能,到如今不僅可以為用戶提供法幣交易、閃兌和去中心化交易所等方便快捷的交易服務,還能讓用戶直接在錢包上體驗波場上DApp,挖礦、DeFi、Staking等資產增值服務。詳情見原文鏈接。[2020/8/20]
使用Infura等中心化提供商的服務。
上述兩個選擇可以滿足大多數用例的要求,但是它們位于兩個極端。以太坊客戶端需要消耗大量磁盤空間,花費數小時乃至數天時間進行同步,而且對CPU和內存的占用通常很大。中心化提供商是一種簡單可靠的方案,但是要以犧牲隱私性、安全性和去中心化原則為代價。
動態 | 鏈客社區聯合北京交通廣播推出區塊鏈技術科普節目:12月11日15:15—16:00,區塊鏈技術社區——鏈客區塊鏈技術社區將聯合北京交通廣播FM103.9從零開始為大眾科普解碼區塊鏈技術,蜻蜓FM及北京廣播網同期進行全球直播。首期做客嘉賓為鏈客區塊鏈技術社區創始人郄建軍和百度區塊鏈產品負責人于雅楠。[2019/12/11]
為什么我們不能有介于二者之間的第三種選擇?互聯網已經證明過很多次了了,在困難模式和簡單模式之間,人們往往會選擇后者。
自己托管郵件vs.Gmail
購買DVD或CDvs.盜版
盜版vs.流媒體
自己運行以太坊節點vs.Infura
我想過采用隱私保護型解決方案。然而,我的所有交易都是通過MyCrypto或Metamask完成的。這兩款錢包都來自中心化提供商。它們都支持用戶使用自己的節點,但是就現有的客戶端來說,我認為這么做成本太高。如果我們想與這些中心化解決方案爭奪市場份額,我們需要為用戶提供更好的選擇。
動態 | 新浪財經:官媒針對區塊鏈的報道從科普宣傳轉向打假監管:據新浪財經今日消息,“1025新政”滿月,一個月間,官媒對區塊鏈的態度風向已轉。據11月初的一項統計,七家黨媒在新政一周內發布了65篇直接相關報道,當時文章中的關鍵詞是數據、產業、安全、創新等,大量文章偏向于科普區塊鏈的概念以及應用介紹,提醒警惕虛擬貨幣炒作的僅有3篇。近期,官媒的批評焦點則紛紛指向借區塊鏈之名進行的虛擬貨幣發行和炒作行為。據統計,新華網、人民網收錄轉載的,以打擊虛擬貨幣或揭露假借區塊鏈行騙為主題的文章,自10月25日到11月25日午間,共28篇;其中,11月19日至11月25日的一周內就高達15篇。這些文章主要圍繞三個觀點展開:厘清區塊鏈和虛擬貨幣的關系,說明二者概念不等;打擊偽“區塊鏈”騙局,或是虛擬貨幣騙局揭露;提醒民眾,區塊鏈不能成為炒作的噱頭,更不是行騙的招牌,需警惕此類活動,理性投資。[2019/11/26]
我們對客戶端的要求是:
動態 | 央行官微舊文重發“再科普”:范一飛詳解數字貨幣:據中國經濟網消息,今日,央行官微公眾號頭條重新發布央行副行長范一飛在2018年1月25日題為《關于央行數字貨幣的幾點考慮》的文章,對央行數字貨幣再次進行科普。同時,微信公眾號第二條發布支付司副司長穆長春8月10日在第三屆中國金融四十人伊春論壇上的演講。近年來,各主要國家和地區央行及貨幣當局均在對發行央行數字貨幣開展研究,新加坡央行和瑞典央行等已經開始進行相關試驗,人民銀行也在組織進行積極探索和研究。[2019/8/21]
能夠在資源有限的設備上運行
公開標準“錢包”應用所需的API
不需要同步
從用戶的角度來說,我希望讓客戶端時刻保持運行,而不會影響我的設備的性能。我希望在離線一段時間后,再上線時無需等待客戶端同步。
這就是我心中的“圣杯”,是我舍命也要攀登的高峰。
錢包
我們這里講的是如何為錢包構建一個完美的客戶端。錢包無處不在,而且主要由中心化提供商支持。總的來說,錢包要滿足以下需求:
追蹤區塊鏈的最新區塊
查看賬戶余額和nonce
讀取合約信息
估算交易的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翻譯&校對:閔敏&阿劍
文章系金色財經專欄作者牛七的區塊鏈分析記供稿,發表言論僅代表其個人觀點,僅供學習交流!金色盤面不會主動提供任何交易指導,亦不會收取任何費用指導交易,請讀者仔細甄別,謹防上當.
1900/1/1 0:00:00美國財政部長提名人、前美聯儲主席珍妮特·耶倫周四表示,加密貨幣和數字資產可能“提高金融體系的效率”.
1900/1/1 0:00:00要點: 最新報告顯示,自去年12月以來,所有交易所交易產品的管理資產增長了95%;灰度比特幣信托占據了資產管理規模的大部分;報告稱,這是因為ETP變得越來越容易獲得,且機構投資者也希望參與其中.
1900/1/1 0:00:00二次方融資到底是什么?它是怎么擴大人們對公共物品的融資貢獻的呢?公共物品又是什么?您將在本文找到這些問題的答案.
1900/1/1 0:00:00經歷了兩周的招募「Polkadot開發者社區訓練營」——全球首個基于社區層面的Polkadot開發者訓練營,即將于1月25日正式開營!為了深度挖掘Polkadot開發者價值.
1900/1/1 0:00:001月16-17日,巴比特DeFi投資實戰班·杭州專場在中國未來區塊鏈創新中心開班授課,2天時間里,來自全國各地的30余位學員接受了高密度的知識沖刷.
1900/1/1 0:00:00