以太坊上逆转NFT和代币交易:ERC-20R和ERC-721R解读

金色财经 view 10293 2022-9-27 15:14
share to
Scan QR code with WeChat

区块链交易的不可篡改性是把双刃剑。

BAYC网络钓鱼、PolyNetwork攻击、Harmony桥、Ronin被盗,仅在2021年,就有140亿美元的加密货币被盗。这些以及更多是不可否认的盗窃,但没有“撤消按钮”(例如信用卡支付撤销),并且并非每个人都有Jump Crypto来在需要时来救助他们。

但是,如果有一种可逆转的代币呢?

这是斯坦福大学的几个人(Dan Boneh、Qinchen Wang和Kaili Wang)在过去几个月里一直在努力回答的问题。我们设计了与ERC-20和ERC-721类似的可选代币标准,并支持逆转交易(当有足够的证据证明值得这样做时),写了一篇关于它们的论文,并实现了一些原型。我们将这些代币标准分别称为ERC-20R和ERC-721R。

以太坊上逆转NFT和代币交易:ERC-20R和ERC-721R解读

现在,你可能在想:可逆转代币?这不就是违背了区块链目的吗?实际上,没有。它并不是要取代ERC-20代币或使以太坊可逆——它只是允许在交易后的短时间窗口内看否其是盗窃,如果是盗窃恢复交易。

请注意,交易只能在很短的时间内(例如3天)冻结,然后才会变得不可逆转。在其生命周期的大部分时间里,ERC-20R资金是不可逆转的。

交易所的可逆转性

在交易所中,两个可逆转代币之间的交换是即时的;如果一方请求冻结,则无论可撤销时间段是否已过,都可以从另一方撤销资金。但是,为了保护自己免受逆转,将可逆转代币换成不可逆转代币可能会使交易所仅在可逆时间窗口过去后才完成交换。这意味着可逆→不可逆交换将延迟完成直到资金不可逆转。因此,一旦几个主要代币变得可逆转,其他代币也面临着巨大的可逆转压力。

根据实施情况,可以立即清算已过可逆转时间段的资产(例如清算你在3天前收到的资产)。在这种情况下,你的可逆转代币和不可逆转代币之间不需要有延迟。

以下是它的工作原理:

以太坊上逆转NFT和代币交易:ERC-20R和ERC-721R解读

撤销交易的流程

假设攻击者从受害者那里窃取资金。资金可能会进一步转移到其他地址,如下图1所示。会发生以下情况:

1、受害者要求冻结被盗资金。受害者向治理合约发布冻结请求,以及相关证据和一些质押。有争议的交易必须是最近的(有一个固定的可逆转时间段)。

2、法官接受或拒绝冻结请求。去中心化的法官投票数决定是否冻结资产。这个审议期最多需要一两天。如果他们拒绝该请求,该过程将停止,受害者将失去他们的质押。如果他们接受请求,那么治理合约将调用freezeERC-20R/ERC-721R合约。

3、执行冻结。对于NFT,它只是阻止NFT被转移。对于ERC-20R,它将追踪被盗资金并禁止转移这些资金。请注意,只要账户所有者的余额保持在冻结金额以上,账户所有者仍然可以与其他人进行交易。这个过程可能会变得复杂,我将在下一节中解释。

4、审判。然后双方可以向去中心化的法官集合提供证据。最终法官做出决定,此时他们指示治理合约调用受影响的ERC-20R或ERC-721R合约的reverse或者rejectReverse函数。如果rejectReverse调用,则解除对争议资产的冻结。审判可能会很长,可能需要几周时间。

5、逆转,如果法官接受受害者申诉的话。该reverse功能将冻结的资产发送回受害者。

以太坊上逆转NFT和代币交易:ERC-20R和ERC-721R解读

图 1:示例图。

追踪被盗资金

当被盗时,资产很少只是放在一个地方。攻击者经常将烫手资产从一个帐户转移到另一个帐户。在这种情况下,攻击者甚至可以监控内存池并在看到冻结请求传入时将资产转移到抢跑交易中。我们避免这种情况的解决方案是在单个交易中在链上进行整个冻结(及其计算),这样攻击者就无法“抢跑”冻结。

但是我们不能只禁用所有触及资产的账户,那么我们如何决定冻结什么以及冻结谁呢?如果它是NFT,幸运的是冻结非常简单:只需查看当前拥有NFT的人,然后冻结该帐户即可。然而,货币的可分割性使得冻结ERC-20变得更加复杂。这些资金可以分配到数十个账户中,投入到 Tornado等匿名混合器中,或者兑换成另一种数字货币。如果它通过许多帐户,至少其中一些将与黑客相关联。但有些人很可能是无辜的,或者是提供合法服务以换取付款的商家。不可能总是正确地辨别每个帐户的有罪性。因此,我们提供了用于追踪和锁定被盗资金的默认冻结流程。我们的算法确保:

1、假设没有烧毁,将冻结足够的资产来支付盗窃金额。(从返还的金额中减去烧毁的资产),

2、账户资金只有在盗窃有直接交易流的情况下才会被冻结,并且

3、相对于交易图,该算法以合理的runtime复杂度运行。

我们在论文中讨论了算法的更多细节。

去中心化的司法系统

这个方案中比较模糊的部分涉及“去中心化的法官人数”。这些法官是谁?他们如何投票?他们如何获得奖励?

这些后勤工作最终取决于治理,即创建ERC-20R/ERC-721R实例的人。在我们的论文中,我们探讨了如何阻止法官不诚实和贿赂、奖励机制等。我们强调,法官不能添加交易或随意修改余额值。

在论文中,我们讨论了更多细节,例如如何降低法官不诚实的风险、对交易所和混合器的影响、相关工作以及对算法和实现的深入解释。如果有兴趣,请看原文,原文地址:https://arxiv.org/pdf/2208.00543.pdf

btcfans公众号

Scan QR code with WeChat

Disclaimer:

Tags: 以太坊 NFT
Previous: 迪士尼加大Web3.0布局!招募律师以探索元宇宙、NFT、DeFi Next: 游戏:趣味+GameFi=成功?这些公司能否做到这点?

Related