以太坊交易所 以太坊交易所
Ctrl+D 以太坊交易所
ads
首頁 > 區塊鏈 > Info

為以太坊引入 KZG 承諾:工程師視角(上)_VALUE:ALU

Author:

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

免責聲明?:本文僅僅是匯集、鏈接了許多已經公開的成果,對應的榮譽應歸屬于相應的作者/開發者。

P.S.?:特別感謝EthereumR&Ddiscord頻道幫助我理解KZG10承諾的某些方面。此外,還要感謝?@vbuterin幫忙審校本文。

PPS?:本文是出于lodestar團隊的利益而撰寫的;lodestar是一個很棒的ETHPoS客戶端,基于typescript,可以讓以太坊的服務?無處不在,也開啟了作者對以太坊生態和創新的理解。

我希望本文也能對全世界的其他開發者/技術人員有所幫助。本文遵循CC0自由創作公約,作者已放棄所有權利。

動機

作為一個有益的指南,幫助讀者熟悉、總結以太坊背景下?KZG10承諾的提議用法,并提供深入理解的指南。

本文的目的更多是總結,而非嚴謹,不過,您可以點擊文中所附的鏈接,它們會有更詳細的解釋。

基礎原理

注-1:哈希值就是一個對被哈希的原像的承諾,用于檢驗被哈希的數據的完整性。

舉個例子,假設?h1=H(t1,t2,t3..),然后把h1交給驗證者,然后給出一個偽造的區塊?(t1,t2',t3...),對方快速計算這個偽造區塊的哈希值之后,發現兩者對不上,就可以合理地拒絕你的偽造區塊。

ApeCoin新提案擬為以太坊社區提供100萬美元捐贈:4月16日消息,ApeCoin社區發起新提案AIP-230,旨在為以太坊社區提供100萬美元捐贈,其中包括向ETH Global捐贈30萬美元,以及向11場ApeCoin黑客松和至少5項公益活動贊助70萬美元。[2023/4/16 14:07:00]

類似的,一棵默克爾樹的根節點,就是對按特定索引組織起來的所有葉子節點的承諾。或者簡單來說,是對?indexes=>values的映射的承諾。

而這里的“證明”就是一個葉子的?默克爾分支?以及?兄弟哈希值,憑借這些數據,可以逐級向上哈希,并通過最終的哈希值是否與根節點一致來判斷該葉子是否與這棵默克爾樹一致。

可看看這里的介紹?:)。

注-2:數據映射與一個多項式的對應關系

indexes=>values?這樣的數據映射可以表示為一個多項式?f(x),并且?f(index)=value。“f(index)=value”通常被稱為?求值形式,而“f(x)=a0+a1.x+a2.x^2...”則是其?系數形式。直觀來說,我們其實是根據映射中所有的?(index,value)?點,擬合出了一個多項式。

WBTC成為以太坊鏈上第六大代幣:根據官方網站的數據,目前WBTC的市值目前已超過15.8億美元。這使得WBTC成為以太坊鏈上市值第六大代幣,僅次于USDT、CRO、USDC、LINK和BNB。[2020/10/30]

為了簡便計算,并確保多項式與數據映射的一一匹配,我們不使用索引值來作為f(x)的x,用的是?w^index,也就是?f(w^index)=value,其中w是d次單位根,而d是該多項式的次數。因此,我們可以使用快速傅立葉變換來實現高效的多項式計算,比如乘法和除法,在求值形式下其計算復雜度會是?O(d),而且可以在?O(d*log(d))?的復雜度內轉化回系數形式。所以保持?d?數值較小還是很有好處的。

注-2.1:以太坊的狀態是一個從地址到賬戶狀態的映射。

開發者為以太坊開源節省Gas費用的聚合工具GasSaver:開發者EmilianoBonassi發布為以太坊交易節省Gas的智能合約套件GasSaver。通過接入GasSaver,開發者可以調用1inch開發的Chi或者GasToken2的代幣,之后交易中的部分Gas就可以使用這兩種代幣進行支付,節省整體Gas消耗。[2020/8/10]

背景知識

以太坊當前使用默克爾樹作為EVM數據的承諾。此種承諾方式可以:

逐個區塊地插入/更新數據,以增量的方式產生新的根哈希

