0
本文作者: AI研習(xí)社-譯站 | 2018-08-13 14:04 |
雷鋒網(wǎng)按:本文為AI研習(xí)社編譯的技術(shù)博客,原標(biāo)題 A Primer on Ethereum Blockchain Light Clients,作者為 zk Capital 。
翻譯 | 高敏 校對 | 余杭 整理 | MY
許多使用點對點協(xié)議且基于區(qū)塊鏈的項目在性能和吞吐量上夸大其辭。在研發(fā)階段,這些項目已經(jīng)出現(xiàn)了一些創(chuàng)新,但是一旦這些協(xié)議運行時,它們大多對經(jīng)常遇到的挑戰(zhàn)難以作出解釋。
網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)
假設(shè)大多數(shù)人在延遲和計算量之間的某個置信區(qū)間上網(wǎng)是很容易的,但是他們忽略了必須借助于區(qū)塊鏈上的節(jié)點進(jìn)行交互。對大多數(shù)用戶而言,不幸的是,運行一個全節(jié)點不僅速度慢,而且價格昂貴讓人望而卻步,因此大多數(shù)用戶選擇輕節(jié)點,因為它們不僅背負(fù)著全節(jié)點所擁有的安全性使命,對資源沒有額外的需求。
以太坊輕客戶端模式允許像樹莓派一樣的輕量型設(shè)備加入網(wǎng)絡(luò),當(dāng)區(qū)塊頭顯示時可以將它們下載,并且如用戶所要求的那樣按需驗證某幾種狀態(tài)。在以太坊中,這些檔案性的全節(jié)點擁有的客戶端很容易使得網(wǎng)絡(luò)飽和。與所謂的 Merkle Tree 相比,樹莓派可以更快地鎖定這些節(jié)點。
你可以在樹莓派上安裝一個輕型客戶端!?
密碼經(jīng)濟(jì)作為運行全節(jié)點的動機已遠(yuǎn)遠(yuǎn)不夠,這是因為資源成本效益在平衡分布式網(wǎng)絡(luò)過程中遇到了瓶頸。對于輕型節(jié)點,網(wǎng)絡(luò)將擁有怎樣的完全平衡是難以預(yù)測的。關(guān)于怎樣平衡這些動機以及如何使得用戶更容易證明運行全節(jié)點是正確的這些話題,早已被討論過多次。
對輕客戶端的介紹:以太坊中的關(guān)鍵角色
輕型客戶端背后的核心思想是它能夠獲取用戶所關(guān)切的狀態(tài)部分。它假設(shè)有一個誠信模型,在這個模型中,礦工們都正確遵循以太坊的規(guī)則,并且系統(tǒng)中至少有一個完全節(jié)點是完全誠實的。
將同步模式標(biāo)志設(shè)置為輕型模式
他們的基本功能是當(dāng)塊標(biāo)題顯示在網(wǎng)絡(luò)中時可以將它們下載,而且對于正在被客戶端使用的狀態(tài)部分的 Merkle 證明而言,按需變化的問題需求也可以被下載。以太坊上的輕客戶端采用分布哈希表而不是本地存儲來記錄字典樹的節(jié)點。
考慮到 Ethereum 狀態(tài)通過大些的 Merkle 樹來顯示,從 Merkle 的樹根出發(fā),沿著樹中一個分支的一條節(jié)點路徑,可以很輕易地將驗證信息的完整性作為輕量級的證明。這最終依賴于對所提供的 Merkle 樹根正確性的信任。
輕客戶端信息包括但不局限于查詢賬戶余額、驗證確認(rèn)事務(wù)、檢查部署在網(wǎng)絡(luò)上的某份合同的事件日志等其他信息。
通過 Merkle 樹的證明和驗證,所有的這些可以被歸結(jié)為次線性復(fù)雜度。當(dāng)無法獲取來自區(qū)塊鏈的數(shù)據(jù)時,或無法檢查出何時驗證狀態(tài)交易指數(shù)時,客戶端可以在點對點網(wǎng)絡(luò)中向其他參與者發(fā)出警告。
當(dāng)處于輕客戶端模式下時,以太坊客戶端會將基本上不同的配置和協(xié)議經(jīng)理具體化。當(dāng)以太坊啟動一個輕客戶端時究竟發(fā)生了什么,對此感興趣的用戶可以參考我下面的問題。
潛在的共識機制
目前的輕客戶端協(xié)議假定通過全節(jié)點在主鏈上開展工作共識證明。在工作量證明過程中,我們可以借助于一個數(shù)學(xué)函數(shù)來驗證區(qū)塊頭部的有效性。也就是說,這個算法很難計算區(qū)塊頭部并輸出,但是卻很容易對其進(jìn)行驗證。
......
想要繼續(xù)閱讀,請移步至我們的AI研習(xí)社社區(qū):https://club.leiphone.com/page/TextTranslation/706
更多精彩內(nèi)容盡在 AI 研習(xí)社。雷鋒網(wǎng)雷鋒網(wǎng)
不同領(lǐng)域包括計算機視覺,語音語義,區(qū)塊鏈,自動駕駛,數(shù)據(jù)挖掘,智能控制,編程語言等每日更新。
雷鋒網(wǎng)雷鋒
雷峰網(wǎng)原創(chuàng)文章,未經(jīng)授權(quán)禁止轉(zhuǎn)載。詳情見轉(zhuǎn)載須知。