ZKSwap V2版本預計將於6月份上线 支持Layer 2自主無限上幣

2021-04-22 18:04:59

ZKSwap V2 版本預計將於6月初正式上线,屆時新版本將會支持Layer2 的自主無限上幣,用戶可以自主添加自己發行的ERC20 token 到ZKSwap 的Layer2 支付網絡和兌換網絡,實現免費實時轉账任意ERC20 代幣(包括任何穩定幣)以及免費實時兌換任意ERC20 代幣。

ZKSwap 在V1 的基礎上,V2 版本新增了如下功能:

1)"⽆限"上幣- ⽤戶在⽀付⼀定費⽤的情況下,可以⾃主添加任意Token,並可創建交易對;

2)優化電路分支的實現,提升電路效率- ⽀持⼀個账戶,兩個余額的修改;

3)優化提現體驗- V1 版本中,提現的操作和區塊驗證操作捆綁在⼀起。由於每筆gas 費⽤的限制,導致區塊中的提現的個數受限,特別是在聚合驗證的情況下,受限更多。V2版本將會優化用戶的提現體驗。

1. Token管理

ZKSwap V2 版本將⽀持三種類型的 Token:Fee Token、User Token 和LP Token。總共⽀持2^16 個Token。 

ZKSwap V2版本預計將於6月份上线 支持Layer 2自主無限上幣

1.1 Fee Token 

Fee Token 只能由Governor 添加,主要為ETH、ZKS、USDT、USDC 和BTC 等。

1.2 User Token

User Token ⽤戶可以付費添加。

1.3 LP Token 

ZKSwap ⽤戶創建交易對時,必須⽀付費⽤。LP Token 將在⽤戶創建交易對時⾃動添加。用戶創建的交易對中必須有⼀種 Token 是 Fee Token。User Token 能創建的交易對個數受限(由Governor 設置)。 

1.4 Governor Config 

Governor 可以設置添加User Token 和修改創建交易對⽀付的費⽤。

2. 账戶管理

ZKSwap V2 版本將⽀持2^28 個账戶。其中账戶0 為Validator 账戶。

3. Fee模型

ZKSwap V2 版本上的Layer2 交易,可以指定Fee Token 中的⼀種作為⼿續費。 

ZKSwap V2版本預計將於6月份上线 支持Layer 2自主無限上幣

4. Pub Data of Transactions 

ZKSwap V2 版本上的所有交易(包括Layer1 / Layer2 交易)都需要打包提交Pub Data 到Layer1。為了保持最優的電路性能,Chunk ⼤⼩為11 字節,兌換和轉账只需要2 個Chunk。

4.1 Noop 

ZKSwap V2 版本允許存在空交易,來填充Layer2 區塊。

a. pub data 

ZKSwap V2版本預計將於6月份上线 支持Layer 2自主無限上幣

pub data 的總⻓度= 1 字節。

4.2 Deposit 

用戶從ZKSwap Layer1 發起充值操作時,系統會將用戶 Layer1 的資產映射到Layer2。

a. 接⼝函數

function deposit ERC20 (IERC20 _token, uint104 _amount, address _franklinAddr) 

function deposit ETH (address _franklinAddr) 

b. pub data  

ZKSwap V2版本預計將於6月份上线 支持Layer 2自主無限上幣

pub data 的總⻓度= 1+4+2+16+20 = 43 字節。總共4 個Chunk。 

4.3 Transfer 

用戶通過ZKSwap Layer2 發起的轉账交易,可實現任意Token 的轉账。

a. pub data  

ZKSwap V2版本預計將於6月份上线 支持Layer 2自主無限上幣

pub data的總⻓度= 1+4+2+4+5+1+2 = 19 字節。2 個Chunk。

4.4 TransferToNew 

用戶通過ZKSwap Layer2 發起轉账交易,可實現任意Token 的轉账。轉账對⽅不需要提前創建账戶。

a. pub data 

ZKSwap V2版本預計將於6月份上线 支持Layer 2自主無限上幣

pub data 的總⻓度= 1+4+2+20+4+5+1+2 = 39 字節。4 個Chunk。

4.5 Withdraw 

用戶通過ZKSwap Layer2 發起提現操作,可實現任意Token 在Layer1 的提現。

a. pub data 

ZKSwap V2版本預計將於6月份上线 支持Layer 2自主無限上幣

pub data 的總⻓度= 1+4+20+2+16+1+2 = 46 字節。5 個Chunk。

4.6 FullExit 

用戶可直接從ZKSwap Layer1 發起FullExit 請求,提取資產,此操作需要Layer2 提供證明。

a. pub data 

ZKSwap V2版本預計將於6月份上线 支持Layer 2自主無限上幣

pub data 的總⻓度= 1+4+2+20+16 = 43 字節。4 個Chunk。

4.7 ChangePubKey 

用戶通過在ZKSwap Layer2 發起提取交易,可實現任意Token 在Layer1 的提現。

a. pub data 

ZKSwap V2版本預計將於6月份上线 支持Layer 2自主無限上幣

pub data 的總⻓度= 1+4+20+20+4 = 49 字節。5 個Chunk。

4.8 CreatePair 

用戶通過ZKSwap Layer1 發起交易池的創建。創建交易池需要在Layer1 創建對應的智能合約(LP 代幣)。

a. 接⼝函數

function createPair (address _tokenA, address _tokenB) 

b. pub data 

ZKSwap V2版本預計將於6月份上线 支持Layer 2自主無限上幣

pub data 的總⻓度= 1+ 4+2+2+2+20 = 31 字節。總共3個Chunk。

4.9 AddLiquidity 

用戶通過ZKSwap Layer2 添加流動性。

