買比特幣 買比特幣
Ctrl+D 買比特幣
ads
首頁 > Gate.io > Info

以太坊:為什么需要「共識層ZK化」?_Consensus

Author:

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

摘要

從眾多公鏈展開競爭以來,到以太坊路線圖中的Danksharding,再到op/zk等二層解決方案,我們一直不間斷在討論區塊鏈的擴展性——大量用戶和資金進來了怎么辦?通過接下來一系列的文章,我想向大家展示一個未來的圖景,該圖景由數據的獲取、鏈下計算、鏈上驗證三部分構成。

TrustlessDataAccess+Off-chainComputation+On-chainVerification

“證明共識”是這個藍圖中重要的一部分。本文探討了在以太坊PoS的基礎上,用零知識證明共識的意義,包括:

1.對于EVM去中心化的重要性。

2.去中心化數據訪問對于web3擴容的重要性。

證明以太坊主網的全共識是一項復雜的任務,但是如果我們能夠實現共識層的zk化,將會在確保安全信任的基礎上助力以太坊的擴容,同時增強整個以太坊生態的穩健性,降低參與成本,讓更多人融入其中。

一、為什么證明共識層很重要?|Whydoesprovingconsensusmatter?

1.以太坊的?度|PerspectivefromEthereum

2.以太坊?態各層協議的?度|PerspectiveofProtocolStacksonEthereum

二、區塊鏈數據來?何處?不同數據源的信任假設|WhereisBlockchainData?TrustAssumptionsforDifferentDataSources

三、?零知識證明共識層之路|ThePathtoProveConsensusUsingZK

1.以太坊2.0中共識形成的核?步驟|KeyStepsinConsensusFormationinEthereum2.0

2.證明共識層的ZK技術棧|TechStackstoProveConsensus

3.終極?標:多樣性的Level1zkEVM|TheEndGame:DiversifiedLevel1zkEVM

四、未來展望|WhatistheFuture?

五、參考|Reference

一、為什么證明共識層很重要?|Whydoesprovingconsensusmatter?

利用zk來驗證以太坊L1的共識層在兩個大方向上有意義。首先,它可以彌補當前節點多樣性的缺陷,增強以太坊本身的去中心化和安全性。其次,它為以太坊生態各層協議面對更多用戶提供了可用性和安全性的基礎,包括跨鏈安全、無需信任的數據訪問、去中心化預言機、和擴容等方面。

美SEC主席以加密是“狂野西部”為由申請增加預算:金色財經報道,美國證券交易委員會(SEC)主席Gary Gensler在參議院撥款委員會上提議為其機構的數十億美元預算再增加數千萬美元的額外資金,他對立法者表示,SEC必須擴大規模,以保護投資者免受“充斥著違規行為”的加密行業的影響,希望將本聯邦財年該機構所有部門的資金從47億美元增加到51億美元。

他在講話中表示,加密貨幣市場作為“狂野西部”充斥著違規行為,投資者將辛苦賺來的資產置于高度投機性資產類別的風險之中,有了滿足我們使命規模的資金,我們可以成為美國公眾——投資者和發行人的更強有力的倡導者。

Gensler表示,額外資金將幫助該機構為其團隊增加170個職位,這可能使SEC的全職員工總數達到5,139名。[2023/7/20 11:05:42]

1.以太坊的角度|PerspectivefromEthereum

對于以太坊來說,要實現其去中心化和穩健性(robustness),它需要一個客戶端多樣性的環境。意味著更多的人參與其中,尤其是普通用戶,運行基于不同代碼環境的客戶端。然而,要求每個用戶都運行全節點是不現實的,因為這需要大量的資源,沒有幾個人能夠承擔至少16GB+RAM和FastSSDwith2+TB,而這些要求還在不斷增長。

目前的目標是實現輕節點(lightnode),既能提供與全節點相同的信任度,又能在內存、存儲和帶寬要求上具有更低的成本。然而,目前輕節點并不參與共識過程,或者說只受到部分的共識機制保護(SyncCommittee)。

這一目標在以太坊的路線圖中被稱為"TheVerge"。

"TheVerge"旨在彌合客戶端差距,關鍵步驟是如何實現去信任的輕節點,安全程度應等同于今天的全節點,填補“theclientgap”,從而讓更多人積極參與網絡的去中心化和穩健性。

https://www.ethernodes.org/network-types

https://clientdiversity.org/

2.以太坊生態各層協議的角度|PerspectiveofProtocolStacksonEthereum

