本文是QuarkChain創始人兼CEO週期博士在ethresear.ch上提出的可即時存入提取的Optimistic 跨鏈橋方案,可以用於任意兩個基於EVM 的Layer1 協議之間進行跨鏈存入提取,操作可立即完成且不要求兩個協議間使用相同的共識。其基本設計思想在於,滿足一定前提條件(有質押且可信)時,允許所有人無限鑄造標的Token。
概述
在本文中,我們提出一套在兩個基於EVM 的鏈之間的即時Optimistic ERC20 傳輸(即橋)方案。而不是用戶必須等待很長的挑戰時間的,在大多數Optimistic解決方案中(例如,主網和POS 鏈之間的Optimistic橋)使用的兩步機制(請求/挑戰)。這個方法可以立即完成對目標鏈的操作(例如,鑄造Wrapped Token 或從加密箱合約中提取Token)。此外,該方法與鏈共識無關,這意味著可以輕鬆擴展以橋接多個EVM 鏈上的資產,而不管它們的共識如何。
方案前提
帶有代幣T 的源鏈S
帶有Wrapped Token W 的目標鏈D
想要將源鏈S 上的代幣T 以1:1 的比例兌換成目標鏈D 上的代幣W 的用戶
鑄造者將一定數量的代幣W 作為抵押品放在目標鏈D 上並為用戶鑄造代幣W
帶有代幣T 的源鏈S
帶有Wrapped Token W 的目標鏈D
想要將源鏈S 上的代幣T 以1:1 的比例兌換成目標鏈D 上的代幣W 的用戶
鑄造者將一定數量的代幣W 作為抵押品放在目標鏈D 上並為用戶鑄造代幣W
基本設計理念
最近CHALLENGE_PERIOD 鑄造價值的總和<= 鑄造者鎖定在目標鏈D / COLLATERAL_RATIO 上的抵押品價值;以及
鑄幣者在最近的CHALLENGE_PERIOD 中沒有受到挑戰。
最近CHALLENGE_PERIOD 鑄造價值的總和<= 鑄造者鎖定在目標鏈D / COLLATERAL_RATIO 上的抵押品價值;以及
鑄幣者在最近的CHALLENGE_PERIOD 中沒有受到挑戰。
示例(好的情況)
在時間0,用戶1 從ETH 鎖定/轉移20k USDT,鑄幣者監測到事項並在BSC 上向用戶鑄造20k WUSDT(此時剩餘配額為30k)。
在時間12h,用戶2 從ETH 鎖定/轉移30k USDT,鑄幣者監測到事項並在BSC 上向用戶鑄造30k WUSDT(此時剩餘配額為0)。
在時間18h,用戶3 從ETH 鎖定/轉移10k USDT,鑄幣者監測到事項,但是,它無法鑄造任何WUSDT,因為它在最近的1 天窗口中已經鑄幣了50k。
在時間24.1h,鑄幣者在BSC 上向用戶3 鑄造10k USDT(此時剩餘配額為10k)。
在時間0,用戶1 從ETH 鎖定/轉移20k USDT,鑄幣者監測到事項並在BSC 上向用戶鑄造20k WUSDT(此時剩餘配額為30k)。
在時間12h,用戶2 從ETH 鎖定/轉移30k USDT,鑄幣者監測到事項並在BSC 上向用戶鑄造30k WUSDT(此時剩餘配額為0)。
在時間18h,用戶3 從ETH 鎖定/轉移10k USDT,鑄幣者監測到事項,但是,它無法鑄造任何WUSDT,因為它在最近的1 天窗口中已經鑄幣了50k。
在時間24.1h,鑄幣者在BSC 上向用戶3 鑄造10k USDT(此時剩餘配額為10k)。
示例(有Challenge的情況)
在時間0,用戶1從ETH鎖定/轉移20k USDT。鑄幣者監測到事項,然而,它鑄造了30k WUSDT,即額外的10k WUSDT鑄造給了BSC 上的用戶。
在CHALLENGE_PERIOD 內,驗證者捕獲惡意鑄造者並以多數票在BSC 上向鑄幣者發起Challenge。
挑戰成功後,驗證者將獲得從鑄幣者抵押品中以罰金率PENALTY_RATE * 10k = 10k WUSDT 作為獎勵,並從鑄幣者的抵押品中燃燒10k WUSDT 以平衡額外鑄造出的10k WUSDT。這樣一來,鑄造者將只剩100k - 20k = 80k WUSDT 作為剩餘抵押品(並且可以在任何CHALLENGE_PEROID 中繼續鑄造40k WUSDT)。
在時間0,用戶1從ETH鎖定/轉移20k USDT。鑄幣者監測到事項,然而,它鑄造了30k WUSDT,即額外的10k WUSDT鑄造給了BSC 上的用戶。
在CHALLENGE_PERIOD 內,驗證者捕獲惡意鑄造者並以多數票在BSC 上向鑄幣者發起Challenge。
挑戰成功後,驗證者將獲得從鑄幣者抵押品中以罰金率PENALTY_RATE * 10k = 10k WUSDT 作為獎勵,並從鑄幣者的抵押品中燃燒10k WUSDT 以平衡額外鑄造出的10k WUSDT。這樣一來,鑄造者將只剩100k - 20k = 80k WUSDT 作為剩餘抵押品(並且可以在任何CHALLENGE_PEROID 中繼續鑄造40k WUSDT)。
示例(最壞情況)
在時間0,鑄幣者在BSC 上惡意鑄幣給自己50k WUSDT。
在CHALLENGE_PERIOD 內,驗證者捕獲惡意鑄造者並以多數票在BSC 上向鑄幣者發起Challenge。
挑戰成功後,驗證者將從鑄幣者的抵押中獲得PENALTY_RATE * 50k = 50k WUSDT 作為懲罰獎勵,並從鑄幣廠抵押品中銷毀50k WUSDT 以平衡惡意鑄造的50k WUSDT。因此,鑄幣廠將只有100k - 100k = 0 WUSDT 作為剩餘抵押品。
在時間0,鑄幣者在BSC 上惡意鑄幣給自己50k WUSDT。
在CHALLENGE_PERIOD 內,驗證者捕獲惡意鑄造者並以多數票在BSC 上向鑄幣者發起Challenge。
挑戰成功後,驗證者將從鑄幣者的抵押中獲得PENALTY_RATE * 50k = 50k WUSDT 作為懲罰獎勵,並從鑄幣廠抵押品中銷毀50k WUSDT 以平衡惡意鑄造的50k WUSDT。因此,鑄幣廠將只有100k - 100k = 0 WUSDT 作為剩餘抵押品。
擴展
在目標鏈上使用Native Token 而不是Wrapped Token
本地鎖定的原生代幣(並在另一條鏈上鑄造/提取)
抵押品,即通過抵押品提供流動性。
本地鎖定的原生代幣(並在另一條鏈上鑄造/提取)
抵押品,即通過抵押品提供流動性。
其他擴展
初始Wrapped Token 轉移。由於鑄幣者的抵押品可能沒有wrapped 代幣,我們仍然可以使用兩步機製或多數投票來創建這些初始包裝的代幣。
支持多鏈。鑄幣者可以監聽多條鏈,只要在任何一條鏈上發現相應的鎖定/轉移事件,就可以進行鑄造。
改變驗證者集設置。我們可以在開始時固定使用一套具有良好信譽的驗證者集,但可以進一步使用由現有Optimistic橋開發的驗證器設置更改協議。
大額轉賬。兩步請求/挑戰機制仍然可以使用,而鑄幣者可以不斷鑄幣,直到滿足大轉移。
避免Gas War 。如果多個鑄幣者想要在源鏈上鑄幣一個鎖定/轉移事件,用戶可以為跨鏈轉移指定一個首選鑄幣者,並且只有首選鑄幣者才能在PREFERRED_MINT_PEROID 內鑄幣(例如,30 分鐘)
初始Wrapped Token 轉移。由於鑄幣者的抵押品可能沒有wrapped 代幣,我們仍然可以使用兩步機製或多數投票來創建這些初始包裝的代幣。
支持多鏈。鑄幣者可以監聽多條鏈,只要在任何一條鏈上發現相應的鎖定/轉移事件,就可以進行鑄造。
改變驗證者集設置。我們可以在開始時固定使用一套具有良好信譽的驗證者集,但可以進一步使用由現有Optimistic橋開發的驗證器設置更改協議。
大額轉賬。兩步請求/挑戰機制仍然可以使用,而鑄幣者可以不斷鑄幣,直到滿足大轉移。
避免Gas War 。如果多個鑄幣者想要在源鏈上鑄幣一個鎖定/轉移事件,用戶可以為跨鏈轉移指定一個首選鑄幣者,並且只有首選鑄幣者才能在PREFERRED_MINT_PEROID 內鑄幣(例如,30 分鐘)
相似
它與具有不同“借貸”約束的借貸協議(例如Compound/Aave)有一些相似之處。
它與具有不同“借貸”約束的借貸協議(例如Compound/Aave)有一些相似之處。