织梦CMS - 轻松建站从此开始!

我的网站

当前位置: 主页 > 竞争币 > 以太坊

Rollup 间如何交互?简析 Vitalik Buterin 的跨 Rollup DEX 设计思路

时间:2021-03-08 10:44来源:未知 作者:admin 点击:
原文标题:《Vitalik 说的跨 Rollup DEX 是啥?》 撰文:Breeze 当人们还在思考用 Rollup 的方式缓解 Layer 1 拥堵的时候,Vitalik 已经在考虑 Rollup 之间怎么做交互。 6 天前,Vitalik 发起了一个叫

原文标题:《Vitalik 说的跨 Rollup DEX 是啥?》
撰文:Breeze

当人们还在思考用 Rollup 的方式缓解 Layer 1 拥堵的时候,Vitalik 已经在考虑 Rollup 之间怎么做交互。

6 天前,Vitalik 发起了一个叫做「跨 Rollup DEX」的提案,其中提到当一条 Rollup 有智能合约部署,另一条 Rollup 没有完全的智能合约功能的时候,资产可以在两条 Rollup 之间以去中心化的方式转移。有一点「隔空挪物」的感觉。

这个过程到底是怎么实现的呢?哔哔 News 将提案,以及 Vitalik 和社区成员间的精彩讨论内容翻译如下:

假设我们有两条 Rollup,分别是 Rollup A 和 Rollup B。Alice 想要把 Rollup A 上特定数量的代币转移到 Rollup B 上。如果 A 和 B 都有完全的智能合约支持,在这种情况下,已经有关于如何以去中心化的方式解决这个问题的提案。本提案想要为只有 Rollup B 有完全的智能合约支持(Rollup A 只能处理简单的交易)的情况提供思路。

我们假设,Rollup A 上的交易有某种「备注字段」,如果没有的话,我们可以使用值的低阶位作为备注发送。

提案

假设存在一个交易中介 Ivan(在实际实现中,将有许多中介可供选择)。Ivan 在 Rollup A 上有一个账户 IVAN_A(他完全控制该帐户)。Ivan 还将一些资金存入了 RollupB 上的智能合约 IVAN_B 中。

智能合约 IVAN_B 有以下规则:如果任何人发送 TRADE_VALUE 数量的代币到 IVAN_A,其中包含一个地址 DESTINATION 作为备注,那么在 MIN_REDEMPTION_DELAY 块之后, IVAN_B 将收到一笔交易,该交易包含一个代币转移的证明,从而把提取 TRADE_VALUE 数量的代币这样一笔交易排队到 DESTINATION 地址。提币按照交易被包括到 Rollup A 中的批次和索引顺序处理,要经过一些延迟 (比如 1 天)。

当 Ivan 看到他在 IVAN_A 收到资金时,他可以亲自将 TRADE_VALUE *(1 - fee) 数量的代币发送到 DESTINATION 地址。他可以通过 IVAN_B 中的方法发送交易,该方法保存一条记录,防止合约中的自动发送条款触发该交易。

预期的操作很简单:

  • Alice 向 IVAN_A 发送一笔交易,其中包含 N 个代币和备注地址 ALICE_B。

  • Ivan 通过 IVAN_B 发送 TRADE_VALUE * (1 - fee) 数量的代币到 ALICE_B。

第二步可以在第一步之后立即进行。如果 Ivan 证明第二笔交易和第一笔交易之间的时间戳差异非常小,那么合约甚至可以制定规则,允许费用更高。

「最坏的情况」是 Ivan 没有像预期的那样向 ALICE_B 发送代币。在这种情况下,Alice 可以等待 Rollup A 上的交易确认,找到获得 Rollup B 上的代币的其他途径来支付费用,然后她自己就可以索要资金。

资本成本

该方案的主要限制是,IVAN_B 需要持有大量资金,以确保所有发送者都能得到支付。特别是,假设:我们把交易金额上限设置为 TRADE_LIMIT (所以发送到 IVAN_A 的交易中,交易值 > TRADE_LIMIT 的交易都不是有效交易)。 (责任编辑:admin)

织梦二维码生成器
顶一下
(0)
0%
踩一下
(0)
0%
------分隔线----------------------------
发表评论
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
评价:
表情:
用户名: 验证码:点击我更换图片
栏目列表
推荐内容