Renegade 结合了多方计算 (MPC)和零知识证明(ZKP),其中多方计算用于撮合交易,零知识证明用来结算撮合后的交易。
撰文:F.F
Renegade 结合了多方计算 (MPC)和零知识证明(ZKP),其中多方计算用于撮合交易,零知识证明用来结算撮合后的交易。利用 collaborative SNARKs 实现的 MPC-ZKP 的架构,Renegade 实现了原子化和交易前后默认完全隐私的去中心化交易所。当交易者需要更低的交易延迟时,Renegade 也可以暴露部分交易信息加快撮合,并利用零知识证明确保交易提示的正确性。Renegade 的共识和安全性依托于 Starknet,节点和订单匹配依赖于自身的 p2p 网络。
种子轮融资中,Dragonfly 和 Naval 领投了 340 万美元,其他天使投资人包括:Balaji Srinivasan (Coinbase), Tarun Chitra (Gauntlet), Marc Bhargava(Tagomi), Lily Liu(Osmosis, Solana), and Lev Livnev(Symbolic Capital Partners)
基本概念
什么是暗池(Dark Pool)
传统的订单簿存在暴露交易池的信息,和交易方的订单信息,带来如下的问题
- MEV:验证人对巨额交易的抢跑
- 自动跟单:对链上地址的自动跟单
- 价格歧视:可以根据分析链上行为,对地址标记,从而进行价格歧视
- 跨交易所的套利:流动性割裂带来的交易割裂,从而带来交易所间的套利机会
- 统计套利:对 TWAP 等下单模式进行分析,套利机器人进行套利
在链上合约的背景下,信息暴露问题更为严重,通过归档节点,任何人可以知晓过去的交易状态,通过内存池,任何人可以知道交易成功后的未来状态。
而在暗池交易模式下,交易者无法知晓其他人的挂单信息,只能知道自己的订单和成交情况。对于交易量大的巨鲸,需求尤为强烈。Renegade 希望实现的是交易前后的隐私和最小化的 MEV。
什么是多方计算(MPC)
多方计算的核心思想是在不需要信任中心化的情况下,多方可以在隐私输入下,计算出输出。最典型的例子就是姚期智教授的百万富翁问题。
应用在暗池中,交易对手方匿名地完成了交易,下单信息就是隐私输入,MPC 的输出就是订单的交割。但 MPC 本身无法验证订单信息的有效性,即隐私输入的正确性。因此需要借助零知识证明的力量。
MPC-ZKP 架构
Commit-Reveal 机制
交易者的钱包(Wallet)包含余额和订单列表,将钱包和随机数的哈希承诺上链。
交易者发送给智能合约的信息包括:对新钱包的承诺,旧钱包的「nullifiers」,承诺和「nullifiers」正确计算的证明。
网络架构
中继器(Relayer)是 Renegade 的节点,每个中继器管理一到多个钱包,负责和其他中继器进行多方计算。集群(Cluster)是管理相同钱包的中继器群。公共网关(Public Gateway)是特殊的中继器集群,可供不跑节点的群体使用。
当一笔交易进入中继器,中继器会传送 handshake 元组,包含对订单数据的承诺和相应的零知识证明。其他所有中继器会监听网络中的 handshake 元组,并通过 MPC 计算匹配引擎。
Collaborative zk-SNARKs
Renegade 使用了 Ozdemir and Boneh 最新的 collaborative SNARK 研究成果,将零知识证明生成打包进了 MPC 的算法当中,使得中继器们可以合作证明一个 NP 问题。证明系统方面采用了对于 collaborative proving 友好的 Bulletproofs。
当合作生成的证明产生后,任意方都可以递交到链上的智能合约,从而完成实际的代币交换。
密钥体系
在 MPC-ZKP 架构中,所有的交易者都依赖运行 MPC 的中继器完成订单的撮合。因此交易者和中继器存在一定的信任关系,因为中继器需要撮合和结算订单,必须能够查看钱包从而进行订单计算。当然交易者可以自己运行中继器,或者依赖于公共中继器。
因此 Renegade 构建了一套钱包的密钥体系,来约束钱包委托中继器过程中的权限关系。体系上一层的密钥可以衍生出下一层的密钥。顶层是 ETH 原生的密钥对,依次衍生出根密钥对 (root keypair),撮合密钥 (match keypair),结算密钥对 (settle keypair),查看密钥对 (view keypair)。根密钥对拥有钱包的全部授权,包括任意的转账,取现,更新和取消订单;撮合密钥对可以撮合现有的订单;结算密钥对可以结算之前的撮合订单,或者结算暗池中的转账;查看密钥对仅可以查看未加密的钱包,但没有办法进行任何操作。
结合这套密钥体系,交易者如果使用其他人的中继器,则需要将发送撮合密钥对发送给中继器,中继器来进行撮合,结算交易,但无法发送新的订单或者取消之前的订单,并且需要支付一定费用给中继器。若是使用自己的中继器,交易者可以沿用上述的交易模式,或者是直接将根密钥发送给中继器,在 super-relay 模式下运行,此时中继器可以直接下单和取消订单。对于交易延迟和手续费敏感的交易者,super-relay 模式可以提供挂单的零延迟和零费用。
协议收入
Renegade 创建一个新钱包的 Gas 费大约为 10 USD,每一笔存款,提款和转账操作的 Gas 费大约为 1 USD。交易的挂单方面,除了 super-relay 模式,下单和取消订单都需要消耗大约 1 USD 的 Gas 费。
Renegade 对于每笔成功匹配的订单,收取 0.02% 的协议手续费。公共中继器将收取额外的 0.08% 的协议手续费。
治理
Renegade 寻求治理最小化,所有合约在部署后都不可更改。但会有一个 2/3 的开发者多签有如下的权限:
- 更改布尔标记,拒绝所有有效撮合的证明,暂停所有撮合,应对可能的漏洞攻击
- 更改布尔标记,暂停所有存款,同样应对可能的漏洞攻击
- 更改全局的协议费用,协议费用的变动区间在 0~0.02%
- 更改协议费用接受的公钥
- 委托上述的权限给新的地址,或是完全更改权限的地址
所有评论