什麼是路印協議Loopring?
路印協議Loopring是新一代資產交易協議和交易所。它採用去中心化技術,提供零風險的代幣交易所模式,並允許多家交易所透過競爭,對同樣的訂單進行鏈外撮合及鏈上清結算。Loopring將徹底解決現有中心化交易所模式的一些固有風險。
協議設計
我們用上圖中的三邊交易,簡要講解下采用 Loopring 協議的撮合交易過程。該過 程如下:
1. 使用者甲、乙、丙分別對 Loopring 撮合智慧合約(Loopring Matching Contract)授 權,授權後該合約可對使用者指定代幣賬號做不超過一定額度的轉出操作1。在上面 例項中,合約可最多從使用者甲的賬號轉出 1000 個 A 代幣,從使用者乙賬戶轉出 9 個 B 代幣,從使用者丙賬戶轉出 100 個 C 代幣;
2. 使用者甲、乙、丙分別生成自己的訂單,並用私鑰對其進行數字簽名。訂單不再區 分買單和賣單,所有訂單都被視為交換單 — 甲的訂單宣告:甲願意賣出不多於 1000 個 A 代幣,買到儘可能多但不少於 10 個 B 代幣;如果是部分成交,那麼 A 到 B 的兌換率不得低於 1000/10 = 100.0(賣出代幣數量除以買入代幣數量)。訂 單中還可以包含其它引數,我們在章節 3.7中會對訂單引數進行說明;
3. 甲、乙、丙分別將自己的訂單透過適當的方式傳送到一個或多個交易所;
4. 交易所收到上述三個訂單,將它們分別放到三個對應的訂單表(orderbook)中,並 實時透過資料更新計算每個訂單的狀態,同時不斷努力尋找能夠撮合的一 組訂單 — 我們後續稱之為交易環路或者撮合環路。一旦確定三個訂單的當前狀態 可以撮合成功,且收益滿足預期,即決定實施這個撮合;
5. 交易所對撮合交易簽名後傳送到 Loopring 撮合智慧合約地址;
6. 撮合智慧合約驗證四方簽名,之後驗證三個訂單(的最新狀態)是否可以真正成
交。若無法成交,合約終止(交易所依然要消耗一定的油費);否則智慧合約分別
計算出甲、乙、丙三方各自需要支出的金額,以及交易所該收取的費用,並且實
時將甲、乙、丙賬號中的資產進行互轉,並完成對交易所的費用支付 — 如下圖
所示。在交易過程中,撮合智慧合約還會呼叫 Loopring 註冊智慧合約(Loopring
Registration Contract)來計算交易所應該給予該筆交易的費用折扣;在交易完成
前,還會呼叫 Loopring 統計智慧合約(Loopring Stats Contract)對交易所以及
代幣相關的統計資料做更新。
圖 2: Loopring 協議:交易環路結算
7. 交易所監聽新的區塊和鏈下新的交易資料,並根據這些資料更新訂單表,然後不 斷進行新的撮合。
智慧合約
Loopring 協議協議可能包含多個智慧合約,包括但不限於:
撮合合約負責計算並確認交易環路中每個訂單的狀態,計算成交金額和成交量,對 交易進行清算轉賬。該合約還會與其它合約互動,是 Loopring 協議的入口合約;
訂單合約負責更新訂單狀態以及對取消訂單提供支援;
交易所註冊合約負責維護和更新一系列支援 Loopring 協議的交易所,為交易所代 幣抵押和預設引數預設值提供支援;
統計合約計算任何兩個幣種之間的成交量,成交價,以及不同交易所的貢獻度等 指標,以及這些指標的某些滑動平均值。這些指標是訂單發起者授權撮合的重要 參考依據,同時也可以作為某些預測市場的輸入,並且為以後可能的協議拓展(比 如對條件單的支援)提供輸入(Oracle)。
這裡,不排除將上述合約進一步拆解或合併的可能。同時值得指出:Loopring 協議
中的智慧合約是完全開放的,這意味著它們可以被任何的 dApp 直接或者間接呼叫。因
此整個協議即使一個完善的整體,又是個開放的,單獨可用的元件的集合。
Loopring 協議適用於任何支援類 ERC20 代幣發行機制和智慧合約的區塊鏈平臺。
我們將選擇以太坊和 EOS 部署第一個版本的 Loopring 協議。具體研發計劃詳見附錄。
我們會繼續深入研究 Loopring 協議的細節,完善概念證明的開發;同時我們將籌
建非營利性的 Loopring 基金會,透過基金會在開源社羣進行眾籌和代幣發行。
關於更多路印協議資訊請點選