加密貨幣交易所 加密貨幣交易所
Ctrl+D 加密貨幣交易所
ads

「op/zk」rollup/mixers/MACI的批量處理存款-ODAILY_KAT:COM

Author:

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

引言

在一堆不同的項目中,我們需要允許用戶從EVM存入某種鏈下狀態,該狀態在鏈上表示為Merkle累加器。該Merkle樹根據有效性證明或欺詐證明+同步假設進行更新。

SNARK友好的哈希函數非常昂貴,因此有必要最小化它的成本。在optimisticrollups世界中,它并不那么昂貴,但每次存款的成本限制了它在某些場景下的應用,例如大規模遷移。

要從EVM存入Merkle樹,需要執行tree_depth哈希從而能夠包含一個葉子節點。甚至在一個區塊中有兩筆存款都需要tree_depth的哈希值。那么有必要將它們合并在一起,這樣它們只需要花費個哈希值。

這些存款為

在這里,我們提出了一種存儲批處理方法,即

在另一篇文章中,我們將這些優化應用于mixers和optimisticrollups。

之前的工作

MerkleMountainRanges專注于創建深度隨時間增長的Merkle樹。在這個使用案例中,我們需要一個恒定深度的樹,并且不能有可變數量的哈希值。在optimisticrollup中,這也不理想,因為隨著樹的深度的增長,需要更改放在鏈上的數據。

Celsius提交更新后的破產計劃,遭到債權人反對:金色財經報道,已倒閉的加密貨幣借貸平臺Celsius已提交更新的破產計劃,以反映Fahrenheit財團成功競購資產。Fahrenheit是一個由風險投資公司Arrington Capital和礦商US Bitcoin Corp組成的買家財團,于5月宣布成為中標者,推翻了NovaWulf試圖收購該公司的企圖,該公司此前的資產價值約為20億美元。該計劃于周四早些時候提交,該計劃必須得到監督清算的紐約破產法院的同意,并且可能會遭到債權人的反對。

根據Fahrenheit交易,新公司將獲得4.5億至5億美元的加密貨幣,美國比特幣公司將建造一系列加密采礦設施,包括一座新的100兆瓦工廠。[2023/6/15 21:39:34]

將此用于存儲是有問題的,因為隨著數據集變大,峰值袋變得越來越稀少,因此存款速度變得越來越慢。這可能導致用戶無限期地等待他們的資金存入。

另一種方法是多重證明但在這里不能使用,因為它需要在存款人之間安排協調員。鑒于不斷變化的存款隊列,狀態很可能在協調更新得到處理之前已經改變。

方法

創建存款隊列

如果您曾經玩過2048,您可能會從合并兩個相同值的區塊中獲得樂趣。我們在這里對于Merkle樹也這么做。

我們從一個空的存款樹開始。當存款進來時,我們將其存儲在隊列中并等待。當下一筆存款進入此哈希時,將此哈希保存到我們當前深度為1、同時有2個待處理存款的存款樹。然后我們可以停止存儲與第一筆存款相關的任何數據。

近80%的y00ts系列NFT已遷移至Polygon:金色財經報道,OpenSea數據顯示,目前已有1.16萬枚y00ts系列NFT已遷移至Polygon,占總量的約80%。該系列NFT目前地板價為1.69 ETH,總交易量為394 ETH。

據此前報道,NFT項目y00ts表示將于3月27日開始遷移至Polygon,用戶可以直接從官方網站遷移,在24小時內完成遷移將獲得獎勵。Gas費用將由Magic Eden提供,質押也將免費。在最初的24小時內,y00ts團隊將在Polygon上根據y00ts數量一比一空投BTC DeGod。快照將于遷移開始24小時后在Polygon上進行。[2023/3/30 13:34:22]

當另一筆存款進來時,我們會再次存儲它。然后對于下一個存款,我們用指定值對其進行哈希,然后用存款樹對結果進行哈希。創建我們的深度為2、有4個待處理存款的存款樹。

我們已經有效地合并了存款。

將存款樹插入余額樹中

此時,我們有一個深度為2的存款樹,其中有4個待處理的存款。我們還有一個余額樹,它包含一些先前存入的賬戶,其他地方都是零。我們不想覆蓋樹中的帳戶。因為這會毀掉這些用戶的賬戶。我們只需要將它們替換0。

為了將新葉子插入余額樹,我們需要證明:

一個節點的子節點全為零。我們需要這樣做以防止覆蓋已經有過存款的賬戶。

舉個例子,假設我們有一個節點有2個子節點。我們知道,如果2個子節點都是0,那么節點==hash(0,0)。

加密金融服務公司Blofin交易平臺Blofin.com上線:1月12日消息,加密金融服務公司Blofin首席執行官Matt發推稱,交易平臺Blofin.com正式上線。Blofin.com 用第三方WAAS和托管服務(Fireblocks)來保證用戶資產安全。[2023/1/12 11:08:43]

但是如果樹真的很深,在EVM/SNARK中計算這個哈希可能效率不高。因此,不如預先計算這個列表,并將其作為一個映射存儲在智能合約中進行部署。

