迪斯克DEX質押借貸系統開發技術方案

搭建猿punk2558發表於2023-05-05

比原鏈的跨鏈模型也脫離不了上面敘述的跨鏈模型,當前主要使用的是公證人機制和雜湊時間鎖的模式。

因為側鏈Vapor本身是沒有資產的,所以我們使用公證人機制將主鏈的資產轉移到側鏈上(實際上是在主鏈鎖定資產,在Vapor側鏈創造資產),同時因為公證人機制需要一定的時間進行簽名稽核,所以我們再使用雜湊時間鎖的機製做補充,可以快速的交換主側鏈之間的資產(但雜湊時間鎖機制不會創造資產,只是對現有的主側鏈資產進行跨鏈互換)。

公證人(閘道器)機制

參與過比原側鏈超級節點投票對於跨鏈轉移BTM不會陌生,迪斯克DEX系統13z開4z77發z558,在Bycoin中透過切換到側鏈錢包,可以實現一鍵跨鏈。

透過一鍵跨鏈就可以將BTM或者其他資產跨到側鏈上,從而在側鏈上進行資產交換。那麼公證人機制背後的原理是怎麼樣的呢?忽略其中的技術細節,核心就是價值生成和銷燬,資產託管和主側鏈的介面通訊,如下圖所示

每當從主鏈轉移到側鏈,就需要在側鏈上創造相應的資產,而如果要從側鏈上轉回主鏈,則需要銷燬側鏈上相應的資產,這就是價值的生成和銷燬。當主鏈的資產跨鏈到側鏈上,就需要對主鏈的資產進行託管,出於安全的考慮,一般都會採用多籤的方式,還有對大額資產進行冷熱分離。

先介紹幾個概念:

1.驗證人:側鏈的出塊人,就是當前的正式出塊的超級節點方(前十的超級節點)。

2.收集人:監控主鏈鎖定在聯邦合約地址的交易,收集主鏈的交易並在側鏈上建立等額的資產,監控側鏈跨鏈請求,銷燬側鏈的資產並釋放等額資產到主鏈上。驗證人和收集人都是系統中的角色,並不是指代實際的人,但其中可能會需要人進行參與。

3.聯邦地址:由多名聯邦成員公鑰生成的多籤地址。

當使用者點選一鍵跨鏈之後,發生了什麼事情?

如果是從主鏈到側鏈:

1.收集人監測到主鏈的聯邦地址接受到了一筆轉賬;

2.收集人等待主鏈打包,當到達一定確認數後這筆交易將不能被逆轉;

3.收集人在側鏈上建立等額的資產,透過多籤進行稽核確認,並打入到使用者的側鏈地址;

4.使用者的側鏈上獲得可以流通的資產;

如果是從側鏈到主鏈:

1.收集人監測到一筆側鏈銷燬資產的交易(這裡使用者並不需要將自己的側鏈資產打到聯邦地址上,而是自己發起一筆銷燬側鏈資產的交易);

2.收集人等待側鏈打包,當到達一定確認數後這筆交易將不能被逆轉;

3.收集人將聯邦地址中等額的資產,透過多籤進行稽核確認,並打入到使用者的主鏈地址;

4.使用者在主鏈上獲得可以流通的資產;

閘道器(公證人)機制則是一個被實際場景檢驗過的高效可實用機制,閘道器起到了建立跨鏈信任背書、統一跨鏈通訊協議、協調主側鏈交易確認的重要作用。但在實際場景裡,跨鏈閘道器會面臨中心化運營的弊端,導致跨鏈協作無法完全去信任,互操作性不高。後續的開放式聯邦閘道器管理框架OFMF就是為瞭解決中心化的問題,這塊後續會專門寫文探討,這裡不做贅述。

同時因為需要人工多籤的原因,跨鏈需要使用者較長的等待時間,所以又推出了基於雜湊時間鎖的跨鏈資產原子互換機制,和公證人機制進行一個互補。

雜湊時間鎖跨鏈機制

雜湊鎖定模式是指使用者在規定的時間段對於雜湊值的原值進行猜測來支付的一種機制。簡單講,就是在智慧合約的基礎上,雙方先鎖定資產,如果都在有限的時間內輸入正確雜湊值的原值,即可完成交易。

透過公證人機制,可以將比原主鏈的資產遷移到側鏈上去,那麼透過雜湊時間鎖,則可以將比原主鏈和側鏈的資產直接進行交換。

比如你在主鏈上有BTC,我在側鏈上有ETH,如果使用公證人機制,我需要首先將BTC跨到側鏈上去,或者將ETH跨到主鏈上來,這樣才能進行互換;而有了雜湊時間鎖的機制,就可以直接把我主鏈上的資產打給你,而你將側鏈上的資產打給我,並能保證整個過程的原子性和資產安全。

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/70020115/viewspace-2950191/,如需轉載,請註明出處,否則將追究法律責任。

相關文章