近期以太坊上的高手續費和低TPS使以太坊上的Layer2擴容之爭變成了焦點。本篇文章將以市場上既有的產品為基礎,從技術方案角度出發,比較當下ZKSwap方案和其他擴容方案的異同之處。在具體的展開描述之前,也將簡短的介紹下目前市場上的Layer2擴容技術的基本狀況。
Layer2擴容技術概述
迄今為止,Layer2市場上已經是一片繁榮,技術上不斷創新,各種產品也層出不窮。對于市場上的所有的產品,從技術角度上劃分,可以大體分為三類:
狀態通道:通過促進鏈下交易來減輕以太坊的負擔,具有即時存取、高吞吐的特點,其弊端是設置通道浪費耗時,并且需要在通道中支付鎖定資金,同時定時監測通道狀態;
側鏈技術:具有獨立共識規則的獨立區塊鏈,與Layer1的共識不同步,這是它的弊端;
Rollup技術:可以看作是一個高級的非托管側鏈技術,它將計算放在鏈下,交易數據以及最新世界狀態放在鏈上,保證了鏈上數據可用性。
與其他的兩種方案相比,Rollup無需提前鎖定代幣,也不用設置自己的共識規則;而且它還可以保持和Layer1同樣等級的安全性,同時方案本身具有通用性。隨著Layer2技術的持續發展,Rollup技術方案也變得多樣化,根據交易數據存儲的位置和使用的證明方法的不同,又可以將Rollup技術細分為以下四類:
LendHub被黑簡析:系LendHub中存在新舊兩市場:金色財經報道,據慢霧安全區情報,2023 年 1 月 13 日,HECO 生態跨鏈借貸平臺 LendHub 被攻擊損失近 600 萬美金。慢霧安全團隊以簡訊的形式分享如下:
此次攻擊原因系 LendHub 中存在兩個 lBSV cToken,其一已在 2021 年 4 月被廢棄但并未從市場中移除,這導致了新舊兩個 lBSV 都存在市場中。且新舊兩個 lBSV 所對應的 Comptroller 并不相同但卻都在市場中有價格,這造成新舊市場負債計算割裂。攻擊者利用此問題在舊的市場進行抵押贖回,在新的市場進行借貸操作,惡意套取了新市場中的協議資金。
目前主要黑客獲利地址為 0x9d01..ab03,黑客攻擊手續費來源為 1 月 12 日從 Tornado.Cash 接收的 100 ETH。截至此時,黑客已分 11 筆共轉 1,100 ETH 到 Tornado.Cash。通過威脅情報網絡,已經得到黑客的部分痕跡,慢霧安全團隊將持續跟進分析。[2023/1/13 11:11:00]
ZKRollup:Layer1+Validityproofs,數據存儲在鏈上,用零知識證明來保證狀態轉換的有效性;
Beosin:Skyward Finance項目遭受攻擊事件簡析:金色財經報道,根據區塊鏈安全審計公司Beosin旗下Beosin EagleEye 安全風險監控、預警與阻斷平臺監測顯示,Near鏈上的Skyward Finance項目遭受漏洞攻擊,Beosin分析發現由于skyward.near合約的redeem_skyward函數沒有正確校驗token_account_ids參數,導致攻擊者5ebc5ecca14a44175464d0e6a7d3b2a6890229cd5f19cfb29ce8b1651fd58d39傳入相同的token_account_id,并多次領取了WNear獎勵。本次攻擊導致項目損失了約108萬個Near,約320萬美元。Beosin Trace追蹤發現被盜金額已被攻擊者轉走。[2022/11/3 12:12:36]
OptimisticRollup:Layer1+Fraudproofs,數據存儲在鏈上,在挑戰期間,用欺詐證明來驗證狀態轉換的有效性;
Validium:Layer2+Validityproofs,數據存在鏈下,用零知識證明來保證狀態轉換的有效性,并設立「數據可用性委員會」來保證鏈下數據的可用性;
安全團隊:Audius項目惡意提案攻擊簡析,攻擊者總共獲利約108W美元:7月24日消息,據成都鏈安“鏈必應-區塊鏈安全態勢感知平臺”安全輿情監控數據顯示,Audius項目遭受惡意提案攻擊。成都鏈安安全團隊簡析如下:攻擊者先部署惡意合約并在Audius: Community Treasury 合約中調用initialize將自己設置為治理合約的監護地址,隨后攻擊者調用ProposalSubmitted 提交惡意85號提案并被通過,該提案允許向攻擊合約轉賬1,856w個AudiusToken,隨后攻擊者將獲得的AudiusToken兌換為ETH,總共獲利約108W美元,目前獲利資金仍然存放于攻擊者地址上(0xa0c7BD318D69424603CBf91e9969870F21B8ab4c)。[2022/7/24 2:34:31]
Plasma:Layer2+Fraudproofs,數據存儲在鏈下,用戶提供欺詐證明來驗證狀態轉換的有效性;
在實際的產品設計過程中,基于不同的業務場景,設計者往往需要在效率和安全性上做出權衡,要效率還是要絕對安全,每個產品設計時都有自己的側重面。因此,也就有了上述的四種Rollup方案。現在市面上的大部分產品,按技術分類的話,應該大都屬于上述四類,更準確的說,是屬于前三類,第四類方案提出的最早,安全性考慮的較少。
Grim Finance 被黑簡析:攻擊者通過閃電貸借出 WFTM 與 BTC 代幣:據慢霧區情報,2021 年 12 月 19 日,Fantom 鏈上 Grim Finance 項目遭受攻擊。慢霧安全團隊進行分析后以簡訊的形式分享給大家。
1. 攻擊者通過閃電貸借出 WFTM 與 BTC 代幣,并在 SpiritSwap 中添加流動性獲得 SPIRIT-LP 流動性憑證。
2. 隨后攻擊者通過 Grim Finance 的 GrimBoostVault 合約中的 depositFor 函數進行流動性抵押操作,而 depositFor 允許用戶指定轉入的 token 并通過 safeTransferFrom 將用戶指定的代幣轉入 GrimBoostVault 中,depositFor 會根據用戶轉賬前后本合約與策略池預期接收代幣(預期接收 want 代幣,本次攻擊中應為 SPIRIT-LP)的差值為用戶鑄造抵押憑證。
3. 但由于 depositFor 函數并未檢查用戶指定轉入的 token 的合法性,攻擊者在調用 depositFor 函數時傳入了由攻擊者惡意創建的代幣合約地址。當 GrimBoostVault 通過 safeTransferFrom 函數調用惡意合約的 transferFrom 函數時,惡意合約再次重入調用了 depositFor 函數。攻擊者進行了多次重入并在最后一次轉入真正的 SPIRIT-LP 流動性憑證進行抵押,此操作確保了在重入前后 GrimBoostVault 預期接收代幣的差值存在。隨后 depositFor 函數根據此差值計算并為攻擊者鑄造對應的抵押憑證。
4. 由于攻擊者對 GrimBoostVault 合約重入了多次,因此 GrimBoostVault 合約為攻擊者鑄造了遠多于預期的抵押憑證。攻擊者使用此憑證在 GrimBoostVault 合約中取出了遠多于之前抵押的 SPIRIT-LP 流動性憑證。隨后攻擊者使用此 SPIRIT-LP 流動性憑證移除流動性獲得 WFTM 與 BTC 代幣并歸還閃電貸完成獲利。
此次攻擊是由于 GrimBoostVault 合約的 depositFor 函數未對用戶傳入的 token 的合法性進行檢查且無防重入鎖,導致惡意用戶可以傳入惡意代幣地址對 depositFor 進行重入獲得遠多于預期的抵押憑證。慢霧安全團隊建議:對于用戶傳入的參數應檢查其是否符合預期,對于函數中的外部調用應控制好外部調用帶來的重入攻擊等風險。[2021/12/19 7:49:04]
所以,ZKSwap團隊推出的Layer2擴容方案Zkspeed同樣也屬于上述范疇。然而,作為Layer2賽道上的一個新星,Zkspeed方案與其他主流產品推出的Layer2方案相比會有什么樣的技術優勢呢?產品體驗又有何異同呢?接下來,我們將選取市場上具有代表性的幾個產品,從技術方案和實際體驗效果上做一些簡單的對比分析,來看看Zkspeed擴容方案是否優勝同時產品體驗是否更好。
Harvest.Finance被黑事件簡析:10月26號,據慢霧區消息 Harvest Finance 項目遭受閃電貸攻擊,損失超過 400 萬美元。以下為慢霧安全團隊對此事件的簡要分析。
1. 攻擊者通過 Tornado.cash 轉入 20ETH 作為后續攻擊手續費;
2. 攻擊者通過 UniswapV2 閃電貸借出巨額 USDC 與 USDT;
3. 攻擊者先通過 Curve 的 exchange_underlying 函數將 USDT 換成 USDC,此時 Curve yUSDC 池中的 investedUnderlyingBalance 將相對應的變小;
4. 隨后攻擊者通過 Harvest 的 deposit 將巨額 USDC 充值進 Vault 中,充值的同時 Harvest 的 Vault 將鑄出 fUSDC,而鑄出的數量計算方式如下:
amount.mul(totalSupply()).div(underlyingBalanceWithInvestment());
計算方式中的 underlyingBalanceWithInvestment 一部分取的是 Curve 中的 investedUnderlyingBalance 值,由于 Curve 中 investedUnderlyingBalance 的變化將導致 Vault 鑄出更多的 fUSDC;
5. 之后再通過 Curve 把 USDC 換成 USDT 將失衡的價格拉回正常;
6. 最后只需要把 fUSDC 歸還給 Vault 即可獲得比充值時更多的 USDC;
7. 隨后攻擊者開始重復此過程持續獲利;
其他攻擊流程與上訴分析過程類似。參考交易哈希:0x35f8d2f572fceaac9288e5d462117850ef2694786992a8c3f6d02612277b0877。
此次攻擊主要是 Harvest Finance 的 fToken(fUSDC、fUSDT...) 在鑄幣時采用的是 Curve y池中的報價(即使用 Curve 作為喂價來源),導致攻擊者可以通過巨額兌換操控預言機的價格來控制 Harvest Finance 中 fToken 的鑄幣數量,從而使攻擊者有利可圖。[2020/10/26]
Layer2技術對比分析
根據我們的市場調研,我們選取了三個市場上具有代表性和前沿性的的產品,分別是StarkWare的StarkNet、Uniswap的unipig、Loopring的loopring。首先,我們先從技術方案的角度,來看一下Zkspeed和starkNet、Unipig、Loopring的區別,具體的如下表所示:
表1.Layer2擴容方案分析表。圖片說明:crs對應需要多次可信設置的zkp算法;srs對應只需要一次可信設置的zkp算法
根據上述表格可以看出:
Loopring
使用的Layer2擴容方案是基于ZKRollup方案設計的,同時也支持Validium方案,即鏈上數據可用性是可以選擇的。該方案使用的零知識證明算法是zksnark算法,需要第三方生成可信設置。
優點是:這種算法的proof大小是常量大小的;
缺點是:可信設置是不通用的,針對不同的交易類型,都需要單獨進行可信設置。因此,為了提高證明傲率,每個區塊里的交易類型要求為同一交易類型,導致了如果某種類型的交易較少,那它上鏈的速度就會很慢,因為要等待足夠的交易才打包區塊。不過,在Loopring發布的協議3.6版本里可以看到,已經取消了了區塊里是相同類型的交易的限制,相信會有更好的交易體驗。
StarkWare
StarkWare團隊研發的Layer2擴容引擎starkEx,支持Validium方案和ZKRollup方案兩種模式可選。狀態更新的有效性由零知識證明來保證,其用到的零知識證明算法是zkstark算法。
優點是:與常用的zksnark算法不同,zkstark算法不需要第三方的可信設置,而且其算法本身不依賴數學難題假設,具有一定的抗量子性;
缺點是:proof的大小比其他的zkp算法要大的多,生成證明需要消耗大量的計算資源和存儲空間。同時,StarkWare團隊研發的Layer2擴容解決方案值得期待,一種以太坊上的基于STARK的去中心化無許可L2ZK-Rollup產品,并且支持基于Cairo語言的通用計算;具體內容可參考鏈接starkNet。
Uniswap
使用的Unipig擴容方案是基于OptimisticRollup設計的,如前圖所示,改方案存在挑戰期,即在挑戰期間,用戶可以提供欺詐證明來驗證執行者的行為是否作惡。
優點是:該方案兼容EVM,并且交易數據存在鏈上,保證了安全性;
缺點是:由于存在潛在的欺詐性證明,鏈上事務處理的時機會延緩;挑戰成本昂貴,導致挑戰模式基本上算是形同虛設。
ZKSwap
推出的Zkspeed擴容方案兼顧了ZKRollup、Validium和OptimisticRollup方案的特點。即實現所有與Layer1交互的交易數據全部上鏈,把單純Layer2的交易數據存放在鏈下(Validium),交易hash數據上鏈,同時ZKSpeed也會提供一個完全上鏈的版本,這樣可以實現更高的安全性,并提供零知識證明保證狀態轉換的有效性。
ZKSwap采用自己研發的Zkspeed與其他三個擴容方案的差異:
Zkspeed方案采用PLONK零知識證明算法,所有交易類型共用一套可信設置,如此就無需按照交易類型進行區塊打包;
Zkspeed方案采用了GPU實現版的PLONK算法,相比于普通的CPU實現版本運行速度上提升了3倍以上,再加上頂尖的硬件設備,使得證明的生成時間大大縮短,大幅提高了系統的吞吐量;
ZKSwap團隊經過反復研究論證,在Zkspeed方案上探索性的采用了聚合證明方案,并首先應用到AMM的DEX領域,把多個區塊的證明聚合成一個證明,使得鏈上一次就可以完成多個區塊的驗證,大大的降低了交易的平均成本。
聚合證明的技術原理如下圖所示:
圖2.Aggregation方案
在Rollup方案里,一個很明顯的技術特點就是交易的批量處理,即對區塊里的所有交易的有效性產生一個證明,然后鏈上主合約完成證明的有效性驗證。如圖2左側所示,這和原始的單個交易處理力度相比,已經有了巨大的吞吐率的提升和交易成本的降低。然而,ZKSwap團隊發現,受限于零知識證明算法橢圓曲線參數的選取,一個區塊內能批量處理的交易數量是有限的,再加上鏈上一次驗證計算的成本高達50WGas,導致每筆交易的成本并沒有低到預期。因此,ZKSwap技術團隊持續進行技術應用創新的突破,并最終關注到了聚合證明方案。
如上圖右側所示,聚合證明的思想很簡單,可簡單表述為:把每個區塊的proof當作輸入,把鏈上驗證的過程當作證明電路,證明鏈上的驗證過程是正確的,由于驗證的形式就是一個雙線性配對,因此,多個proof可以進行線性組合,然后利用一次雙線性配對完成所有proof的有效性驗證。這樣一來,多個證明的驗證過程由多次變成1次,驗證成本大幅降低,成本降低的幅度取決于區塊聚合度,目前Zkspeed方案支持聚合上鏈的交易筆數可根據實際情況進行調配,20、10、5筆均支持。同時,為了探索進一步降低交易成本的可能性,ZKSwap團隊追求精益求精,繼續對上鏈數據進行聚合提交,即,多個區塊一次提交,節省了一些固定成本,進一步壓縮交易成本,最終實現一筆交易的成本消耗最低至1400Gas,遠低于行業其他產品。
展望
遺憾的是,目前ZKSwap的方案還不兼容EVM,ZKSwap團隊的愿景是構建一個支持通用EVM的Rollup擴容解決方案,使得其他應用無需重新編寫智能合約就能實現快速遷移,目前ZKSwap團隊已經投入研究,并取得了一些進展。除此之外,starkWare和MatterLabs分別開發了starkNet和zinc的Layer2擴容解決方案,需要用對應新設計的DSL語言來編寫證明邏輯,雖然此方案不算完美,但也算是一個階段性的研發成果。未來ZKSwap團隊愿和其他團隊一起,共同致力于以太坊的Layer2擴容建設。
撰文:江小白
Tags:ZKSLAYERSWAPROLzkswap幣最新消息Game On PlayersNFTSwapsThe Troller Coin
原標題:狗狗幣啟示:交易所如何應對加密投資范式轉型?對于加密貨幣交易所而言,如果想在這場正在發生的投資范式轉型中立于不敗之地.
1900/1/1 0:00:00基于UMA協議開發的合成資產考慮到了趣味性或用戶需求,這或許才是「合成資產」應該有的樣子,而不是被「預言機」束縛想象力.
1900/1/1 0:00:00著名的投資者TimDraper認為Netflix是最有可能將比特幣納入資產負債表的大公司之一。億萬富翁TimDraper表示,Netflix可能是財富100強中下一家購買比特幣的公司,而亞馬遜將.
1900/1/1 0:00:00“起風了,那烏家就破產吧”。近日,國產電視劇《贅婿》頻頻喜提熱搜,男主寧毅利用“期貨”、“做多”、“對沖”等現代金融思維,使得對手烏家資金鏈斷掉,向男主寧毅低頭,看得觀眾直呼過癮.
1900/1/1 0:00:00目前可能處于牛市的第一階段與第二階段之間,312也不會重來。在2月的最后一周,比特幣出現大幅回調,一度跌超25%,主流幣和山寨幣隨之崩塌.
1900/1/1 0:00:00在遭公眾強烈反對后泰國SEC澄清擬議的加密監管規則Cointelegraph中文 剛剛 29 在公眾的憤怒之下,泰國金融監管機構可能調整加密投資者的最低年收入標準.
1900/1/1 0:00:00