驗證者可以逐個區塊地校驗和證明

前綴樹結構在這里提供了這種逐塊更新的特性。

給定一個?d?叉的、有?N?個葉子的前綴樹,任意更改一個葉子節點,都需要更新?O(log-d(N))?個節點以計算反映新狀態的新根值;而這需要額外的?(d-1)*O(log-d(N))?個兄弟節點哈希值/承諾來用作時間和空間的見證數據。一個區塊可視為一個需要更改?m?個隨機葉子的批量更新,且?m<<N。因為預計只有一小部分的節點可以共享witness和計算,所以,每次更新的?Order不會有太大改變。

V神:不認為以太坊2.0第0階段2021年才能上線:金色財經報道,據此前消息,以太坊2.0研究人員Justin Drake表示以太坊2.02第0階段可能在2021年上線。對此,V神在發給Drake的信息中表示:“我個人非常不同意這一點,并且無論準備程度如何,我都希望顯著地早于該日期啟動第0階段。”對此,V神解釋稱,eth1從第一個多客戶端測試網到正式啟動只花了4個月的時間,因此當eth2測試網Altona啟動時,他認為從7月初開始就進入了四個月的倒計時。eth2第0階段在某種程度上比eth1更簡單,但在某些方面也更復雜。因此,總的來說,V神表示沒有理由認為eth2第0階段的發布會比eth1花費更多的時間。[2020/7/11]

在下列情況下,問題還會變得更加嚴重:

部分采用快速同步的協議,比如?beamsync,會下載并快速驗證區塊頭來追上最新的主鏈頂端并參與網絡的共識,注意,它不會先行構建好完整的狀態再參與共識,而是通過獲取錯過的/未加載的狀態的見證數據,來逐步構建出完整的狀態

為?輕節點?服務的時候,他們只關心自己,只想獲得區塊鏈狀態的特定部分

網絡走向完全無狀態時,所有的事務和合約操作,都要附帶相關的見證數據,來證明數據輸入和輸出的正確性

ZBTC公告:食安幣升級為以太坊代幣:ZBTC公告稱,食安幣(FSC)升級為以太坊代幣(NFSC)合約地址為:0xf3871f565a6a216fbe0ea3cf806ab15a32830c1c,請各用戶充幣提幣的時候注意。[2018/6/20]

在驗證者會被混洗到不同分片的區塊鏈分片模型中,要讓驗證者每到一個分片就構建完整狀態是不現實的

代碼默克爾化,訪問代碼時需要附帶這些代碼塊的見證數據

在狀態保質期協議中,訪問過期的賬戶需要重新附帶狀態見證數據,以便重建該賬戶的狀態

在無狀態以太坊項目的一個實驗中,出現了?1MB?的區塊證據,在發生攻擊的時候還會膨脹好幾倍。

其中一種解決辦法是轉為使用“二進制默克爾樹”,也就是把?d?降下來,這樣雖然樹的深度會增加,但仍然是?O(log(N))?的規模。

為什么要使用KZG10承諾?

對于要放在區塊頭內承諾數據的承諾方案來說,以下特點是理想屬性:

證據的數據量較小,可以塞進區塊頭里,且仍具有很強的安全保證

易于證明某個承諾是使用分組化數據的一個子集生成出來的

足夠小,最好證據的數據量是恒定的

為了跟蹤數據,承諾應當易于以增量的形式變更

基于KZG10承諾的方案就是大家一番搜尋的結果。

譯者注:可以看到,作者有三個?

什么是KZG10承諾?

KZG10承諾可以視為另一種哈希方案,只不過它哈希的不是“字節”,而是多項式。

實際上,它就是?計算?多項式?f(x)?在秘密的定點?s?上的值,只不過它們都是表示在一條橢圓曲線上的,也即?=f()。這需要一個受信任的啟動設置,來生成、、…?,而?d?就是多項式的最大階數。

這里的??表示點t處的橢圓曲線值,也就是?t,是橢圓曲線加法群的生成點相加t次。橢圓曲線上的所有計算都是對Fp求模,Fp給曲線施加了一定的范圍。

