ERC20被广泛用作基于以太坊的令牌的标准,并且发行了许多令牌。但是,已经指出,ERC20由于交付错误而损失了资金。本文介绍了新的令牌标准“ ERC223”,它可以解决此问题。
ERC20和ERC223
最广泛使用的ERC20于2017年9月正式采用,是基于以太坊的代币的标准。
基于以太坊的令牌标准ERC20 – Gaiax Blockchain Biz
您可能不了解“标准”,但是ERC20 定义了用于确定令牌行为的智能合约的通用规范,并且令牌可以由各个令牌发行者基于此规范来实现。
对于被已经指出ERC20问题,聪明的合同和发送令牌,而无需通过规定的程序相对于去,令牌丢失在不承认交易合同聪明。作为解决该问题的新令牌标准,2017年3月提出了与ERC20向后兼容的“ ERC223”。尽管尚未采用ERC223作为官方标准,但ERC223的规范和讨论已在GitHub上发布。
ERC223令牌标准·版本号223·以太坊/ EIP·GitHub
动机部分(描述了ERC223提案的动机)显示了丢失的ERC20令牌的数据。根据支持者的说法,截至2017年12月,QTUM的价值为1,204,273美元,EOS的价值为1,015,131美元,两者均超过1亿日元。这只是冰山一角,对于整个ERC20代币而言,这将是一个更大的数目。
ERC223如何尝试扩展ERC20以解决交付错误的问题?让我们根据规格来专门查看ERC223扩展。
ERC20问题
在上一部分中,我们解释了在使用ERC20令牌的情况下,如果您在没有遵循智能合约的规定程序的情况下发送令牌,则智能合约将无法识别交易,并且令牌将丢失。智能合约并不总是监视区块链上的交易,但是交易是在外部触发时生成的。因此,在ERC20中,将批准功能和transferFrom功能准备为预定过程。
去中心化交易是解释此问题时经常引用的一个例子。假设用户想将ERC20令牌存入去中心化交易所。此时,如果您只是将ERC20令牌发送到去中心化交易所的智能合约,则去中心化交易所的合约将无法识别该交易,并且令牌将丢失。因此,用户必须首先批准去中心化交易所从其地址中提取存款金额,并在去中心化交易所与用户作为发送方进行交易( transferFrom)。
这些过程不直观,涉及许多步骤。在ERC223中,批准和transferFrom的过程被统一为转移,并且我们还试图解决由于发送不正确而导致令牌丢失的问题。
使用ERC223进行扩展
ERC223定义了两个传递函数。一种是确保与ERC20的兼容性,另一种是在ERC223中新定义的。新的传递函数接口为:
function transfer(address _to, uint _value, bytes _data) returns (bool)
|
关于此行为,如果第一个参数的_to指定的目标地址是智能合约地址,则将调用目标智能合约中定义的tokenFallback函数。结果,交易在智能合约方被确认。
在tokenFallback函数中,描述返回错误发送的令牌或在先前的分布式交换的情况下存放的过程。如果目标合同中未实现tokenFallback函数,则事务将失败并且不应进行令牌传输。
以这种方式,在ERC223中,在合同的交易中,将处理统一为转移,并且减少了步骤数。以太坊会产生天然气,这是收费的,取决于所执行的步骤数,因此,预计合同交易可以使收费保持较低水平。
对于ERC20的问题,以下文档中的说明会有所帮助。
ERC223的未来
ERC223目前正在讨论中,尚未正式通过。尽管改进ERC20是一个非常好的规范,例如可以返还误发送的代币,可以将二级费用保持在较低水平,不仅需要在代币发行方,还需要在接收合同方进行实施,似乎是先有蛋还是先有蛋的情况。
ERC20在正式通过之前基于该草案发行了令牌,并且在正式通过之后被广泛用作标准。基于ERC223的代币和服务的出现将是该新标准的推广和正式采用的关键。也可以通过提出包括ERC223在内的新提案来将其合并。毫无疑问,将继续解决不便之处的代币标准将是一个显着的技术趋势。
本文链接地址:https://www.wwsww.cn/ytf/1310.html
郑重声明:本文版权归原作者所有,转载文章仅为传播更多信息之目的,如作者信息标记有误,请第一时间联系我们修改或删除,多谢。