SCP 应用打造:新一代的无链 DEX

  • outprog
  • 更新于 2021-12-23 18:48
  • 阅读 2942

本文会探讨一种新的 DEX 构建模式,它具备 Uniswap 的自动做市的特性,具备区块链一样的安全特性,但是没有 MEV,并且拥有几乎无限的性能拓展能力。

去中心化应用不一定需要构建在以太坊或者某一条公链上。 当我们在谈论 DEX 的时候,几乎都是指 Uniswap 这样的运行在以太坊上的智能合约程序。本文会探讨一种新的 DEX 构建模式,它具备 Uniswap 的自动做市的特性,具备区块链一样的安全特性,但是没有 MEV,并且拥有几乎无限的性能拓展能力。

Uniswap 是怎么运行的?

自动做市的思想源自 Uniswap,若要打造新型的 DEX 应用离不开 Uniswap 的构建哲学:用最简单的算法,借助区块链将做市的权利从专业的机构下放到每一个用户。

1.png

Uniswap V3 的全局系统架构如上图所示,V3 的智能合约是运行在 EVM 上的,而 EVM 是运行在每一台 geth 节点中。因此 V3 的计算过程会被成千上万的节点进行运算,并通过 PoW 获得统一的共识。

深入 V3 合约,V3 本质上是通过 Router 对多个 NFT 的流动性进行聚合,每一个 NFT 都是个人用户提供的流动性池,有自己的曲线和做市区间。当用户向 V3 合约请求价格时,Router 会进行聚合计算,产生一个当前最优价格。用户会签署该价格并发送给 Uniswap 合约进行执行,这笔交易会同步更新多个 NFT 的状态,为用户提供安全可靠的兑换功能。

新一代 DEX 的原型

在构建原型之前,我们需要学习一下 everPay 和 evePay bundle 交易。everPay 是基于 Arweave + SCP 的区块链金融基础设施,具备实时转账,账本可验证的特性,用户和开发者可以使用 everPay 进行实时的代币结算。

2.png

Bundle 交易是 everPay 的一种交易类型(opAction),可以进行多对多的转账,一笔交易中要求多个转出方的签名,交易在 everPay 上执行时,如果有一笔转账失败,则整个交易回滚。是一种多对多的事务性转账功能。

熟悉 Uniswap V3 之后,再加上 SCP 的基础知识以及 everPay 提供的 bundle 交易,就可以创建新一代的 DEX 了。

3.png

将 Uniswap V3 的 Router 合约 替换为 Router 节点:一种任何人都可以部署的路由网关节点。router 会采集 LP 的信息,和 V3 一样,收到请求后可以聚合出最优价格和兑换路径。

将 V3 的 NFT 替换为 LP 节点:拥有私钥和自动化的签名程序,LP 节点程序依照用户设定的曲线公式和区间进行报价和 bundle 签署。LP 的报价信息和做市曲线会在启动时提交给 router,并和 router 保持网络通讯。router 会将有效的 bundle 订单发送给 LP 节点进行签署,LP 按照自有的做市规则进行判断和签署,成功的签名发送给 router。

交易流程:

  1. 用户向 router 请求一个报价
  2. router 根据采集到的多个 LP 信息,生成最优的报价和兑换路径

a. bundle 兑换路径实例:userA tranfser tokenA to lpB, lpB transfer tokenB to lpC, lpC tranfer tokenC to userA

  1. 用户认可该报价则进行签名,router 通知所有 LP 进行签名,LP 也会对报价进行确认
  2. router 采集了该 bundle 交易的所有签名后,将 bundle 提交 everPay 进行执行

新一代 DEX 具备的优势:

  1. 完全分布式的 P2P 网络,router 和 LP 节点可以由任何人部署,无法被中断和关闭
  2. 具备无限的性能,每个 router 都可以提供上百个 LP 连接,为上万的用户提供 LP 聚合。整个网络中可以部署无数个 router
  3. 没有 MEV,用户签署的 bundle 订单是什么价格,收到的 token 就是多少。如果 LP 无法支付对应的 token,整个交易回滚——相当于没有发生
  4. 密钥和资产保存在 LP 自己手中,攻击向量分散,黑客偷盗资产需要逐个 LP 突破,网络的资产安全性极高

该网络对于用户体验极好,用户只需要访问一个连接了某台 router 节点的 UI,根据 router 的价格进行签名确认即可。router 和 LP 之间使用 websocket 通讯,能让一笔定在在数秒能就完成签名,并通过 everPay 实时执行,交易速度非常快。同时,用户的价格所见即所得,不用担心在以太坊上出现的 MEV:被 flashbot 走滑点利润。

唯一的劣势是做 LP 需要跑节点,该劣势也可以改善。比如我们的手机钱包可以成为 LP,用户在手机上滑动一下做市区间,并选择做市曲线就可以将手机中的闲置资产用于自动套利。用户像玩网络游戏一样加入 DEX 兑换网络,手机上的程序会保持在线并按照用户设定的规则进行自动做市。

总结

从上面的原型可以看出,开发去中心化应用并不需要链上智能合约,上面的系统开发成本也非常的低,这样的开发模式也符合 web2 开发者的思路。我们可以预见,WEB3 时代崛起,一定不会局限在区块链以及 EVM 之中,一定会有更多的范式去产生 WEB3 应用。SCP 是 WEB3 开发非常好的选择,让应用具备区块链不可篡改、可追溯等特性的同时,又能提供大规模应用的可拓展性。

点赞 0
收藏 1
分享
本文参与登链社区写作激励计划 ,好文好收益,欢迎正在阅读的你也加入。

0 条评论

请先 登录 后评论
outprog
outprog
imToken 后端工程师