91欧美超碰AV自拍|国产成年人性爱视频免费看|亚洲 日韩 欧美一厂二区入|人人看人人爽人人操aV|丝袜美腿视频一区二区在线看|人人操人人爽人人爱|婷婷五月天超碰|97色色欧美亚州A√|另类A√无码精品一级av|欧美特级日韩特级

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

以太坊無狀態(tài)客戶端是什么

電子設(shè)計(jì) ? 來源:電子設(shè)計(jì) ? 作者:電子設(shè)計(jì) ? 2020-12-25 18:57 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

現(xiàn)在有一個(gè)協(xié)議轉(zhuǎn)換現(xiàn)象,從理論上來說,它可以轉(zhuǎn)換成很多其他不同的協(xié)議,從數(shù)學(xué)上來看,它就像如下情況。假設(shè)我們使用狀態(tài)轉(zhuǎn)移,STF(S, B) -> S’,其中S和S’是狀態(tài),B是區(qū)塊(或者說它是轉(zhuǎn)賬T),并且STF是狀態(tài)轉(zhuǎn)移函數(shù)。那么,我們可以轉(zhuǎn)換為:

S -> S的根狀態(tài)(也就是說,Merkle樹所包含S的32位)。B -> (B, W),其中W是一個(gè)“見證者”,Merkle樹的分支會(huì)提供所有數(shù)據(jù)的價(jià)值,可以執(zhí)行讓B進(jìn)入STF-> STF’,這可以作為狀態(tài)根部的輸入,以及區(qū)塊鏈上的見證者,使用見證者作為“數(shù)據(jù)庫”,任何時(shí)候區(qū)塊的執(zhí)行都需要閱讀任何賬戶,存儲(chǔ)秘鑰或者其他狀態(tài)數(shù)據(jù)【如果見證者沒有包含一些需要被請(qǐng)求的數(shù)據(jù)】,并且輸出新的狀態(tài)根部。

這就是,全節(jié)點(diǎn)只會(huì)存儲(chǔ)狀態(tài)根部,并且它會(huì)成為礦工的責(zé)任來打包這些Merkle樹的分支(見證者),以及區(qū)塊,還有全節(jié)點(diǎn)會(huì)下載以及驗(yàn)證這些擴(kuò)展的區(qū)塊。對(duì)于無狀態(tài)的全節(jié)點(diǎn)和常規(guī)的全節(jié)點(diǎn)來說,在網(wǎng)絡(luò)中共存,這都是有可能的;你需要獲得擁有區(qū)塊B的翻譯區(qū)塊,附上所需要的見證者,并且在無狀態(tài)節(jié)點(diǎn)存在的不同網(wǎng)絡(luò)協(xié)議上廣播(B, W);如果有礦工在這個(gè)無狀態(tài)網(wǎng)絡(luò)上挖出區(qū)塊,那么見證者可以很簡單地去除,同時(shí)區(qū)塊會(huì)在正常的網(wǎng)絡(luò)上進(jìn)行重新廣播。

假設(shè)真實(shí)協(xié)議中的見證者,最簡單的方法就是把它作為RLP編碼的對(duì)象,這會(huì)被客戶端解析為{sha3(x): x}關(guān)鍵價(jià)值圖譜;這個(gè)圖譜然后可以很簡單地嵌入到現(xiàn)在的以太坊中,作為“數(shù)據(jù)庫”布局。

將以上這個(gè)想法布局到以太坊上的局限在于,還是需要礦工成為存儲(chǔ)狀態(tài)的全節(jié)點(diǎn)。有人會(huì)假設(shè)這樣一個(gè)系統(tǒng),其中轉(zhuǎn)賬發(fā)出方需要存儲(chǔ)全狀態(tài)Trie(甚至只有和他們相關(guān)的部分),而且礦工也是無狀態(tài)的,但是問題在于以太坊的狀態(tài)存儲(chǔ)入口是動(dòng)態(tài)的。例如,你可以假設(shè)getcodesize(sha3(sha3(…sha3(x)…)) % 2**160)的合約形式,其中會(huì)有幾千個(gè)sha3’s。這就導(dǎo)致進(jìn)入的賬戶代碼只有在幾百萬gas燃料的計(jì)算消耗完成后,才可能知道。因此,轉(zhuǎn)賬發(fā)出者可以創(chuàng)造一個(gè)轉(zhuǎn)賬,其中包含新賬戶的見證者,進(jìn)行很多計(jì)算,然后最后嘗試進(jìn)入一個(gè)沒有見證者的賬戶。這就和DAO軟分叉漏洞一樣。

