動機
我們認識到穩定幣在 Web3 生態系統中發揮的重要作用,尤其是在 DeFi 中。其中, USDC因其高透明度和監管合規性而脫穎而出。 USDC的發行者 Circle 引入了跨鏈傳輸協定(CCTP),使用原生的銷毀和鑄造機制安全地跨鏈傳輸USDC 。
CCTP 是一款改變遊戲規則的工具,可推動USDC在多鏈世界中的採用,使開發人員能夠創建跨區塊鏈提供安全、1:1 USDC傳輸的應用程式。這消除了使用橋樑的額外風險。
然而,CCTP 有一個關鍵限制:等待時間。其鏈下證明服務需要在源鏈上進行區塊確認,以確保在目標鏈上鑄造USDC之前的最終性。此過程可能需要 20 秒到 13 分鐘不等,這對於需要即時轉帳的用戶來說並不理想。為了解決這個問題,CCTP Express 旨在利用 CCTP 的同時提供即時USDC橋接。我們將CCTP Express定位為CCTP的助推器工具,使用戶能夠從更快、更便宜的交易中受益。
我們相信 CCTP Express 是透過提供即時USDC橋接體驗來實現鏈抽象的重要工具。
長話短說
- CCTP Express定位為使用CCTP的助推器工具,讓使用者享受更快、更便宜的體驗;
- 它是一個基於CCTP構建的基於意圖的橋接系統,透過「Filler-Pay-First」機制實現即時USDC橋接;
- CCTP Express 是一種無需信任的設計,允許任何人在未經許可的情況下作為填充者或資料守護程序參與;
- 為了減輕填充者面臨的重組風險,CCTP Express 引入了根據使用者定義的啟動截止日期而變更的保險費。
- 為了降低交易成本,將還款和再平衡交易捆綁在一起,跨鏈訊息以哈希形式傳輸以減少資料大小。
主要原則
1.CCTP依賴
CCTP Express 專為增強 CCTP 而設計。所有資金再平衡必須僅透過 CCTP 完成,以避免面臨與其他橋樑相關的潛在風險。
2. 去中心化
這個系統必須是去信任的,以確保最大限度地保護每個人的資產。系統中的玩家,包括 Fillers 和 Datamaemon,都是無需許可的。
3、雙贏
設計應該使所有利害關係人受益——使用者、填充者和 CCTP。用戶獲得更快、更划算的體驗,儲值者在資金得到保障的同時獲得滿意的獎勵,CCTP在CCTP Express的支持下不斷壯大。
關鍵概念
CCTP Express 是一個基於 CCTP 建構的基於意圖的跨鏈橋接系統。加快交易速度的關鍵是採用「填充者先付款」機制。
當用戶提交橋接意圖時,填充者在源鏈上發起訂單,然後立即在目標鏈上調用 fillOrder 並將資金相應地轉移給用戶。
系統定期驗證付款並分批償還給填充者。如果需要,跨域的重新平衡可以透過 CCTP 完成。此結算過程不在用戶現場,將還款和再平衡捆綁在一起,以節省成本。
深入研究
CCTP Express採用Hub-and-Spoke架構,可分為三層系統:報價請求機制獲取用戶的橋接意圖,使填充網絡能夠認領並填寫這些訂單,最後進行結算層通過CCTP 並利用Iris(Circle 的鏈下證明服務)的證明服務定期償還填充者。
我們的設計遵循 ERC-7683,強調符合業界標準的重要性。這確保了跨鏈意圖系統可以互通和共享基礎設施,例如訂單傳播服務和填充網路。透過促進這種互通性,我們透過增加滿足用戶意圖的競爭來增強最終用戶體驗。下圖是CCTP Express的架構圖:
訂單發起
- 使用者簽署定義訂單參數的連結訊息:
function deposit(bytes32 recipient,bytes32 inputToken,bytes32 outputToken,uint256 inputAmount,uint256 outputAmount, uint32 destinationDomainId,bytes32 exclusiveFiller, uint32 exclusivityDeadline, uint32 initiateDeadline, uint32 fillDeadline,bytes calldata message) external;
- 該訂單將分發給填充者。 Filler 呼叫在來源鏈 SpokePool 上
initiate
。將建立一個CrossChainOrder
,並將用戶的資金轉移到 SpokePool 進行託管。 - 源鏈上的SpokePool向Circle的鏈下證明服務Iris提交
Deposit
訊息進行證明,隨後將產生DepositAttestation
。
填充網路完成訂單
填充者使用自己的資產在目標 SpokePool 上呼叫
fillOrder
,然後將資產從 SpokePool 轉移給使用者。目的鏈上的 SpokePool 向 Iris 提交
Fill
訊息,並產生FillAttestation
。
沉澱
無需許可的 Datadaemon 會擷取
DepositAttestation
和FillAttestation
並轉送到結算鏈上的 Hub Pool。Datadaemon 會定期在 Hub 池中呼叫
repayFunds
和rebalanceFunds
,這將收集所有證明並執行以下步驟:
迭代證明列表,
Deposit
和Fill
證明都支持有效的已執行訂單。決定每個灌裝機的所有有效灌裝的總結算金額。
如果 SpokePool 上有足夠的資金來償還填充者,則會向 Iris 發送 Merkle 根雜湊形式的
repayFunds
訊息。對於剩餘的未償付款,Hub Pool 將以 Merkle 根哈希的形式向 Iris 發送
rebalanceFunds
訊息,該訊息指示有剩餘資金的 SpokePool 將向另一個有赤字的池發送多少資金以滿足還款需求。
一旦
repayFunds
和rebalanceFunds
訊息得到Iris的證明,它們就會被送到各自的SpokePools。 Datamaemon 將使用 Merkle 根雜湊及其各自的交易詳細資料來呼叫 SpokePools 上的repayFunds
和rebalanceFunds
。因此,資金將被償還給填充者並發送到其他 SpokePool,以確保有足夠的資金來處理償還。從目標鏈上的 SpokePool 向填充者償還資金,並透過 CCTP 在不同鏈上的 SpokePool 之間重新平衡資金。
Cctp 填充結算
如果 Fillers 發起的訂單未被成交,任何人都可以呼叫
cctpFill
,將目標鏈 SpokePool 上的訂單狀態標記為RequestCctpFill
,並阻止任何 Fillers 成交。同時,SpokePool 會向 Iris 發出CctpFill
訊息進行證明。CctpFillAttestation
將用於替代5.中提到的FillAttestation
,並允許用戶資金透過CCTP路線進行轉移。
風險及解決方案
重組風險
重組風險唯一由填充者承擔。如果填充者在沒有等待源鏈上的最終確定的情況下太快地填充意圖,源鏈可能會重組並導致填充者損失,因為意圖已經在目標鏈上填充,並且填充者最終會空手而歸。
保險費有效地降低了重組風險,保險費根據使用者指定的initiateDeadline
而變化。如果initiateDeadline
夠長,填充者可以在發生重組時在源鏈上重新啟動CrossChainOrder
,確保用戶的資金再次轉移。保險費按以下公式計算:
在哪裡:
f(t)是保險費,是隨t變化的函數
V為交易量,代表最高保險費
e是自然對數的底
k是一個常數,控制費用的下降率
t是訂單建立時間和itiateDeadline 之間的時間
T是源鏈最終確定所需的時間
保險費隨著initiateDeadline
的變化而變化——它隨著訂單創建時間和initiateDeadline
之間時間的增加而減少:
由於當initiateDeadline
較長時,保險費會顯著降低(如果是原鏈上最終確定所需時間的2倍,則保險費幾乎為零),因此普通用戶可能會設置較長的initialDeadline來避免支付費用,從而最大限度地減少費用。
系統成本高
與直接使用 CCTP 橋接相比,設計的複雜性顯然意味著更高的成本。為了實現我們提供更快、更便宜的 CCTP 使用方式的目標,我們透過兩個關鍵策略降低成本:交易捆綁和資料壓縮。
交易捆綁-
Datadaemon 定期工作以調用中心池上的還款和重新平衡。此間隔是可調的,以確保每批處理足夠數量的事務。
在此架構設計中,gas 成本主要產生於透過 CCTP 和資金轉移進行再平衡。透過大量處理再平衡以及向填充者處理總金額的償還,這些成本可以分佈在多個交易中,從而降低任何單筆交易的成本。
資料壓縮-
跨鏈訊息透過 Circle 的鏈外證明服務 Iris 在分支池和中心池之間傳輸。為了最大限度地減少資料大小並降低 Gas 成本,這些訊息以雜湊的形式發送。
有關 CCTP 和 CCTP Express 之間的 Gas 消耗的詳細比較,請查看這篇文章。
常問問題
1. 對最終用戶意味著什麼?
當使用 CCTP Express 的前端或與 CCTP Express 整合的應用程式時,使用者將受益於更快、更便宜的跨鏈橋接USDC 的方式。系統利用CCTP作為底層資產橋樑,在增強使用者體驗的同時保持強大的安全性。
2. 可能的用例有哪些?
我們相信 CCTP Express 透過提供即時的USDC橋接體驗來實現鏈抽象至關重要。可能的用例包括 -
以 USDC 計價的 dApp
USDC被廣泛應用於各種 dApp,例如DYDX和 Polymarket。 dApp 可以整合 CCTP Express SDK,為使用者提供從所有 CCTP 支援的鏈的即時轉入和轉出,而無需通常的等待時間。
付款網絡
CCTP Express 可以為跨鏈用戶提供即時結算的交易體驗,使他們能夠用USDC從任何 CCTP 支援的鏈上購買咖啡。
錢樂高
套利者和解決者可以利用 CCTP Express 作為其跨鏈操作的支柱。在高速加密世界中,套利者或求解者非常不希望等待很長時間,CCTP Express 可以為他們提供卓越的速度,而無需擔心安全性,因為 CCTP Express 使用 CCTP 作為底層橋樑。
3. CCTP Express 與提供由鏈下代理人支援的跨鏈橋接的類似想法與其他基於意圖的橋接(例如 Across)有何不同?
CCTP Express與Across的主要差異在於:定位與結算機制。
定位——
雖然這兩種協定都是由填充器/中繼器支援的基於意圖的橋接器,但 CCTP Express 定位為使用 CCTP 的增強工具。
鑑於此重點,CCTP Express 與 CCTP 緊密整合,並與之同步發展。例如,如果CCTP支援EURC,CCTP Express也會立即支援。
這種一致性也適用於選擇 CCTP Express 支援的鏈。 CCTP Express 旨在涵蓋 CCTP 營運的所有 EVM 和非 EVM 鏈。與CCTP一樣,CCTP Express 採用 bytes32 位址格式,而不是 EVM 中使用的 20 個位元組位址,來處理許多非 EVM 鏈中的 32 位元組位址。
相較之下,Across 僅限於 EVM 鏈,因為它有隻支援 EVM 鏈的硬性需求。
結算機制——
在 CCTP Express 中,Hub Pool 智慧合約利用 CCTP 中使用的 Iris 證明服務來中繼和驗證訊息。來自各個 Spoke Pool 的存款和填充訊息被送到 Iris 進行證明,然後收集到 Hub Pool 中,後者在鏈上處理還款。
相較之下,Across 使用規範橋來中繼訊息,並利用UMA樂觀地驗證鏈下填充事件。由於UMA是在鏈下工作的,因此需要一個時間間隔作為爭議視窗。
與我們討論
為了塑造更好的產品,我們熱衷於與需要即時USDC橋接的填充者和團隊進行討論。如果有人對 CCTP Express 有興趣,我們這裡有一個公共電報群可以討論:加入群聊