區(qū)塊鏈MOLDEX交換協(xié)議介紹
目前 有許多基于 ERC 721 的數(shù)字資產(chǎn),包括 Cryptokitties ,但是 區(qū)塊鏈游戲的真正 價值將在未來,不僅僅限于角色上而是游戲中的物品交易也會在區(qū)塊鏈上進(jìn)行交易。 為此, 需要能夠自由交換以無偽令牌表示的游戲內(nèi)物品和以非偽造令牌表示的游戲角色的協(xié)議。 由于無形令牌不僅可以像 ERC 20 那樣以貨幣形式流傳,而且可以按照 ERC 1155 的標(biāo)準(zhǔn) 來表示,所以其利用預(yù)測會在將來變得越來越多。
通過 支持 Fungible 令牌和非 Fungible 令牌 ,根據(jù) ERC 20 和 ERC 721 標(biāo)準(zhǔn), MOLDEX 可以實現(xiàn)與現(xiàn)有的分布式交換機(jī)不同的作用。
MOLDEX 還提供無信任,實時,高吞吐量的交易以及基于區(qū)塊鏈的支付。 通過 MOLDEX 集中管理交易驗證并將交易發(fā)送到以太坊,用戶可以持續(xù)交易,無需等待在網(wǎng)絡(luò)上批準(zhǔn)交 易并立即處理多個訂單或者可以立即取消訂單而不使用 Gas 。
MOLDEX 的特點
MOLDEX包括智能合約,交易引擎和交易處理中介。 在智能合約上,所有資產(chǎn)都以可靠的 方式存儲,并執(zhí)行數(shù)字資產(chǎn)的交換。 此外,由于所有交易都需要由用戶的私鑰批準(zhǔn),因此 不太可能出現(xiàn)問題,例如第三方以及第三方的偽造。
與其他分布式交易所不同,MOLDEX 的智能合約的設(shè)計使得只允許交易所向以太坊發(fā)送簽名交易。 這允許 MOLDEX 控制交易的順序并將訂單匹配與最終結(jié)算分開,因此如果用戶 交易,則訂單將實時更新。 同時,用戶的私鑰用于授權(quán)智能合約上的交易,此批準(zhǔn)可以防 止 MOLDEX 方啟動未經(jīng)授權(quán)的交易。
用戶的簽名訂單被交給管理訂單匹配的交易系統(tǒng)。 在以太坊中,每個交易都以正確的順序 挖掘,然后發(fā)出交換對訂單對(交易中介),以確保智能合約上的余額與交易余額同步。 通過控制交易順序,MOLDEX 可以結(jié)合 DEX 安全性和可審計性提供集中交換的速度和 UX。 基于以上特征,可以說 MOLDEX 具有以下特性。
不可信
關(guān)于分布式交換的重要事情是用戶管理私鑰。 在 MOLDEX 中,存款和退出智能合約是用 戶在下訂單時直接請求并使用密鑰簽名的機(jī)制,因此用戶即使對交易方存在著不信任的情 況下也可以實現(xiàn)快速的資產(chǎn)交換。
快速交易
在與鏈上匹配的傳統(tǒng)分布式交換機(jī)上,它被設(shè)計為在實際使用中不切實際,因為每次進(jìn)行 交易時都需要等待訂單被分塊。 然而,在 MOLDEX 的情況下,訂單的匹配僅在鏈下中進(jìn) 行,并且區(qū)塊鏈用于交換實際資產(chǎn),因此可以從用戶的角度實時地進(jìn)行 UX 交易。
快速的訂單更新
同樣,關(guān)于更新訂單,可以通過利用現(xiàn)有數(shù)據(jù)庫幾乎實時地進(jìn)行更新。
取消時不消耗 Gas
訂購時,要求用戶簽署訂單數(shù)據(jù),但訂單本身在數(shù)據(jù)庫中進(jìn)行管理,直到交易訂單匹配為 止。 因此,你無需在取消和等待之前盯著屏幕,或者只需取消即可支付 Gas。
可以訂購多個訂單
MOLDEX支持多個訂單,允許你一次購買大量資產(chǎn)。 但是,每個匹配的買入和賣出訂單都 會發(fā)出交易。
所有 Assets 都可以在 Ethereum 上進(jìn)行交易
為了實現(xiàn) MOLDEX 的概念,還可以根據(jù)下面的 ERC 標(biāo)準(zhǔn)進(jìn)行令牌交換。
? ERC20
? ERC721
? ERC 1155
MOLDEX 中的交易流程
接下來,我們將看到在 MOLDEX 上實際執(zhí)行交易時的流程。 下圖顯示了在 MOLDEX 上執(zhí) 行交易時的流程。
0. 新注冊
首先,用戶新創(chuàng)建或?qū)胍蕴坏牡刂?,并使用自己設(shè)置的密碼在 MOLDEX 中重 新注冊。 當(dāng)然,與集中式交換不同,用戶自己管理地址的密鑰。
1. deposit
MAKER 和 TAKER 都直接存入智能合約。 你可以隨時提取存入的資產(chǎn)。
2. 反映在數(shù)據(jù)庫中
請參閱智能合約并更新管理 MAKER 和 TAKER 余額的數(shù)據(jù)庫。
3. 訂購 MAKER
MAKER 可以以任何價格和數(shù)量下訂單。 MAKER 使用其私鑰對訂單數(shù)據(jù)進(jìn)行簽名 并將其發(fā)送到服務(wù)器。 如果交易在一段時間后沒有發(fā)生,MAKER 的訂單將自動失 效。
4. 驗證 DB 中的訂單數(shù)據(jù)和存儲
在服務(wù)器端驗證 MAKER 的簽名是否正確,數(shù)據(jù)是否足夠(存在余額)。 例如,如 果 A 的簽名數(shù)據(jù)與 A 的地址不符,則該訂單被拒絕為非法訂單數(shù)據(jù),因此其他人不 可以在沒有共享密鑰的情況下冒充 A 并下單。 驗證完成并確認(rèn)訂單數(shù)據(jù)正確后, 將其存儲在數(shù)據(jù)庫中。
5. 訂購 TAKER
TAKER 發(fā)出訂單,其價格與 MAKER 設(shè)定的董事會信息相匹配。 如果你想以任意價格下訂單,請作為 MAKER 下單。
6. 驗證訂單數(shù)據(jù)
在服務(wù)器端,驗證 TAKER 的簽名是否正確,數(shù)據(jù)是否足夠(存在余額)。
7. 匹配
經(jīng)驗證的 TAKER 訂單與通過交易匹配引擎從數(shù)據(jù)庫獲得的 MAKER 的訂單配對。
8. 數(shù)據(jù)庫更新
并更新匹配的交易訂單對和用戶的余額。 此時,雖然事實上并未在以太坊的區(qū)塊 鏈上建立交易,但由于訂單狀態(tài)是在鏈外管理的,因此用戶可以立即轉(zhuǎn)到下一個交 易。 當(dāng)交易未建立時,狀態(tài)記錄在 DB 中。
9. 交換資產(chǎn)交換
當(dāng) MAKER 和 TAKER 的順序匹配時,從服務(wù)器端執(zhí)行 Smart Contract 的交易功 能。
10. 更新智能合約的狀態(tài)
交易在以太坊網(wǎng)絡(luò)上獲得批準(zhǔn),資產(chǎn)交換結(jié)束,錢包內(nèi)容也成功更新。
在這里,我們將首先訂購的人成 MAKER,而那些從另一方訂購的人稱為 TAKER。
交易匹配系統(tǒng)
強(qiáng)大的交易平臺圍繞有效的訂單分配算法構(gòu)建,也稱為匹配引擎。 該算法是每次交換的核心。MOLDEX 采用 FIFO 的 Price-TIme-Priority 算法,這是最簡單的算法。
首先,讓我們考慮以下模型來理解匹配引擎的基本概念。
1. 順序
它對應(yīng)于 MOLDEX 中 Taker 的順序。
2. 手持訂單
這是 MOLDEX 中的一組 MAKER 訂單。
3. 交易
與訂單簿訂單匹配的訂單將被視為交易。 在 MOLDEX 的情況下,匹配對將在此之后廣播到以太坊的網(wǎng)絡(luò)。
4. 無與倫比的訂單
與 Orderbook 訂單不匹配的訂單或部分處理為 Trade 的訂單將作為不匹配訂單添加到 Orderbook。
當(dāng) Order 與 Orderbook 完全匹配時
匹配引擎總是試圖找到特定訂單的最佳價格。 在這種情況下,Sell 1@99 匹配Buy 1@100訂購的便宜匹配,Sell 1@100不匹配仍然在訂單簿中。
當(dāng) Order 與 Orderbook 部分匹配時
購Buy 4@100訂單,Sell 1@99和賣出Sell 2@100訂單匹配。 剩余的Buy 1@100被 添加到訂單簿中,因為沒有匹配的賣單。
如果訂單與 Orderbook
不完全匹配如果訂單與訂單的訂單不完全匹配, 它將作為 MAKER 添加到 Orderbook 當(dāng)中。
FIFO
如果多個訂單有可能與當(dāng)前訂單匹配,則系統(tǒng)地不清楚要匹配的訂單。 因此,除了上述基 于價格的算法之外,F(xiàn)IFO(先入先出)的概念介紹如下。
也就是說,對于相同價格的訂單,由于優(yōu)先處理具有較舊時間的訂單,在價格?—?時間優(yōu)先 級中,發(fā)現(xiàn)價格和時間按照匹配的順序排列。
綜述
由于穩(wěn)定協(xié)議需要時間來解決快速變化的區(qū)塊鏈技術(shù),因此 MOLDEX 的交換協(xié)議不太可能 迅速傳播。 此外,顯而易見的是,對 MOLDEX 交換協(xié)議的需求的存在與否首先成為一個 問題,因為幾乎沒有 Dapps 本身 在區(qū)塊鏈上同時攜帶了Fungible資產(chǎn)和非Fungible資 產(chǎn)。 但是,在未來,如果將第二層技術(shù)等突破性實用化,并且準(zhǔn)備好能夠處理大量資產(chǎn)交 易的基礎(chǔ)設(shè)施中,對于 MOLDEX 提出的協(xié)議的需要是不言而喻的。 因此,現(xiàn)在可以說它 尚處于為了未來的需求而還在進(jìn)行研究和開發(fā)的階段。 MOLD 團(tuán)隊,我們將繼續(xù)探索游戲 的未來,并專心的開發(fā)所需的功能和協(xié)議為將來所帶來改變。