然后每當我們想要檢查一個節點的子節點是否全為零時,我們只需查找此映射。所以有用Merkle證明該節點在樹中,然后通過檢查存儲的映射證明它的子節點全為零。新的Merkle根只更改了零節點,其他一切都相同。

我們之前已經證明了一片葉子的子節點全為零,現在我們想要改變那片葉子,同時保持樹的其余部分不變。

使用相同的Merkle路徑,我們計算了用deposit_tree替換的沒有葉子的根。

然后我們將這個新的Merkle根存儲為包含所有存放葉子的新余額樹,使用我們用來證明葉子在樹中的相同Merkle路徑確保了所有其他葉子不會改變,并且只允許我們更新零節點的子節點。

報告:德國和美國在最新全球加密國家排名中共同占主導:金色財經消息,據分析公司Coincub發布的最新季度全球加密國家排名顯示,德國和美國共同占主導地位,主要由于先進的監管政策和主流機構對比特幣的投資。

德國允許其儲蓄行業進行加密貨幣投資,并且對持有一年以上的比特幣和以太幣的資本收益實施零稅政策,這也是其排名上升的一個關鍵原因。

在美國總統喬-拜登于2022年3月發布的“Ensuring Responsible Development of Digital Assets”的推動下,美國從第三位上升到分享排名第一的位置。該指令旨在發展提供消費者保護和金融穩定,并打擊非法活動。

瑞士在全球加密貨幣排名中位居第三,由該國最近的發展所推動,盧加諾州承認比特幣為法定貨幣。

新加坡排名第四,由于該國金融監管機構和中央銀行最近的監管收緊,新加坡從2021年底的榜首位置下降。

澳大利亞排名第五,Coincub強調了該國大量的首次代幣發行、交易所和交易量,以及一些提供區塊鏈和加密貨幣教育課程的大學。(Cointelegraph)[2022/7/18 2:19:37]

同步的注意事項

像zksnarks/optimisticrollup這樣的一些系統需要證明時間才能執行存款。如果在這種情況下存款樹發生變化,則證明可能無效。因此,最好有一種方法可以在某個存款樹被存入時暫停更新。

概括

BitKeep錢包現已接入Go+Security的Token安全檢測數據:據官方推特,BitKeep錢包V7.0.9版本現已接入Go+Security的Token安全檢測數據,并上線Token安全檢測功能。用戶可以在BitKeep錢包里通過多種路徑對投資標的進行安全檢測,以規避可能遇到的風險。目前該功能支持的公鏈有ETH、BSC、Arbitrum、Polygon、HECO、AVAX、Fantom、OKX、Harmony。

據悉,Go+Security作為Web3的“安全數據層”,提供開放、無需許可、用戶驅動的安全服務。用戶可以通過Go+Security查看基于合約的安全、交易安全、信息安全、Token檢測、NFT檢測、實時風險預警、交互安全等近30種安全檢測結果。[2022/6/10 4:16:50]

這里我們提出了一種合并存款的方法。我們在EVM中查詢存款,當它們被存入更大的Merkle樹時,它們會將它們合并。

在后續文章中,我們將把它應用到mixer存款和optimisticrollup存款/大規模遷移。

討論:

weijiekoh

假設隊列長度是8而不是4。

令storage為存儲一個值所需的gas量。

令hash為哈希兩個值所需的gas量。

這是否意味著存儲在2^n位置用戶由于其在隊列中的位置而處于劣勢。

barryWhiteHat

與現狀相比,對每個人來說都更便宜?

weijiekoh

它確實對每個人來說都更便宜,在我看來,當考慮到每次哈希的成本時,這種權衡是一個偏好問題。如果哈希函數是便宜的(例如kecack),那么成本差異可以忽略不計,但如果哈希函數是昂貴的(例如Poseidon)那么

的使用者的gas花費加起來也比較昂貴。

vbuterin

因此KateCommitment值得探索。使用KateCommitment,只需一個組元素就可以輕松證明來自單個狀態的任意數量的位置。這可以與隊列方法結合使用,以確保有大量存款可以批量處理。Kate方法的另一個好處是很容易將其插入基于橢圓曲線的SNARK/PLONK證明中。

weijiekoh

請問你對使用KateCommitment有什么想法?是把所有的存款根積累到KateCommitment而不是余額樹的嗎?

vbuterin

將KateCommitment使用于存款和余額。

weijiekoh

盡管用我們擁有的最好的開發工具(帶circom的BN254)來驗證在snark中的KateCommitment仍然是不可行的。但我的意見是,我們必須等到更先進的snarks變得可行。

vbuterin

我沒想過讓snark從字面上驗證橢圓曲線配對計算。我正在考慮使用類似PLONK的多項式證明,其中KateCommitment和opening作為兩個參數傳入,您只需直接對它們進行多項式檢查。所以沒有“一個系統驗證另一個系統”的開銷。

weijiekoh

請問這是你心目中的snark嗎?

