比特幣交易所 比特幣交易所
Ctrl+D 比特幣交易所
ads

Vitalik Buterin:以太坊無狀態客戶端方案能如何改進?_ALI

Author:

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

給每個地址添加一個32個字節的「epoch前綴」,或可解決地址空間隨時間被指數級壓縮的問題。

原文標題:《另一個狀態友好的界地址方案》撰文:VitalikButerin,以太坊聯合創始人翻譯:ETH中文站

回顧:狀態大小管理技術

為了防止以太坊的狀態容量無止境地膨脹,我們需要用一些方法使舊狀態「失活」,這樣加入網絡的節點就不再需要存儲舊狀態了。即使大多數的客戶端都變成無狀態,似乎也可以合理預見,最終這個系統會擴容到網絡無法一直保證所有狀態都可用的地步。有兩個方法可以使舊狀態失活:

直接刪掉,然后可以把它移到另外的默克爾樹,這樣關心該狀態對象的人可以獲取相應的默克爾分支,在未來某個時候用它來激活該狀態。

Vitalik在Synthetix L2上質押了562枚SNX:瀏覽器信息顯示,Vitalik在昨日在Synthetix的Layer2上質押了562枚,價值9700美元的SNX。[2021/1/26 13:33:07]

不把對象移出樹結構;相反,只在樹的該位置標記「失活」,這樣節點就不會存儲它(且協議也不會要求它們這樣做)。通過發送一個提供默克爾證明(即見證數據)的事務來訪問該狀態,失活的對象就可以重新被訪問了。

方法(1)對應于「經典的存儲租金方案」,方法(2)對應于傳統「無狀態客戶端」的最簡單延伸——舊狀態可以被遺忘的模型。這兩種方法都允許關心特定狀態對象的個人追蹤默克爾分支,這樣隨后如果那些狀態對象失活了它們可以用來激活這些對象。然而,這兩種方法都是有明顯問題的。

動態 | Gravity將為難民推出自我主權數字身份平臺:據btcmanager消息,內羅畢區塊鏈初創企業Gravity為非洲難民推出證明自我主權數字身份的平臺,從而幫助難民獲得金融服務。據報道,該公司已經開始在肯尼亞卡庫馬的一個難民營部署其平臺,約有80,000名用戶。測試將在營地的三所學校舉行,允許Gravity跟蹤每日出勤率和學生的學習成績。該公司還將與非政府組織建立密切關系,以便能夠追蹤可能對難民營難民生活條件產生積極影響的其他數據和指標。[2018/12/2]

當要在某個已失效合約的同一個地址上再創建合約時,方法(1)會出現一些極端情況。那就是,如果一個合約在地址A上創建了,然后已經失效了,那么在地址A上創建這個合約的事務會被重新執行,這樣會在地址A上創建一個新對象,這會影響原始對象的激活。另一種情況是當在地址A上創建了一個對象,然后經歷失活、被激活、被修改(例如,發送合約上的資金到另一個賬戶)、再失活、再用第一次失活所在的默克爾分支激活。這違背了保留規則,且可能被用于鑄幣;需要增加額外的默克爾證明來證明一個合約還沒有被另一個特定狀態激活,而該狀態也嘗試被激活。

聲音 | BM 評價 Vitalik 新共識算法:是對非 BFT 終結性的正式描述:據 IMEOS 報道,Vitalik 近期在其博客上發布了一篇名為《一個99%容錯共識的指南》的文章,文章認為這個算法只需要 1% 的節點“誠實”。這意味著,從理論上講,攻擊者需要控制超過99% 的區塊鏈節點才能進行攻擊。因此不再有 51% 的攻擊。

EOS 社區成員詢問 BM 對這個文章的看法以及意見,BM 回復道:這篇文章沒有給出譬如什么時候開始實施的時間先,但可以安全地假設一下這個新算法將會在基于 POS 的共識生效后實施......所以相當于在宇宙熱寂之后實施......

“不過這個算法是關于 Steem 和 Bitshare 的非 BFT 終結性的正式描述,這就很有趣了。”[2018/8/16]

方法(2)遇到的是不同的問題。假設兩個相鄰的地址(也就是兩者間沒有對象)A1和A2都已失活。這樣,不僅A1和A2都不再可以訪問(除非有人存儲了默克爾分支),而且A1和A2之間的所有地址都不可以訪問了。也就是說,如果總共有N個地址,那么大約1/N的可用地址空間都不再可訪問了。當一半的地址都失活了,大約1/4的地址空間不再可訪問。隨著時間推移,會越來越難找到空間生成新的地址。而且由于新地址越來越集中在剩下的「可訪問」空間上,每N年可訪問空間減半的這種影響會呈指數增長。

Vitalik Buterin發布新的概念驗證:本周一以太坊設計者Vitalik Buterin發布了一個新的概念驗證,演示了如何將分片擴展解決方案“栓在”Ethereum主鏈上。并發推表示“分片即將來臨”。該演示遵循Ethereum聯合創始人最近推出的“最小分片協議”計劃,旨在顯著提高以太坊區塊鏈的事務吞吐量和可擴展性。[2018/5/1]

提議