其中一個(gè)的解決方案,就是讓轉(zhuǎn)賬包含這些賬戶的靜態(tài)列表;例如EIP 648,但是需要精確數(shù)字,而不是一個(gè)范圍。但是就會(huì)產(chǎn)生一個(gè)問題:到時(shí)候,轉(zhuǎn)賬會(huì)通過網(wǎng)絡(luò),賬戶狀態(tài),進(jìn)行擴(kuò)散,從而因此正確的Merkle樹分支可以作為見證者,也許會(huì)和轉(zhuǎn)賬生成時(shí)的正確數(shù)據(jù)不同。為了解決這個(gè)問題,我們把見證者放在轉(zhuǎn)賬中的簽名數(shù)據(jù)之外,并且讓包含轉(zhuǎn)賬信息的礦工在有需要地時(shí)候,在轉(zhuǎn)賬前對(duì)見證者進(jìn)行調(diào)整。如果礦工擁有對(duì)所有創(chuàng)建出來的新狀態(tài)樹節(jié)點(diǎn),也就是說,在過去24小時(shí),他們已經(jīng)獲得必要的信息來更新過去24小時(shí)公開轉(zhuǎn)賬的Merkle樹分支。
這項(xiàng)設(shè)計(jì)有如下優(yōu)勢:

1.礦工和全節(jié)點(diǎn)再也不需要存儲(chǔ)任何狀態(tài)。這會(huì)讓“快速同步”變地非??欤赡苤恍枰獛酌耄?。

2 關(guān)于狀態(tài)存儲(chǔ)經(jīng)濟(jì)學(xué)的問題都會(huì)導(dǎo)致例如租賃的設(shè)計(jì),并且甚至目前復(fù)雜的SSTORE支出/回款架構(gòu)就會(huì)消失,而且區(qū)塊鏈經(jīng)濟(jì)學(xué)能夠只專注于價(jià)格帶寬和計(jì)算,這會(huì)是更加容易的問題。

3. Disk IO對(duì)于全節(jié)點(diǎn)和礦工來說,就不會(huì)是個(gè)問題。Disk IO是以太坊上主要的DoS攻擊來源,而且甚至現(xiàn)在它好像是最容易發(fā)生的DoS因素。

4. 對(duì)指定帳戶列表的轉(zhuǎn)賬要求附帶地增加了高度的可并行性;這在很多方面是EIP 648的高配版本。

5. 對(duì)于狀態(tài)存儲(chǔ)的客戶端,賬戶列表讓客戶端能夠從disk預(yù)取存儲(chǔ)數(shù)據(jù),也許是并行的,大概率降低了DoS攻擊的漏洞。

6. 在分片區(qū)塊鏈中,通過在分片中對(duì)客戶端進(jìn)行調(diào)整,從而增加安全性;客戶端分片調(diào)整地越快,在拜占庭容錯(cuò)模型中,這個(gè)架構(gòu)就更加安全。但是,在狀態(tài)存儲(chǔ)的客戶端模型中,被洗牌的客戶端就會(huì)下載新分片中的全部狀態(tài)。在無狀態(tài)的客戶端中,這部分成本為零,這就讓客戶端可以在它們創(chuàng)建的每個(gè)區(qū)塊間進(jìn)行調(diào)整。

但是這帶來一個(gè)問題:誰存儲(chǔ)了這個(gè)狀態(tài)?以太坊的關(guān)鍵優(yōu)勢就是這個(gè)平臺(tái)很容易使用,并且用戶不需要關(guān)心存儲(chǔ)私有狀態(tài)這類細(xì)節(jié)。因此,為了這類框架能夠很好地完成,我們需要復(fù)制類似的用戶經(jīng)驗(yàn)。這是一個(gè)關(guān)于如何做到這一點(diǎn)的混合建議:

1.任何創(chuàng)造出來的新的狀態(tài)樹對(duì)象都會(huì)默認(rèn)被全節(jié)點(diǎn)保存3個(gè)月。這大約有2.5GB的存儲(chǔ)空間,而且這就好像“福利儲(chǔ)存”,這是基于自愿地基礎(chǔ)上由網(wǎng)絡(luò)提供。我們知道這個(gè)層次的服務(wù)當(dāng)然能夠基于自愿的基礎(chǔ)來提供,因?yàn)槟壳暗妮p節(jié)點(diǎn)結(jié)構(gòu)已經(jīng)是基于利他主義了。在3個(gè)月后,客戶端可以隨機(jī)地忘記,以至于例如一個(gè)12個(gè)月前接觸到的狀態(tài)樹對(duì)象,還會(huì)被25%的節(jié)點(diǎn)存儲(chǔ),而且60個(gè)月之前的對(duì)象還被5%的節(jié)點(diǎn)存儲(chǔ)??蛻舳四軌驀L試使用常規(guī)的輕節(jié)點(diǎn)協(xié)議,來調(diào)用這些對(duì)象。