從第一性原理出發,我們需要解決鏈上數據訪問與鏈下計算驗證的結合問題。

目前鏈上數據的使用相對初級,不夠充分。在很多情況下,協議調整所需的數據過于復雜,無法進行鏈上計算,而以去信任方式獲取數據的成本又過高,需要大量歷史數據訪問和頻繁的數字計算等。

SBF律師:SBF的巴哈馬訴訟可能需要數月或數年:金色財經報道,FTX創始人SBF的律師在周一提交的法律文件中表示,如果增加額外費用,針對FTX創始人SBF的欺詐訴訟可能會推遲數月或數年,可能會超過原定于10月舉行的審判日期。[2023/6/13 21:33:43]

對于個人用戶和項目來說,我們的理想情況是實現去中心化的、端到端的無需信任假設數據傳遞和讀寫,以此為基礎,面向未來更多的用戶,應實現盡量低的計算成本,兼顧安全性、可用性和經濟性。

具體包括以下幾個方面:

1.去中心化和無需信任的預言機(Oracle):目前的協議使用中心化預言機來避免直接在鏈上對大量歷史數據的訪問,增加了不必要的信任成本,并降低了可組合性。

2.數據和資產敏感相關協議的數據讀寫:例如,DeFi協議在運行過程中需要進行一些參數動態調整,但是否能夠無需信任地訪問歷史數據并進行更復雜的計算,如基于最近的市場波動調整AMM費用,設計鏈上衍生品交易價格模型和動態波動,引入機器學習方法進行資產管理,根據市場情況調整借貸利息等。

3.跨鏈安全:目前基于zk技術的輕節點方案在安全性(security)、資金效率(capitalefficiency)、狀態保留程度(statefulness)和傳遞信息多樣性方面都更優秀。當前Succinct的Telepathy跨鏈方案和Polehedra在LayerZero上面做的跨鏈方案,都是基于SyncCommittee做的輕節點區塊頭zk驗證。然而,SyncCommittee并非以太坊PoS共識層本身,存在一定的信任假設,未來還有余地可以做的更加完備。

目前,由于經濟成本、技術限制和用戶體驗等方面的考慮,開發者在利用鏈上數據時通常依賴于中心化的RPC服務器,例如Alchemy、Infura和Ankr等。

二、區塊鏈數據來自何處?不同數據源的信任假設|WhereisBlockchainData?TrustAssumptionsforDifferentDataSources

區塊鏈中的計算數據有兩種來源:鏈上數據(on-chaindata)和鏈下數據(off-chaindata)。對應鏈上和鏈下兩種去向,進行計算。比如前文提到的調整DeFi協議參數的需求。

DataAccess,computation,proofandverification

鏈上和鏈下數據的讀寫和計算有兩個顯著特點:

1.為了實現去中心化和安全,最好能夠驗證我們所獲取的數據,即“不要相信,要驗證(Don’tTrust,Verify)”。

硬件錢包Trezor通過Wasabi Wallet提供隱私交易功能:金色財經報道,加密貨幣硬件錢包 Trezor 通過 Wasabi Wallet 提供隱私交易功能CoinJoin,該功能于 2022 年推出,允許多個用戶將他們的比特幣輸入集中到一個交易中,并接收相同數量的比特幣輸出但地址不同,從而對比特幣交易進行混合。[2023/4/19 14:14:20]

2.往往涉及許多復雜和昂貴的計算過程。

如果沒有找到合適的技術解決方案,以上兩點便會影響區塊鏈的可用性。

我們可以通過一個簡單的例子來說明不同數據獲取方式。假設你想查看自己的賬戶余額,你會怎么做?

一種最安全的方式是自己運行一個全節點,檢查本地存儲的以太坊狀態,并從中獲取賬戶余額。

全節點Benchmark。同步模式(syncmode)和客戶端選擇會影響所需的空間要求。

然而,自己運行全節點的成本很高,還需要自己維護。為了省事,很多人可能會直接向中心化的節點運營商請求數據。雖然這樣做沒有什么問題,類似于Web2中的操作,而且我們也從未見過這些供應商有過任何惡意行為,但是這也意味著我們必須相信一個中心化的服務商,這增加了整體的安全假設。

為了解決這個問題,我們可以考慮兩個解決方案:一是降低運行節點的成本,二是尋找一種驗證第三方數據可信度的方法。