我提議對方法(2)進行修改,可以解決以上的問題。正如很多方法(2)的提議實現方案所呈現的,賬戶有「活躍」與「失活」兩種狀態,失活賬戶是那些超過一年未被訪問過的賬戶。要訪問失活賬戶,你需要提供見證數據;當失活賬戶被訪問了,該賬戶會自動解除失活狀態(觸及任何賬戶都會重置它的一年失活期計算)。修改內容如下:

我們給每個地址添加一個32個字節的「epoch前綴」。例如,epoch前綴是9的地址是這樣:0x00000009de0b295669a9fd93d5f28d9ec85e40f4cb697bae,以00000009作為前綴。

默克爾路徑會直接依賴epoch的前綴而不是它的哈希值(因此merkle_path_key=addresshash(address)而不是現在在用的merkle_path_key=hash(address)。這確保了「沒用過的」地址空間是連續的。

除非地址的epoch前綴是小于或等于區塊鏈已運行的年數,否則地址不能被使用

會增加一個CREATE3操作碼,它會把epoch前綴作為一個參數,并在具有該epoch前綴的一個地址上創建一個合約。

推薦用戶和合約總是使用具有盡可能新的epoch前綴來創建賬戶,甚至設為默認設置,因為肯定會有具有最新epoch前綴的全狀態仍然是可以訪問的。為了還能保有「反事實地址(counterfactualaddresses)」,用舊epoch前綴來創建合約還是可能的。但是,對于想要創建反事實地址的用戶,如果長期不創建,他們就要負責為該賬戶存儲舊狀態的分支。

經過多年的運行,預計活躍狀態會由兩部分構成:(i)有最新epoch前綴的全部地址空間,(ii)與最近被活躍使用過的賬戶相對應的特定舊狀態

請注意,這個方案正常情況下擴展到合約上;事實上,主動遵循這個方案是符合合約自身運作的。因為在這個方案里,地址中代表存儲的部分以幾個字節為前綴,它們所代表的數字N指的是這些數據是在N年與這些地址產生關聯。這很適合用于存儲像代幣余額這樣的數據。

來源鏈接:ethresear.ch

免責聲明:作為區塊鏈信息平臺,本站所發布文章僅代表作者個人觀點,與鏈聞ChainNews立場無關。文章內的信息、意見等均僅供參考,并非作為或被視為實際投資建議。

以太坊

以太坊

開放的分布式區塊鏈應用平臺,通過其專屬加密貨幣Ether以太幣提供去中心化的虛擬機,處理點對點合約。允許任何人建立和使用通過區塊鏈技術運行的去中心化應用,沒有任何欺詐、審查、第三方監管。以太坊的概念首次在2013至2014年由維塔利克·布特林VitalikButerin受比特幣啟發后提出,旨在共同構建一個更全球化、更自由、更可靠的互聯網。以太坊EthereumETHERC20ERC-20ERC20ERC721ERC-721以太坊2.0以太坊2.0查看更多

Tags:VITPOC以太坊ALIData VitalPocket Network以太坊幣最新價格美元DALI

抹茶交易所
關于盤口數據異常進行交易數據恢復的公告_PAN

親愛的PandaFe熊貓用戶:由于昨日盤口數據異常脫離市場價格,平臺及時響應對系統進行臨時維護,并于2021年7月2日20:00(UTC8)完成維護,所有交易功能與充提幣業務均已恢復正常.

1900/1/1 0:00:00
小安論幣:炒幣者對投機的誤解_INB

股神巴菲特曾經說過:“要想在一生中獲得投資的成功,并不需要頂級的智商、超凡的商業頭腦或秘密的信息,而是需要一個穩妥的知識體系作為決策基礎,并且有能力控制自己的情緒,使其不會對這樣的體系造成侵蝕.

1900/1/1 0:00:00
拆除白馬門——從開放金融到開放藝術_RST

撰文:PAKALabs研究員MIDDLE.X;星球日報經授權轉載歷史劇《三國》中呈現了這樣一個故事:東漢末期,已經越制稱魏王的曹操,距離帝位,僅一步之遙.

1900/1/1 0:00:00
加密貨幣浪潮下,時代幣TC的頭礦財富價值_DEFI

數字時代,是“互聯網+”的時代,區塊鏈、大數據、AI人工智能等基礎技術打開了數字資產界的大門,隨著比特幣等區塊鏈資產價格的大幅飆升,普通投資者對區塊鏈,以及數字貨幣投資的興趣越來越大.

1900/1/1 0:00:00
DeFi 聚合器——捕獲價值本身便是價值所在_COIN

DeFi需要“聚合” 在DeFi這樣碎片化、模塊化的領域內,適當的“聚合”一定是一種剛需。商業的實質在創造需求、滿足需求、并擴大需求,DeFi的基礎協議和衍生協議正在不斷的創造和滿足需求,而聚合.

1900/1/1 0:00:00
Gate.io 今日智能量化收益排行,七日年化收益率最高達113.90%_GAT

Gate.io智能量化策略中心2020年9月上線以來,為廣大新手及專業用戶提供龐大的量化策略庫,目前已上線多種量化策略以及回測、一鍵跟單、排行榜等功能.

1900/1/1 0:00:00
ads