2.希望確保特定數(shù)據(jù)段的可用性客戶端可以在狀態(tài)信道中進(jìn)行支付??蛻舳丝梢栽O(shè)置支付節(jié)點(diǎn)的通道,而且在“我放棄0.0001美元,并且默認(rèn)這筆支付會(huì)永遠(yuǎn)丟失。但是,如果你之后給某個(gè)對(duì)象提供哈希H,然后我簽名,之后這個(gè)0.0001美元會(huì)到你手上”這種模式下進(jìn)行有條件支付。這將標(biāo)志著一個(gè)可信的承諾:可能愿意為未來的對(duì)象解鎖那些資金,檔案節(jié)點(diǎn)可以進(jìn)入數(shù)以百萬計(jì)的這樣的安排,等待數(shù)據(jù)請(qǐng)求出現(xiàn),并成為收入流。

3.我們期望DAPP開發(fā)人員能夠讓他們的用戶來隨機(jī)存儲(chǔ)一部分的存儲(chǔ)秘鑰,在瀏覽器本地存儲(chǔ)中存儲(chǔ)與它們的DAPP相關(guān)的部分存儲(chǔ)密鑰。這甚至可以故意在Web3API中很容易做到。

事實(shí)上,我們希望能夠知道“檔案節(jié)點(diǎn)”的數(shù)量,可以永遠(yuǎn)存儲(chǔ)任何事物,并且持續(xù)足夠高來服務(wù)網(wǎng)絡(luò),直到在分片引入之后,整個(gè)狀態(tài)大小超過 1-10兆字節(jié),所以以上所說的可能甚至都不需要。