那不如就只存儲必要的數據。為了更高效地訪問數據,降低信任成本,并獨立驗證數據,一些機構開發了輕客戶端(lightclients),如Rust-basedHelio、Lodestar、Nimbus和基于JavaScript的Kevlar等。輕客戶端不存儲所有的區塊數據,而只下載和存儲區塊頭——一個區塊全部信息的“總結”。輕客戶端能夠獨立驗證接收到的數據信息,因此當從第三方數據提供商獲取數據后,你不再需要完全信任該提供商的數據。

https://medium.com/coinmonks/ethereum-data-transaction-trie-simplified-795483ff3929

輕節點的主要特點包括:

理想情況下,輕節點可以在手機或嵌入式設備上運行。

理想情況下,它們可以與全節點具有相同的功能和安全保障。

但是輕節點不參與共識過程,或者說只受到部分的共識機制保護,即同步委員會(SyncCommittee)。

數據:1,374枚WBTC從未知錢包轉移到GateIO:金色財經報道,Whale Alert監測數據顯示,1,374枚WBTC (價值約22,440,882美元) 從未知錢包轉移到GateIO。[2022/11/25 20:45:22]

SyncCommittee是輕節點的信任假設。

在TheMerge之前,從2020年12月開始,BeaconChain進行了一個名為Altair的硬分叉,其核心目的是為輕節點提供共識支持。和PoS全共識不同,組成這一組驗證者(512個)的是一個較小的數據集,相隔更長的時間段(256個epoch,約27小時)進行隨機抽取。

這就是為什么我們要驗證以太坊的全部共識層,以期迎來一個更加安全、可用性更強、擁有更多樣化協議、以及大規模采用的未來,目前來看最好的解決方案零知識(zero-knowledge)技術。

三、用零知識證明共識層之路|ThePathtoProveConsensusUsingZK

要構建一個無需信任假設的環境,必須解決輕節點可信度、去中心化數據訪問、和鏈下計算驗證這些問題,在這些方面零知識證明是目前最被認可的核心技術,其中涉及到但不限于zkEVM、zkWASM、其他zkVM、zkCo-processor等底層解決方案。

證明共識層是其中重要一環。

PoS算法非常復雜,以ZK方式實現它們需要大量的工程工作和架構考慮,我們先將其組件進行拆分。

1.以太坊2.0中共識形成的核心步驟|KeyStepsinConsensusFormationinEthereum2.0

驗證者(validator)相關算法

其中包括以下步驟

成為驗證者:驗證者候選人需向存款合約發送32ETH,并等待至少16小時至幾天或幾周的時間,以使信標鏈處理并激活成為正式驗證者。(可參考FAQ-Whydoesittakesolongforavalidatortobeactivated)

行使驗證職責:涉及隨機數和區塊證明算法。

退出驗證者角色:退出驗證者的方式可以是自愿退出或者因違規而被處罰(slashed)。驗證者可以隨時主動發起“退出”,每個epoch對于退出的驗證者數量有限制。如果有過多的驗證者同時嘗試退出,他們將被放入一個隊列中,在排到之前,他們仍然需要履行驗證職責。成功退出后,經過1/8個eek,驗證者將能夠提取質押資金。

隨機數相關算法

每個epoch包含32個區塊(slot),提前2個Epoch進行隨機分組,將所有驗證者分成32個委員會(committee),在當前epoch行使職責,分別對每個區塊的共識負責。

報告:基于比特幣閃電網絡的應用程序已增漲至超20個類別100多個應用:金色財經消息,根據Arcane Research的一份報告,比特幣相關開發人員一直在悄悄地構建更多應用程序。特別是比特幣閃電網絡已經開發了一個多元化的生態系統,其中包含至少20個類別100多個應用程序。應用類別主要包括支付、比特幣閃電網絡錢包、節點管理、播客和流媒體、支持閃電網絡的瀏覽器擴展程序等類別。[2022/8/8 12:08:32]

每個委員會中有兩種角色,一個提議者(Proposer),其余為區塊構建者(Builders),也被隨機選出。這樣將交易排序和區塊構建兩個過程分離開來(詳見proposer/builderseparation-PBS)。

區塊證明(BlockAttestation)和BLS簽名相關算法

簽名部分是共識層最核心的部分。

每個slot的驗證委員會給投票(使用BLS簽名),需要獲得2/3的通過率才能構建區塊。

在以太坊PoS共識層中,BLS簽名使用BLS12–381橢圓曲線,pairing-friendly,適合聚合所有簽名,減少證明時間和大小。

在工作量證明中,區塊可能會發生重組(re-org)。在合并之后,引入了執行層上的”最終化(finalized)區塊和安全頭(safehead)”的概念。要創建一個沖突的區塊(conflictingblock);攻擊者需要銷毀至少總質押以太幣的1/3;很大程度上,PoS比PoW更可靠。

