ROLL:Vitalik说的跨Rollup DEX是啥?

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

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

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

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

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

以太坊Layer2上总锁仓量为99.77亿美元:金色财经报道,L2BEAT数据显示,截至目前,以太坊Layer2上总锁仓量为99.77亿美元,近7日跌0.86%。其中锁仓量最高的为扩容方案Arbitrum One,约59.60亿美元,占比59.73%,其次是Optimism,锁仓量24.71亿美元,占比24.77%。[2023/7/22 15:52:16]

提案

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

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

以太坊网络当前已销毁244.12万枚ETH:金色财经报道,据Ultrasound数据显示,截止目前,以太坊网络总共销毁2,441,212.23枚ETH。其中,OpenSea销毁230048.63枚ETH,ETHtransfers销毁225624.61枚ETH,UniswapV2销毁133615.52枚。注:自以太坊伦敦升级引入EIP-1559后,以太坊网络会根据交易需求和区块大小动态调整每笔交易的BaseFee,而这部分的费用将直接燃烧销毁。[2022/6/13 4:21:23]

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

预期的操作很简单:

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

自11月2日以来以太坊网络每日活跃地址数量显著增长:加密分析平台Santiment发推称,从11月2日开始,以太坊网络的活动已经经历了一个显著的增长。Santiment进一步补充说,该网络上每日活跃地址的指标最近已经进入牛市区域,上次是在10月16日。

根据EWN的分析,目前ETH已经突破了420美元和450美元的阻力区,并且可能在接下来的几天里突破500美元关口。12月1日ETH 2.0阶段零的发布可能会提供额外的市场动力。(EWN)[2020/11/7 11:57:18]

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

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

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

以太坊微信指数日环比上升2.44%:金色财经报道,微信指数显示,9月20日,区块链微信指数为1325508,日环比下降16.58%;比特币微信指数为451284,日环比下降12.67%;以太坊微信指数为140083,日环比上升2.44%;IPFS微信指数为221607,日环比下降11.25%。[2020/9/21]

资本成本

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

同时,我们设置每个rollup批次最多可包含的交易数量是TXS_PER_BATCH。Alice可以自己检查,rollupA即将到来的批处理之前有多少未处理交易,用她在IVAN_B合约中看到的资金减去这个值,并检查剩余的金额是否足够。由于提币是按顺序处理的(这是上面顺序机制的目标),Alice不需要担心在她自己提币之前IVAN_B会去处理后面的提币需求。

动态 | 以太坊昨日交易总额约212.1万ETH:以太坊昨日交易总额约212.1万ETH,日活跃用户量约21.4万,新增合约15408,代币交易数量54.3万,最活跃合约:USDT[2019/8/9]

在一个批次中可以交易的最大金额是TRADE_LIMIT*TXS_PER_BATCH,因此IVAN_B合约需要至少持有这个数量的ETH,再加上足够的资金来覆盖未处理的交易。

例如,假设TRADE_LIMIT=0.1ETH(上限可以设得比较低,因为一笔较高金额的交易可以通过多笔交易完成),并且TXS_PER_BATCH=1000。那么,IVAN_B需要有100ETH的资金。

注意,在这个设计中还有额外的隐含费用,因为任何交易超过0.1枚ETH的人都需要消耗区块空间,这与资金要求相权衡:如果你消耗掉一半的区块空间,那么你的资金要求也会翻倍,反之亦然。要建立合适的平衡,似乎应该让隐含费用比市场上出现的显性费用少几倍。

如果我们想减少或消除这种消耗,rollupA可以被设计成这样,例如,让排序器发送一个签名消息,向Alice证明到目前为止,批次中批准的所有消息。然后Alice就会知道在她之前没有交易(尽管恶意的排序器可以Alice,但代价很高)。

备注

上面的设计建立在rollupA上的交易有一个备注字段的假设上,Alice可以使用该字段指定ALICE_B作为她接收代币的目的地址。如果rollup没有此特性,那么我们可以使用以下解决方案。

Alice可以在顺序注册合约的rollupB上注册ALICE_B,并获得一个按顺序分配的ID(因此Alice的ID等于在她之前注册的用户数量)。设置MAX_USER_COUNT为用户数的最大值,如果有必要,这个值可以随时间向上调整。Alice可以简单地确保TRADE_VALUE%MAX_USER_COUNT等于(Alice的ID),使用TRADE_VALUE的低阶位(这个数字表示一个不重要的值)来表示她想交易的代币数量。

从rollupB到rollupA的交易

如果Alice把rollupB上的代币转移到rollupA,可以使用类似的机制,只是角色颠倒了:

Alice将代币发送给IVAN_B

经过一段时间的延迟,她将获得收回代币的权利

如果Ivan可以向IVAN_B证明,他在rollupA上给Alice发送了代币,Alice就失去了这个权利

总结

所以我们可以看到,在这个过程中,许许多多的“Ivan”其实就是去中心化的银行,在两条rollup上分别扮演存款机和取款机的角色,从而赚取手续费。

如果Ivan作恶,rollupA和rollupB间不需要进行过多的交互,Alice就可以提供打币证明。根据Vitalik的表述,在从rollupA向rollupB转账的场景中,提供证明这一步操作可以直接在rollupB上进行,只要rollupB能获取rollupA的区块哈希,就可以计算出rollupA上的交易记录,从而向Ivan索赔。

在索赔这个过程中,Vitalik还给出了更多的可能性。比如,可以在IvanB上增加一个“快速通道”,AliceB可以把她在IvanB上的提币插槽出售给其他用户。

假设这个用户叫Bob,那么Bob可以把款项先转账给AliceB,此后,IvanB应该转账给AliceB的资金将被Bob获取。也就是由Bob先垫付资金给Alice,以此来提升Alice的用户体验,这个过程或许可以涉及到挖矿之类的玩法。

Github上有用户提到,如果中间商Ivan不是个体,而是去中心化的资金池,这个模型是否会更好。Vitalik表示,这会涉及到rollupA上资金池的所有权问题,相比之下,由多个中间商来作为分散的“资金桥”可能更合理。

这就是跨rollupDEX的大致思路。虽然可应用场景可能不多,也有一些影响到资金安全的场景可能没有被考虑进去,但是这让我们又看到了一些Layer2上的可能性。区块链解决方案从某些角度来看,或许就是规则设计。

郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。

链链资讯

瑞波币DAO:ETH空单40余点止盈回顾

昨日晚间给出的简评,建议反弹先看一波空头。给出的操作建议:反弹1670-1680附近分批空,目标1620-1600,止损1710,我们从5分钟线来看,昨日晚间22:05以太反弹至1678.9一线.

USDCIMI:以太坊Rollup生态全景解读

Rollup被认为是一个确定性的机会。随着以太坊拥堵问题日益突出,已经有越来越多的项目在尝试Rollup解决方案,包括Synthetix、Uniswap、MCDEX等等.

[0:15ms0-7:495ms