在下面的文章中,Vitalik Buterin声称ETH2 2-切分不会破坏DeFi的可组合性:1。
然而,我一点也不相信他的论点。让我们看一下Vitalik 1中的以下示例:
可组合性示例1: Uniswap <->令牌几乎所有DeFi应用程序都使用可组合性,因为令牌是一种应用程序类型,因此任何使用令牌的DeFi应用程序都是与另一个应用程序交互的应用程序。让我们以Uniswap为例。在Uniswap中,用户向Uniswap契约发送一定数量的令牌A,后者向用户发送一定数量的令牌令牌B。Uniswap需要与之交互的所有事务之间严格依赖: Nth事务必须知道N-1‘th事务的输出,因为这是价格更新算法的工作方式。因此,Uniswap的合同将需要生活在一个单一的碎片(有设计的多碎片Uniswap,但他们更复杂)。希望交易的用户将执行两个步骤:将他们的令牌A发送到Uniswap所在的碎片。像以前一样与Uniswap进行交易(这样做的事务将与从步骤(1)“声明”收据的事务结合起来,因此这是一个单一步骤) 可选,如果需要,将Uniswap给他们的令牌B移动到其他碎片。
这是一个非常简单的用例。由于Uniswap是一个自动化的做市商,所以很明显,Uniswap想要在一个单一的碎片上运行。但是,将令牌从一个碎片发送到另一个碎片对于DeFi用户来说似乎非常繁琐。如果我想与非国有资产进行交易,那么我不想在碎片之间移动ETH。我只想调用一个智能契约,我不想关心某个特定的智能契约是在哪里被分割的。对我来说,对于普通的叛逃者来说,这似乎是许多不必要的技术复杂性。
但这只是我所关注的一个方面。另一方面,Vitalik的Uniswap示例根本没有解释原子的可组合性是如何工作的。例如,让我们考虑闪存贷款的用例。闪存贷款是无担保贷款,只有在同一笔交易中偿还的情况下才能成功。相反,使用碎片之间的异步消息,闪存贷款可能是不可行的。而闪存贷款只是一个高级的例子,我确信我们可以找到更多更先进的DeFi用例。
那么,你认为,你认为维塔利克甚至没有意识到“原子DeFi可合成性”实际上是什么意思吗?
发布于 2022-09-03 21:39:53
维塔利克很聪明。我肯定他意识到,当Eth v1添加到Eth v2中时,Eth v2风格的可组合性就会被破坏。然而,他并没有错误地说,在Eth v2中仍然有可能具有可镇定性。
在一般意义上,可组合性只是指能够使独立契约的输入和输出以无缝方式相互作用。允许可组合的很大一部分是像ERC20这样的标准。然而,人们把“可组合性”一词联系起来,意思是契约之间的交互必须发生在单个事务中。
在您提到的这篇文章中,Vitalik明确指出原子的可组合性是不可能的。表单的工作流“在这里做一些事情,然后在那里做一些事情,然后根据那里事物的结果在这里做更多的事情,所有原子上的所有事务”都不会被支持“。Vitalik在本文中描述的内容可以称为“手动可组合性”,也可以称为“链接可组合性”,如果多个步骤是通过脚本自动完成的。显然,单个事务将多个独立的合同连接在一起并不是原子的可组合性。
在原子可组合性中,可以有“同步可组合性”(如Eth v1)和“异步可组合性”(如NEAR)。使用异步可组合性,“整个事务被发送到第一个碎片,一旦事务包含在块中,并在块包含之后应用,它将生成一个收据事务,该事务被路由到下一个碎片,在该碎片中事务继续在未来块中执行。如果需要执行更多步骤,则收据事务的执行将生成一个新的收据事务,等等。”(从附近的白皮书)。
唯一正在进行并演示了原子同步可组合性的项目是Shardeum,一个基于EVM的分片智能契约平台。您可以在这个视频https://youtu.be/sKczslvXBd4中看到它的演示。
https://ethereum.stackexchange.com/questions/93225
复制相似问题