https://blog.ethereum.org/2021/11/29/how-the-merge-impacts-app-layer

2023年6月底,《PuzzleVentures晚自習》中間介紹到了HyperOracle的zkPoS(用zk的方法去驗證以太坊全共識層)。詳情請見zkPoS:End-to-EndTrustless

其他:如弱主觀性檢查點(weaksubjectivitycheckpoints)

無需信任的PoS共識證明面臨的其中一個挑戰是若主觀性checkpoint的選擇,涉及到社會層面的共識(socialconsensusbasedonsocialinformation)。這些檢查點是回退限制(revertlimits),因為位于弱主觀性檢查點之前的區塊無法更改。詳見:https://ethereum.org/en/developers/docs/consensus-mechanisms/pos/weak-subjectivity/

檢查點(checkpoints)也是共識層zk化當中一個需要考慮的點。

2.證明共識層的ZK技術棧|TechStackstoProveConsensus

在證明共識層中,證明簽名或其他計算本身是非常昂貴的,但相較之下驗證零知識證明卻十分便宜。

在選擇使用零知識證明共識層的方法時,協議需要考慮以下因素:

你要證明什么?

證明之后的應用場景是什么?

如何提高證明的效率?

以HyperOracle為例,對于證明BLS簽名,選擇了Halo2,他們選擇了Halo2而不是SuccinctLabs使用的Circom,出于以下幾個原因:

Circom和Halo2都可以生成BLS簽名的零知識證明。

HyperOracle并不只是干zkPoS這一件事,其核心產品是可編程的鏈上零知識預言機(ProgrammableOnchainzkOracle)。其中直接面向用戶的有zkGraph、zkIndexing和zkAutomation,并且還利用zkWASM虛擬機去驗證鏈下計算。盡管Circom對于工程師來說更易上手,但兼容性較差,無法確保所有功能的邏輯都能使用

Circom-pairing會被編譯成為R1CS,與zkWASM和其他電路的Plonkish約束系統不兼容,而Halo2Pairing電路能夠非常容易地整合進zkWASM電路;相比之下,R1CS對于批處理證明(ProofBatching)也并不理想。

從效率的角度,Halo2-pairing生成的BLS電路更小,證明時長更短,對硬件要求更低,gasfee也更低。

https://mirror.xyz/hyperoracleblog.eth/lAE9erAz5eIlQZ346PG6tfh7Q6xy59bmA_kFNr-l6dE

用零知識來證明共識層的另一個關鍵點在于遞歸證明(recursiveproof)——即證明之證明(proofsofproofs),把之前發生的事情打包成一個證明。

如果沒有遞歸證明,最終會輸出O(blockheight)大小的證明,即每個區塊證明(blockattestation)和相對應的zkp。通過遞歸證明,除了初始狀態和最終狀態外,對于任意數量的區塊,我們只需要O(1)大小的證明。

VerifyProofNandStepN+1togetProofN+1,i.e.youknowN+1piecesofknowledge,insteadofverifyallNStepsseparately.

回到最初的目標,我們的解決方案應該針對有計算和內存限制的“輕客戶端”。即使每個證明可以在固定的時間內進行驗證,如果區塊和證明的數量累加,驗證時間將變得非常長。

3.終極目標:多樣性的Level1zkEVM|TheEndGame:DiversifiedLevel1zkEVM

以太坊的目標不僅僅是證明共識層,還希望通過zkEVM實現整個Layer1虛擬機的零知識化,并最終實現多樣化的zkEVM,以增強以太坊的去中心化和魯棒性(robustness)。

針對這些問題,以太坊當前的解決方案和路線圖如下:

“輕量化light”——更小的內存、存儲和帶寬要求

目前通過輕節點(lightnode)實現僅存儲和驗證區塊頭(blockheader)的方式。

未來的發展還需要在verkletree和statelessclients方面做進一步的努力,涉及改進主網數據結構。

“安全去信任trustless”——實現與全節點相同的最小信任(trust-minimization)

目前已經實現基礎的輕節點共識層,即同步委員會(SyncCommittees),但這只是一個過渡方案。

使用SNARK來驗證以太坊Layer1,包括驗證執行層的VerkleProof、驗證共識層、以及將整個虛擬機進行SNARK化。

Level1zkEVM用于實現整個以太坊Layer1虛擬機的零知識化,且實現zkEVM的多樣化。

