ERC223代币标准的优缺点

在开始这篇文章之前,我想说明的是,ERC-20、ERC-223、ERC-721和ERC-777都是以太坊中不同类型的代币标准。

ERC223代币标准的优缺点

很少有人知道这些代币之间的区别,因此总是喜欢使用流行的ERC-20代币标准。需要注意的是,WiiggoCoin (WIIG)并不反对ERC-20代币,事实上我们支持它,这也是为什么我们的代币是通过ETH来进行购买的。
综上所述,对以太坊工作原理的基本理解实际上可以简化对加密货币的理解。您知道,以太坊是一个分散的平台,可以在其上编写(使用可靠的编程语言)和执行智能合约。它是支持数百个分散应用程序(dApps)的基础层。
每当在以太坊之上开发区块链技术和智能合约的新应用程序时,就可以创建一个新的以太坊代币。不同类型的应用程序将根据不同的标准进行标记,这取决于应用程序的用途。
目前,以太坊代币最常见的标准是ERC-20标准,但还有ERC-223、ERC-721和ERC-777标准。要了解每个标准是什么。
什么是ERC-223代币?
ERC-20标准非常有用,但还远远不够完善。例如,ERC-20s有一个特别糟糕的设计缺陷,当人们错误地将代币发送到普通钱包在将代币发送到智能合同时,代币可能会丢失。不幸的是,到目前为止,这已经导致ERC-20代币损失超过300万美元。
ERC-223通过允许用户将代币转移到具有相同功能的智能合约和钱包来解决这个设计缺陷。此外,ERC-223代币通过进行传输来提高ERC-20s的效率,只需要1个步骤,而不是2个步骤。这意味着与ERC-20传输相比,ERC-223代币传输只需要一半的气成本。
重要的是要记住,ERC-223代币与ERC-20代币向后兼容。这意味着ERC-223支持使用ERC-20代币的每个ERC-20功能和合约或服务,并且能够正确地使用ERC-223代币。ERC-223在解决上述bug的同时维护所有原始功能。
由于这些优点,ERC-223标准可能有一天会取代ERC-20,成为以太坊代币使用最广泛的标准。然而,大多数以太坊的钱包目前还不支持ERC-223代币,因此项目开发人员对其的采用非常缓慢。
不过,考虑到加密货币生态系统的发展速度如此之快,如果ERC-223代币在2019年甚至更早普及起来,也不要感到惊讶。
ERC-223代币标准是在2017年正式形成正式的EIP (以太坊改进协议)过程中提出的。
在使用ERC-20代币的接口和行为进行自定义之后,让我们看看它的一些缺陷以及如何解决它们。
意外地将代币转移到不知情的合约
有两种不同的方式传输ERC-20代币,这取决于您是打算直接发送代币,还是将传输委托给另一个智能合约。您可以调用transfer将代币发送到一个钱包地址,也可以调用approve,然后从接收方合同中触发transferFrom,以便接收方知道并相应地处理转账。
但是,当您将代币转移到不知道或不期望这些代币的合同地址时(例如,仅仅通过键入错误的地址),会发生什么情况呢?不幸的是,你的代币将永远丢失。
已经有许多合约所持有的代币,它们并不期望任何代币的传输(而且这个列表还在增长)。这些代币将无法访问,因为无法从合约中撤回它们的函数。
无法处理传入代币事务
通过使用传输函数发送ERC-20代币,代币合约不会通知接收方发生了事务。代币只是简单地记在收信人的地址上。除此之外,没有办法在合约上处理传入代币事务,也没有办法拒绝或处理任何不受支持的代币。
除了防止代币丢失之外,新的传输方法还允许智能合约积极地处理发送的代币。
代币转移一致性
普通/非合约地址和合约之间的ERC-20代币交易是两种不同的交易:您应该调用代币合同上的approve,然后当您想将代币存入另一个合同时调用transfer。
ERC-223简化了这一要求,并允许使用相同的transfer函数。ERC-223代币可以通过调用代币合同上的传输函数发送,如果接收方是合约或钱包地址,则没有任何区别,因为有一种新的方式可以通知接收合约的转移。
如果接收方是一个常规/非合约地址,ERC-223代币传输将与ERC-20传输相同。另一方面,如果接收方是合约,那么ERC-223代币合约将尝试调用接收方合约上的tokenfallback函数。如果在接收方合约中没有代币回退功能,则事务将失败。
例如,分散的交易所将不再需要强制用户在代币合约上调用approve,然后调用deposit来调用transferfrom和take allowed代币。代币事务将通过代币回滚功能在交换合约中自动处理。
ERC-223合同的传输消耗的能源是接收方合同中ERC-20批准和转移的一半。
结论
新的ERC-223代币标准在原有基础上进行了改进,解决了一些最重要的ERC-20痛点,特别是在与其他智能合约交互时。
· ERC- 223解决了ERC-20代币标准的关键缺陷
· 只需要ERC-20代币一半的能源
· 并向后兼容ERC-20