審核編輯:符乾江

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 智能計(jì)算
    +關(guān)注

    關(guān)注

    0

    文章

    199

    瀏覽量

    17075
  • 以太坊
    +關(guān)注

    關(guān)注

    14

    文章

    1838

    瀏覽量

    33381
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    EtherCAT FOE工作原理揭秘:客戶端-服務(wù)器模型如何運(yùn)轉(zhuǎn)?

    上期我們聊了EtherCATFOE的五大應(yīng)用場景,本期深入解析其底層工作機(jī)制。FOE究竟是如何實(shí)現(xiàn)文件傳輸?shù)??答案藏?b class='flag-5'>客戶端-服務(wù)器模型中。核心架構(gòu):一客戶端多服務(wù)器在EtherCAT網(wǎng)絡(luò)中,F(xiàn)OE
    的頭像 發(fā)表于 03-02 11:50 ?76次閱讀
    EtherCAT FOE工作原理揭秘:<b class='flag-5'>客戶端</b>-服務(wù)器模型如何運(yùn)轉(zhuǎn)?

    agile_ftp傳輸文件時(shí)客戶端報(bào)錯(cuò)誤怎么解決?

    ]客戶端使用的filezilla [size=21.3333px] [size=21.3333px]現(xiàn)象: [size=21.3333px]filezilla客戶端可以正常上傳文件,但傳輸完畢時(shí)客戶端會(huì)報(bào)
    發(fā)表于 11-05 10:49

    libmodbus庫問題:TCP模式下客戶端超時(shí)斷開后無法再次重連怎么解決?

    情況1 :用libmodbus的TCP demo,發(fā)現(xiàn)用客戶端軟件連接收發(fā)如果超時(shí)后在啟動(dòng)連接就無法連接上libmodbus服務(wù)器了,聲明:客戶端此時(shí)不會(huì)主動(dòng)斷開連接。 情況2:客戶端用短連接
    發(fā)表于 10-14 08:17

    rt-thread下如何實(shí)現(xiàn)SLAAC(無狀態(tài)地址自動(dòng)分配)?

    大佬們,本菜鳥有一些網(wǎng)絡(luò)上的問題需要幫助: RT-Thread 上如何實(shí)現(xiàn) SLAAC(無狀態(tài)地址自動(dòng)分配),給連接到我的板子的設(shè)備分配 IPv6 地址; RT-Thread 如何發(fā)送以太網(wǎng)報(bào)文,要求從報(bào)文頭開始都是我自己組,用于發(fā)送 HPGP 報(bào)文。
    發(fā)表于 09-22 08:05

    OrangePi Zero 3,輕量級(jí)客戶端的完美選擇

    千兆以太網(wǎng)端口用于充電的USB-C接口我很喜歡在較小的單板計(jì)算機(jī)(SBC)上看到以太網(wǎng)端口,因?yàn)檫@使它們作為瘦客戶端更有用,而且對(duì)于這種尺寸的單板計(jì)算機(jī)來說,充裕的
    的頭像 發(fā)表于 09-12 13:44 ?1247次閱讀
    OrangePi Zero 3,輕量級(jí)<b class='flag-5'>客戶端</b>的完美選擇

    SOLIDWORKS PDM Professional安裝部署指南:從服務(wù)器到客戶端的詳細(xì)步驟

    一份詳盡的SOLIDWORKS PDM Professional安裝指南,面向IT管理員,涵蓋從SQL Server配置、服務(wù)器安裝到客戶端設(shè)置的全過程,確保您高效、正確地完成PDM系統(tǒng)部署
    的頭像 發(fā)表于 09-11 17:37 ?1587次閱讀

    Python modbus-tk如何獲得客戶端信息?

    Python modbus-tk如何獲得客戶端信息
    發(fā)表于 08-07 06:01

    請(qǐng)問IG502網(wǎng)關(guān)如何配置open vpn客戶端?

    網(wǎng)上找的教程配置open vpn,服務(wù)端正常,小圖標(biāo)已經(jīng)變綠。IG502網(wǎng)關(guān)做客戶端的話需要怎么配置?需要注意哪里?
    發(fā)表于 08-05 07:59

    是否可以將客戶端控件與CYW920706WCDEVAL一起使用?

    是否可以將客戶端控件與CYW920706WCDEVAL一起使用? 我想用它來發(fā)現(xiàn)藍(lán)牙 BR/EDR,然后將其與其他設(shè)備配對(duì)。 有客戶端控制的下載鏈接或文檔嗎? 另外,你有 AIROC Connect 藍(lán)牙應(yīng)用程序的文檔嗎?
    發(fā)表于 07-04 07:50

    Modbus TCP連接多個(gè)客戶端解決方法-深圳市振鑫通信科技

    ZP-MBS008多主站模塊是實(shí)現(xiàn)Modbus-TCP連接多個(gè)客戶端或者服務(wù)器通訊設(shè)備
    的頭像 發(fā)表于 06-25 11:07 ?1718次閱讀
    Modbus TCP連接多個(gè)<b class='flag-5'>客戶端</b>解決方法-深圳市振鑫通信科技

    請(qǐng)問Phy DLE Max TX Octets 由客戶端還是服務(wù)器控制?

    Phy DLE Max TX Octets 由客戶端還是服務(wù)器控制?
    發(fā)表于 06-25 08:28

    客戶端解決方案:樹莓派電腦助力企業(yè)實(shí)現(xiàn)碳中和目標(biāo)!

    Losingthewires通過幫助企業(yè)轉(zhuǎn)向RaspberryPi管理的瘦客戶端,減少對(duì)臺(tái)式電腦的依賴,使商業(yè)世界更加可持續(xù),并助力企業(yè)實(shí)現(xiàn)碳中和目標(biāo)
    的頭像 發(fā)表于 06-22 20:33 ?654次閱讀
    瘦<b class='flag-5'>客戶端</b>解決方案:樹莓派電腦助力企業(yè)實(shí)現(xiàn)碳中和目標(biāo)!

    MKW45B41Z客戶端無法從服務(wù)器獲取服務(wù)是為什么?

    。MKW45B41Z (自定義板) 充當(dāng)中央設(shè)備客戶端角色。MKW45 客戶端掃描外圍設(shè)備(NRF 連接)設(shè)備并連接到外圍設(shè)備(NRF 連接)設(shè)備。連接 MKW45(自定義板卡)后,客戶端無法從服務(wù)器
    發(fā)表于 03-28 07:40

    如何構(gòu)建MCP客戶端

    Anthropic開源了一套MCP協(xié)議,它為連接AI系統(tǒng)與數(shù)據(jù)源提供了一個(gè)通用的、開放的標(biāo)準(zhǔn),用單一協(xié)議取代了碎片化的集成方式。本文教你從零打造一個(gè)MCP客戶端。
    的頭像 發(fā)表于 03-20 09:32 ?2711次閱讀
    如何構(gòu)建MCP<b class='flag-5'>客戶端</b>

    請(qǐng)問STM32WB55客戶端應(yīng)用接收的特征長度為什么更改無效呢?

    STM32WB55客戶端應(yīng)用接收的特征長度為什么更改無效呢?
    發(fā)表于 03-10 06:18