可能的風險在理想情況下,當進入zk時代時,我們需要多種開源的zkEVM——不同的客戶端具有不同的zkEVM實現,每個客戶端在接受一個區塊之前會等待與其自身實現兼容的證明。

然而,多種證明系統可能會面臨一些問題,因為每種證明系統都需要一個點對點網絡,一個只支持某一種證明系統的客戶端只能等待相應類型的證明,才能被其驗證器(verifier)所識別。其中可能出現的兩個主要挑戰包括“延遲挑戰(latencychallenge)”和“數據低效(datainefficiency)”,前者主要源于生成證明很慢,在生成針對不同證明系統的證明時,有一段時間差留給作惡者創建臨時分叉;后者因為你要生成多種類型的zk證明,就得保存原始簽名,雖然理論上zkSNARK本身的優勢是可以刪除原始簽名等數據,這里就出現了一些矛盾需要優化和解決。

四、未來展望|WhatistheFuture?

要讓web3迎來更多用戶、提供更流暢的體驗、創造更高的可用性和保障應用的安全性,我們必須為去中心化數據訪問、鏈下計算、鏈上驗證做好基礎設施建設。

證明共識層是其中一個重要組成部分,除了以太坊PSE和前面提到的zkEVMlayer2之外,還有一些協議正在通過零知識證明共識來實現自己的應用端目標,包括HyperOracle(ProgrammablezkOracleNetwork)計劃使用零知識證明以太坊PoS的全部共識層來獲取數據;SuccinctLabs的Telepathy是一個輕節點橋(LightNodeBridge),通過驗證SyncCommittee共識,提交statevalidityproof來達到跨鏈通訊的比目的;Polyhedra原本也是輕節點橋,但現在也聲明利用devirgo實現了全節點全共識的zk證明。

除了跨鏈安全、去中心化預言機之外,這種鏈下計算+鏈上驗證的方式,也可能參與到樂觀rollup中fraudproof當中,與OPL2相互融合;或在基于意圖的架構(intent-basedarchitecture)中,針對更復雜的意圖結構提供鏈上證明等等。

這里我們談論的是不僅限于以太坊的鏈下生態系統(off-chainecosystemsurroundingEthereum),還涉及到以太坊以外的更廣闊市場。

Tags:以太坊BLSConsensus以太坊幣是什么幣BLS幣BLS價格Consensus幣是什么幣

Gate.io
NFT:下沉市場中的元宇宙:我們造了一個“虛擬貧民窟”?_NFT幣元宇宙平臺公司找幻霄

“web2.0的時候,我們追求資訊共享、跨越地域和種族的交流,web3.0的時候,我們發行貨幣,模擬娛樂,復制一個消費至死的地球.

1900/1/1 0:00:00
DAPP:IEO的墳和孫宇晨的腎_DAPDAPP價格

“幣圈很久沒有熱點了,市場又要進入凜冬了吧。”小張一大早就滿臉沉痛的向我說道。我慈愛的撫摸了下小張的頭,“乖,答應我別炒幣了好嗎?20多歲你就禿了,不知道的以為你創業了呢”.

1900/1/1 0:00:00
區塊鏈:全面了解智能合約的開發生命周期_區塊鏈存證怎么弄

重點提要:本文將介紹智能合約開發生命周期,以及開發和部署安全智能合約應采取的步驟。什么是區塊鏈中的智能合約?智能合約是區塊鏈技術的重大進步.

1900/1/1 0:00:00
區塊鏈:a16z:為什么說無狀態區塊鏈不可能存在_40億比特幣能提現嗎

隨著區塊鏈支持更多用戶和更頻繁的交易,驗證器為驗證交易而存儲的信息量(“狀態”)也在增長。例如,在比特幣中,狀態由一組未使用的交易輸出(utxo)組成.

1900/1/1 0:00:00
區塊鏈:去中心化金融(DeFi)讓金融不再武器化_40億比特幣能提現嗎

在兩千多年前春秋戰國時代,我們的祖先就想明白了一個大道理,記錄在《左傳》當中:國之大事,在祀與戎。對一個國家來說,真正算得上大事的就是祭祀活動和軍事行動.

1900/1/1 0:00:00
LSD:LSDfi Summer:什么是LSDfi以及LSDfi生態一覽_LSTLSD幣

近期隨著多個LSDfi協議的爆發,比如LybraFlnanceTVL及其代幣LBR一個月40倍的上漲表現,很多人都在說LSDfiSummer來了.

1900/1/1 0:00:00
ads