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