注3.0:在?indexes=>values?的映射中,所有的值都要表示為一條橢圓曲線上的元素,即,以便計算承諾。這就使得value的大小有了限制。在BLS曲線上,大概在31~32字節之間。為了簡便,value的大小就限制在31字節,任意更大的值都要分塊化,并用其索引值來恰當地表示。

注3.1:可以被視為t的哈希值,因為從找回t是個離散對數問題,對于安全的曲線來說,是很難做到的。

注3.2:s是一個秘密的數值,永遠不應泄漏給任何人/所有人,但橢圓曲線點?,?…?及其在另一條橢圓曲線上的值?'?則應生成并公開出來,讓所有人知道。這就是啟動設置要做的事。

這些?系統參數?定義了整個系統的安全性,因為?s?暴露會使得攻擊者可以構建任意內容的?證據。因此,一個有N個參與者共同參與的啟動設置儀式中,他們要通過協議把本地的s結合起來,這樣只要有1個參與者是誠實的、在參與之后就銷毀掉了自己提供的s,這個系統就會是安全的。即,信任模型是1/N模型,N越高,風險就越低。

注3-3:?是一個線性的操作,即+=,而且?a=。

如果上所述,我們將數據映射表示為?f(w^index)=value,即一個多項式的求值形式,也可說,我們用這些?(w^index,value)?點擬合出了一條曲線。

所以,一個多項式f(x)的KZG10承諾c(f)?是一個橢圓曲線點?f(),這個點可以靠在f(x)的展開式中插入?,?…計算得出。

注3-4:f(s)是無法計算的,因為s是個秘密值。但是?C(f)==f()?是可以計算的。

注3-5:f(x)的承諾?C(f)=?也是一個線性的運算符,即,C(f+g)=C(f)+C(g)。

Rollup/聚合器?可以使用這一屬性來更新承諾。在求值形式下,更新一個求值點將導致f(x)完全改變,但因為有這個屬性,其承諾c(f)仍然是易于更新的。

Tags:以太坊VALUEVALALU以太坊幣是哪個國家的幣valuetokenAvalanche Hillsvalue幣前景

區塊鏈
為以太坊引入 KZG 承諾:工程師視角(下)_以太坊:DEX

干貨|為以太坊引入KZG承諾:工程師視角什么是KZG10?承諾?注3.6:如果啟動設置所計算的?,…?只計算到了指數d,這一組值是不能用來生成任何階數大于d的多項式的承諾的。反之亦然.

1900/1/1 0:00:00
加密貨幣投資公司:擁有可組合性 就擁有一切_DEF:DEFI

加密貨幣投資公司ScalarCapital的聯合創始人LindaXie認為智能合約的可組合性帶來了加密世界的涌現性創新.

1900/1/1 0:00:00
花旗:中國深度推進研究和試點DCEP 成為CBDC全球領導者_OIN:KAS

花旗:元宇宙相關經濟可能高達13萬億美元:金色財經報道,花旗(Citi)的一份報告稱,元宇宙可能還處于初級階段,但它可能代表著高達13萬億美元的收入機會,不僅對關鍵的科技公司.

1900/1/1 0:00:00
聯合國發文:加密貨幣是可持續解決方案還是氣候災難?_區塊鏈:區塊鏈存證證件

最近這段時間,媒體廣泛報道了比特幣等加密貨幣會對環境產生負面影響,高波動性也令人感到擔憂。盡管如此,聯合國認為,作為加密貨幣背后的技術,區塊鏈可能對應對氣候危機大有裨益,甚至有助于實現更可持續的.

1900/1/1 0:00:00
經濟日報:加快完善數字人民幣生態系統_區塊鏈:數字人民幣穩定幣最新消息

目前,數字人民幣正在全國“10+1”地區及場景進行測試。與形形色色的虛擬貨幣相比,數字人民幣有何不同?接下來,要如何進一步完善數字人民幣生態系統?“以比特幣、天秤幣為代表,目前全球虛擬貨幣的數量.

1900/1/1 0:00:00
羅賓漢投資會議2021:大咖們如何看加密貨幣的未來_區塊鏈:Paradise Defi

本文最初發布于BlockTempo,作者JamesChiu。避險基金大佬瓊斯創辦的羅賓漢基金會和最大投行摩根大通于前日舉行了《RobinHoodInvestmentConference2021》.

1900/1/1 0:00:00
ads