摘要:Connext 新推出的跨二層交易方案Nxtp 與年初上線的Vector 最大不同是僅使用鏈上數據,不引入鏈外數據,但不適合小額交易。
連接 新推出的跨二層交易方案Nxtp 與年初上線的 向量 最大不同是僅使用鏈上數據,不引入鏈外數據,但不適合小額交易。
撰文:潘致雄
作為為數不多的專註解決二層網絡之間互操作性的團隊,Connext 在今年年初在主網上線了Vector 的0.1.0 版本,而在上週該團隊又推出了 Nxtp,該方案完全採用鏈上數據模式以提升系統穩健性,並為開發者提供了跨L2 網絡進行智能合約互相調用的可能性。
Nxtp 協議的全稱是 「非託管跨鏈傳輸協議」(Noncustodial Xchain Transfer Protocol),所以該名稱也很好的解釋了協議的特點:非託管、專注於跨鏈。不過該方案的設計也因此做出了一些取捨,比如大規模的小額支付仍然更適合用Vector 來實現。
Connext 的Logo 已更新
此前Connext 於今年1 月在主網上線了Vector 的0.1.0 版本,該方案使用了狀態通道技術,允許資產在以太坊的二層網絡(包括 零知識匯總)和ETH 2 的分片,甚至是其它公鏈(兼容EVM)之間自由轉移,而無需等待較長的退出時間。開發人員可將Vector 集成至其應用程序或協議中,來實現小額支付。
Connext 也在隨後的短短半年的時間內完成了兩次融資,分別拿到了 多鏈資本、ConsenSys 網格、1kx、幣庫 等多個頭部機構接近1500 萬美元的資金。 7 月時他們表示團隊成員有8 人,計劃在半年到一年的時間內將員工數擴大到20 人左右。
Nxtp 將在實現跨鏈交易方面完全取代現有的二層轉賬協議Vector,目前已部署至以太坊測試網和二層網絡的測試網,包括 格爾利、林克比、樂觀-柯文、仲裁員?-rinkeby 和 孟買,併計劃在未來三週內正式上線。後續還將支持以太坊、Arbitrum、Optimism、多邊形、幻影、xDai 和幣安智能鏈以及更多與EVM 兼容的系統。
這個Nxtp 究竟採用了什麼機制,相比此前的Vector 有哪些改進,又做出了哪些取捨呢?
核心機制:三步完成交易
簡單來說,Nxtp 的跨鏈交易將通過三個步驟完成。
第一個步驟被稱為「交易路由的選擇和拍賣」,用戶選擇具體的鍊和資產,然後提交轉賬信息開啟拍賣。路由節點在獲得這些信息後,需要提交私密的出價信息,其中要包含完成轉賬的時間和價格範圍。
第二個步驟被稱為「準備交易」,用戶提交一個包含路由節點簽名的出價信息給Nxtp 的合約後,這個交易會鎖定用戶在該鏈的資產。當路由節點檢測到了一個在合約中的交易事件後,就可以在目標鏈上鎖定這條鏈的資產流動性。路由節點鎖定的資金量是「發送金額」減去「拍賣費」,所以路由節點能從這筆交易中賺得部分收益。
第三個步驟是「執行交易」,用戶提供交易簽名以解鎖目標鏈上的資產,而路由節點可以使用該用戶公開的簽名信息從原鏈中獲取資產。
團隊表示,在這個流程中的任何時候,該交易都可以被取消。一旦該交易超時,則交易可以被任何一方取消。這也是為什麼他們認為Nxtp 保持了和Vector 跨鏈交易一樣的安全模型。
與Vector 最大不同:僅使用鏈上數據,不引入鏈外數據
Vector 這樣的狀態通道設計其實涉及了鏈上和鏈下數據兩部分,節點需要同步兩者數據,所以也就增加了流程的複雜度。對於用戶來說,需要在瀏覽器中存儲這部分的鏈下數據,但是這部分數據的可靠性沒法保證。
另外Vector 的整個工作流也是需要多次交互的,整個流程需要進行12 次狀態更新,而且這些相關的參與方都需要在線才可以進行驗證和簽署更新。
相比Vector,Nxtp 僅使用鏈上數據,所以不需要鏈下的狀態數據或者任何形式的數據庫,也就不需要在瀏覽器中存儲狀態數據了,而對於路由節點也就可以完全實現無狀態性(stateless)。
而對於用戶來說,使用流程仍然是在接受資金的鏈上提交一個簽名信息即可。另外,由於Nxtp 是一個面向智能合約的系統,所以對於開發者來說,構建智能合約對智能合約的跨鏈交互也是未來可以探索的方向。
如果以一句話總結,只需要記住在使用Nxtp 之後,交易雙方的所有信息都可以在鏈上獲得,不需要鏈外的信息。
取捨:不適合批量小額交易
由於Nxtp 是一個通用的跨鏈交易協議,並不使用鏈下的狀態數據構建通道,所以這也意味著它不能被用來進行批量的條件轉賬,也就是通常意義上的小額支付場景。
而且雖然Nxtp 的設計考慮到了各種細節,不過路由節點還是有一個要求的,就是必修要在一定的時間窗口內回收資金,當然這個時間的範圍可以設置更高,比如幾天。但總體來說,Nxtp 還是比狀態通道更安全一些,因為狀態通道方案中對這個時間窗口的要求不僅是路由節點,還包括了用戶。