专注 DeFi 生态的开发者
交易过程就无需任何可信任的第三方。
由智能合约驱动的 DEX 可以为用户省去负责的 KYC 审核,也可以帮助用户消除中心化交易所“拔网线”、暗中操纵价格、交易量造假和跑路带来的风险,所有的交易记录都在链上可查。
下面我们详细看一下 DEX 和 CEX 的区别,目前 DEX 市场的主要玩家,以及主流 DEX 是如何操作的?
为什么极客们偏爱使用DEX?
目前虚拟货币市场的交易主要由 CEX 主导,比如币安,火币和 OKEx 等。CEX 的交易流程类似银行,用户把自己的虚拟货币资产转入到交易所,在交易所的背书下完成币币交易,最后再把资产提取到自己的钱包。在交易所开户需要通过 KYC 认证,即上传自己的 ID 等个人资料。
而 DEX 的交易流程会简化很多,省去了 KYC 和“转入”、“提币”的步骤(这两个步骤是典型的 CEX 才需要的步骤)。用户使用自己的地址(在 DEX 交易所申请,或者导入自己的钱包,但用户都掌握私钥)与 DEX 的智能合约地址交易。用户自始自终都握有地址和密钥,资产完全掌握在自己手中。
总结起来说,跟 CEX 比起来,DEX 主要有两大优势:
一是匿名性。使用中心化交易所只需要一个公钥。与此同时,一些中心化交易所的创建者声称他们只发布开源软件,并不对社区使用该软件的行为负责,从而避免了 KYC 和 AML 问题。
二是安全性。在过去 11 年里,发生了太多起中心化交易所被黑客攻击的事件了,比如 Mt.Gox 和币安。直到现在,黑客的偷窃尝试就从没有停止过,每天都有黑客在试图通过各种方法寻找入侵中心化系统的漏洞。
由于去中心化交易所存在于计算机网络中,攻击分散式的交易所变得更加困难。没有单一的进入点或失败点。这使 DEX 变得更加安全。
去中心化交易所的优势很多,但并不完美。
一个明显的不足就是执行交易的效率不够高。去中心化交易所大都是在公链上运行,由于区块链技术本身的局限性,公链的出块时间和确认速度影响了交易效率,一笔交易需要较长时间来确认。
其次,区块链网络难以处理高并发的实时交易,容易形成交易拥堵。这些不足非常影响用户体验,对于有高频交易和量化交易需求的投资者来说,更是完全不能忍了。刚刚过去的“黑色星期四”对 DEX 进行一次压力测试,暴跌的市场行情导致大部分 DEX 出现了不同程度的交易延迟和阻塞,用户 gas 费过高,用户体验糟糕。而中心化的交易所就很擅长处理高并发实时交易,执行效率非常高。
最后,去中心化交易所的用户需要妥善保存自己的公钥、私钥和助记词,一旦丢失,资产就无法找回了。中心化交易所将客户信息与交易所分配的交易地址对应起来,头部交易所还会有双重验证机制,保障用户的资产不丢失。
所以,对于交易的安全性和隐秘性要求较高的开发者和极客们来说,他们更倾向在 DEX 上进行交易,而对于交易速度要求高的普通用户来说,CEX 一般会成为他们的首选。但是随着近两年 CEX 的不断暴雷和安全事件频发,越来越多的用户开始选择 DEX 去交易。
比如在刚刚过去的 2 月,FCoin 爆雷、投资者维权无门,币安两次临时维护,OKEx、Bitfinex 接连遭遇 DDoS 攻击……而 DEX 月交易量在此时创下了历史新高。根据 Dune Analytics 数据,2 月,DEX 交易量达 3.722 亿美金,较 1 月的 2.92 亿美金上涨了 62%,在此之前,DEX 交易量最高值为 2019 年 7 月时的 3.585 亿美金。
DEX 是如何操作的?
DEX 跟一般 CEX 最不一样的地方,就是交易行为发生在区块链上,就比如说 1 ETH 交换 10 BAT 来说,两者不一样的地方在于:
中心化交易所:在交易所本身的数据库中增减用户资产字段。
去中心化交易所:在区块链上直接交换,加密货币会直接发回使用者的钱包,或是保存在区块链上的智能合约。
这样直接在区块链上交换的好处在于交易所并不持有用户大量的加密货币,所有的加密货币会储存在区块链上使用者的钱包或智能合约控管。
接下来我们主要就 Uniswap、kyber 和 0x 主要的去中心化协议进行对比来了解 DEX 是如何操作的?
Uniswap
Uniswap 于 2018 年 11 月在以太坊主网上线,它在众多的去中心化的交易协议中是相对较新的一个,尽管 Uniswap 在 DEX 中起步比较晚,但是 Uniswap 的交易量早已超过了开始于 2017 年的 Bancor,在 DEX 交易量中一直稳居第一。
Uniswap 的设计与传统的限价订单模型不同,因为 Uniswap 协议为每个 ETH 和 ERC20 代币交易对创建了单一的流动性储备。
每个代币的流动性储备都是一个交易智能合约,其持有一定数量的 ETH 和 ERC20 代币。
Uniswap 交易合约作为自动做市商(AMM),根据储备中每个代币的相对数量来确定 ETH 和 ERC20 代币之间的汇率。用户无须填写买卖订单,而是通过添加一个代币并移除另一个代币来跟储备池交易。
例如,假如 DAI/ETH 储备池最初设置为 150,000 DAI 和 1,000 ETH,这就创建了 150DAI/ETH 的汇率。如果用户试图从 DAI/ETH 储备池中购买 10,000 DAI,那么,储备池中的 ETH 数量增加,并从池子中移除了 DAI。由此,对 DAI/ETH 的比率产生了下行压力,并提高了 DAI 价格。
需要注意的一个重要细节是价格取决于跟 DAI/ETH 储备规模相关的订单大小。Uniswap 的做市模式将始终提供流动性,意味着储备永远不会耗尽。
KyberNetwork
KyberNetwork 是一个数字资产与加密数字货币的即时交易和兑换的链上协议,基于 KyberNetwork 协议的链上去中心化交易所可为用户提供多种应用,包括构建各种交易 API 并提供给商家与用户。
KyberNetwork 支持跨链交易,其路线图包含了使用中继技术和类似于 Polkadot 和 Cosmos 这样的未来协议,以支持不同加密币种之间的跨链交易。
Kyber 网络中的参与者共分为 5 种角色:
1.在网络中发送和接收代币的用户。KyberNetwork 的用户包括个人用户、智能合约账户和商家。
2.为平台提供流动性的(一个或多个)储备实体。它可以是平台自己的储备库或者由其他注册者的造市第三方储备库。根据是否从公众那里取得贡献,储备库也被分为公共的和私有的两类。
3.为储备实体提供资金并分享平台的利润贡献者。这类参与者只存在于公共储备库中,从公众那里接收贡献来创建储备库。
4.维护储备库、决定兑换率并将该比率反馈给 KyberNetwork 的储备管理者。
5.KyberNetwork 运营者,负责在网络中添加、删除储备实体以及将代币对列入/移出交易列表。Kyber 团队将作为初始运营者引导平台的早期发展。后期将设置去中心化的管理来接替团队的运营者角色。每一位参与者都以不同的方式独立的与智能合约交互。
0x
0x 是一种混合的去中心化交易模型,部署在以太坊的智能合约集合,它指定了订单格式和交易执行流程。简单来说,协议告诉你这些智能合约知道什么,以及如何使用它们执行交易。
链上订单又费钱又缓慢,所以 0x 依赖于中继器(Relayer)模型。在 0x 的词典中,中继器是一个在中心化数据库中保存订单并在两个交易者之间匹配订单的进程。有许多中继器可供选择,例如,Radar Relay, ERC dEX, Paradex, DDEX 等等,这些都是构建在 0x 协议之上的应用程序。
让我们通过一个例子来理解 0x 架构。Bob 使用 Relayer GUI 创建一个订单,然后该 GUI 将转到 Relayer 的订单簿(中心化数据库)。Relayer 可以将此信息共享给其他 Relayer,以便让更多的交易者可以看到订单。
现在,Alice 想要接受 Bob 的订单,她使用 Relayer 的 GUI 执行命令。然后,Relayer 匹配请求并发送到 0x 的智能合约完成订单。
在创建/执行这些订单时,Bob 和 Alice 允许 0x 智能合约从他们各自的钱包中扣除资金。0x 智能合约验证订单并完成链上的令牌传输。
0x 协议创建了用于支付交易费用的 ZRX 令牌。所以,如果你使用 0x Relayer,您需要一些 ZRX 令牌来制作或接受订单。Relayer 也会收取一部分费用来托管订单簿。
0x 协议是当今业界使用最广泛的去中心化交易协议之一。第三方项目可以构建在 0x 协议之上,这意味着许多不同的去中心化交易所和 Relayer 都可以存在且同时共享相同的协议和流动性池,这是 0x 的一个优点。
但是,0x 协议只适用于 Eth 和在以太坊平台上发布的资产(ERC令牌)。它不兼容比特币协议或其他区块链协议,如 EOS、Monero、Stellar、Cardano、NEO 或 Tezos。这严重限制了 0x 协议的实用性,并明显阻碍了它成为全行业的解决方案。