a. pub data 

ZKSwap V2版本預計將於6月份上线 支持Layer 2自主無限上幣

pub data 的總⻓度= 1+4+4+5+5+5+5+1+2 = 32 字節。總共3 個Chunk。

4.10 RemoveLiquidity 

用戶通過ZKSwap Layer2 移除流動性。

a. pub data 

ZKSwap V2版本預計將於6月份上线 支持Layer 2自主無限上幣

pub data 的總⻓度= 1+4+4+5+5+5+1+2 = 27 字節。總共3 個Chunk。

4.11 Swap 

用戶通過ZKSwap Layer2 實現兩種Token 之間的兌換。

a. pub data 

ZKSwap V2版本預計將於6月份上线 支持Layer 2自主無限上幣

pub data 的總⻓度= 1+4+4+5+5+1+2 = 22 字節。總共2 個Chunk。

5. Circuit Optimization 

ZKSwap V2 版本為了降低AMM 相關操作的Chunk 個數,需要降低“Branch”的個數。原有設計在狀態樹上的⼀個Account 和⼀個Token 的Balance 組成⼀個“Branch”。在AMM 相關的操作中,如果採⽤Fee Token 的⽅式,原有的設計效率⽐較低,需要⽀持1 個Account 和2 個Token 的Balance的“Branch”。

1) Account Audit Path (aap)

2) 該Account 下的2 個Balance (balance0 / balance1) 在修改前的Audit Pat(bap0/bap1) 3) 該Account 下的2 個Balance (balance0'/balance1') 在修改後的Audit Pat(bap0'/bap1') 

在修改前電路需要證明: 

  • balance0 + bap0 ==> b_root0

  • balance1 + bap1 ==> b_root0 

  • account (b_root0) + aap ==> root 

在balance修改後電路需要證明: 

  • balance0' + bap0 ==> b_root0' 

  • balance1 + bap1' ==> b_root0' 

  • balance1' + bap1' ==> b_root0'' 

  • account(b_root0'') + aap ==> root' 

6. AMM Circuit Explanation  

6.1 CreatePair Circuit  

ZKSwap V2版本預計將於6月份上线 支持Layer 2自主無限上幣

6.2 AddLiquidity Circuit

ZKSwap V2版本預計將於6月份上线 支持Layer 2自主無限上幣

ZKSwap V2版本預計將於6月份上线 支持Layer 2自主無限上幣

ZKSwap V2版本預計將於6月份上线 支持Layer 2自主無限上幣

6.3 RemoveLiquidity Circuit 

ZKSwap V2版本預計將於6月份上线 支持Layer 2自主無限上幣

ZKSwap V2版本預計將於6月份上线 支持Layer 2自主無限上幣

6.4 Swap Circuit

ZKSwap V2版本預計將於6月份上线 支持Layer 2自主無限上幣

ZKSwap V2版本預計將於6月份上线 支持Layer 2自主無限上幣

7. Withdrawal Optimization

ZKSwap V2 版本提現操作和區塊驗證隔離开,區塊中的提現個數將不受限制。 

ZKSwap V2版本預計將於6月份上线 支持Layer 2自主無限上幣

在某個區塊驗證後,通過Check Withdrawals 函數創建Pending Withdraws,再通過Complete Withdrawls 完成提現。Complete Withdrawls 函數需要增強可以優先處理某個Pending Withdraws。區塊驗證是針對多區塊聚合實現的。Check Withdrawals 針對每個驗證後的區塊進⾏處理。創建⼀個Pending Withdraw 的gas 費⽤在7w 左右,按照⼀個交易最⼤的gas 費⽤1250w 來說的話,⼀個區塊⽀持的最⼤的提現個數是178 筆。

7.1 checkWithdrawals  

ZKSwap V2版本預計將於6月份上线 支持Layer 2自主無限上幣

7.2 completeWithdrawals  

ZKSwap V2版本預計將於6月份上线 支持Layer 2自主無限上幣

8. Limitation 

1. Fee Token:32個;User Token:16352個;Pair:49152 

2. 兌換中交易對的2 個Token,其中一個必須是Fee Token;

3. 兌換時收取的費用將是2 個Token 中的一個Fee Token;

4. 所有交易的⾦額最⼤為120 bit,且任何中間計算變量的最⼤值為120 bit。

鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播信息之目的,不構成任何投資建議,如有侵權行為,請第一時間聯絡我們修改或刪除,多謝。

推薦文章

BTC波動率 : FOMC會議

關鍵指標 (香港時間 9 月 19 日凌晨 12 點 -> 中午 12 點): BTC/USD 現...

星球日報
4 8小時前

HTX成長學院:美聯儲降息50基點將會帶來哪些影響?

一、引言 2024 年 9 月 19 日,美聯儲宣布將聯邦基金利率下調 50 個基點至 4.75%...

星球日報
4 8小時前

預售超14萬部,速覽新一代Web3智能手機Solana Seeker

9 月 19 日,Solana Labs 旗下的 Solana Mobile 在新加坡的 TOKE...

星球日報
4 8小時前

深入分析World Liberty Financial的價值:特朗普競選經費劣勢下的新選擇

作者 : @Web3Mario(https://x.com/web3_mario) 摘要 :首先祝...

馬裏奧看Web3
4 8小時前

聚焦TOKEN2049:沉寂已久的加密市場有哪些新看點?

原文整理: flowie, ChainCatcher 9 月 18 日,Web3 最受矚目的年度峯...

星球日報
4 8小時前

DePIN專題報告:超過370個代幣上线,Helium用戶突破11萬大關

DePIN Helium | Glow | Livepeer | IoTeX | TADA E V...

星球日報
4 8小時前