在這種情況下,像commit()函數需要一個SRS并且還需要對EC取冪來計算Kate承諾。我可能是錯的,但由于在現有的alt_bn128的SRSes上執行EC操作的成本很高,我們是否需要在BabyJub曲線上進行新的'PowersofTauCeremony',以便我們可以擁有對snark友好的KateCommitment?

MichaelConnor

可以批量處理成KateCommitment的項目數量是否有實際上限?限制是SRS的大小?如果是這樣,Merkle樹不是提供更大的匿名集嗎?

vbuterin

我的意思是直接對KateCommitment進行多重證明。所以你會有一個承諾P,你只需做一個標準的muti-opening來證明對于一組(x,y)有P(xi)=yi成立。

可以更進一步:為了避免每對都進行一次EC乘法,(x,y)對本身可以用多項式承諾進行編碼,muti-opening將變成一個等價證明:,然后這些多項式承諾將同時成為PLONK證明的一部分。

weijiekoh

也許我應該從不同的角度去看問題。我主要關心用戶的gas成本,其次才是協調器。這畢竟是批量存款技術要解決的問題。

在MACI中,我們需要證明ZK中余額樹中每個葉子的事情。即在余額樹中,每個葉子可能會或可能不會根據其解密內容修改狀態樹。由于我們要確保協調器以正確的順序處理每條消息,我們的Groth16snark必須證明每個葉子的成員資格和消息樹中的位置。

這已經花費了幾十萬gas。如果我們執行Kate多重證明,將至少添加另外193kgas。

如果/當我們轉向PLONK,我們是否可以避免這種額外成本?

在短期內,如果沒有PLONK,在BabyJub中使用Kate承諾可能會有好處,因此我們可以在Groth16snark中驗證Kate承諾或Kateverkle樹。

每個存入隊列的用戶只需支付存儲32個字節的費用。

一旦存款隊列已滿,協調員就會累積成一個凱特承諾,這應該很便宜。例如,Kate提交16個值需要223454個gas,這比波塞冬二叉Merkle樹有很大的改進,后者需要797835個gas來提交16個值。這樣,用戶和協調者都可以節省gas。

為了構建最終的余額樹,協調器還將使用Kate承諾,從而生成Verkle樹。由于我們可以以更低的gas成本承諾更多的價值,我們可以擁有更大的樹容量。

當我們處理余額樹時,我們會檢查snark中每條消息的成員資格和位置,然后照常進行。

也許我們可以使用Verkle樹(Merkle樹使用Kate承諾作為哈希函數而不是Poseidon/MiMC)。

Pratyush

KZG10Commitments需要配對;BabyJubJub不是一個友好的配對曲線

weijiekoh

使用這種技術可以節省更多的gas。子樹的哈希函數可以是SHA256,這在EVM中比較便宜。樹的其余部分(從子樹深入到根)可以用Poseidon進行哈希。

這樣做的代價是,任何snark都會增加每個子樹級別大約90k約束。從這個角度來看,TornadoCash的抽屜式電路有28271個約束條件。因此,這種方法只對MACI這樣的用例有意義,在這種情況下,驗證者可能不介意(粗略地)將他們的驗證時間增加一倍甚至三倍。

Tags:KATERKCOMMERMKAT幣Terkehhecomi幣MERI價格

幣安app下載
一文讀懂什么是Soilidity:用于實現智能合約的高級編程語言-ODAILY_INT:ETU

函數聲明 functioneatHamburgers(stringmemory_name,uint_amount)public{}函數的可見性是公開的.

1900/1/1 0:00:00
各路巨頭入局元宇宙:誰能更勝一籌?-ODAILY_ETA:META

早在1992年,史蒂文森在小說《雪崩》中首次提出了元宇宙的概念,為無數讀者帶來想象力的啟發;2018年,斯皮爾伯格在電影《頭號玩家》中描繪了未來世界虛擬現實的具體場景.

1900/1/1 0:00:00
詳解貨幣交易專業術語-ODAILY_PIP:HAI

貨幣術語 學習任何新技能之前,你需要學習相關的術語。作為貨幣交易的新手,在進行第一筆交易之前,你需要知道貨幣相關的術語.

1900/1/1 0:00:00
World Mobile 大事件(12.20—12.26) -ODAILY_WOR:WORLD

1、2021年12月20日WorldMobile與星球日報聯合舉辦AMA活動 2、2021年12月21日WorldMobile與MEXC聯合舉辦AMA活動跨鏈互操作協議 Wormhole 已集成.

1900/1/1 0:00:00
?DAOrayaki |如何撰寫DAO 的章程-ODAILY_DAO:PlayDapp

為什么DAO需要章程? 這與國家建立憲法的原因一致。建立其治理體系和基本規則,建立共同愿景,保障參與者的基本權利和保護,保護其免受內部接管和外部攻擊.

1900/1/1 0:00:00
以太坊存儲爆炸問題的分析與優化-ODAILY_以太坊:tps幣圈

編按:本文為QuarkChain創始人兼CEO周期博士撰寫的技術文章,并以此文章為基礎,在DAppLearning進行了技術分享講座.

1900/1/1 0:00:00
ads