加载中 ...

ERC777以太坊新代币标准|拾里郎

2019-11-01 19:10 编辑:btc268.com 来源:区块链资讯

  

ERC777是一个新的高级代币标准,可以视为ERC20的升级版本,因此它解决了ERC20以及ERC223存在的一些问题,开发者可以根据自己的具体需求进行选型。

1、使用ERC820进行合约注册

  有别于ERC20的自由散漫,ERC777利用了新的ERC820标准提供的集中式的智能合约注册表和合约接口实现查询功能,以实现某种程度的内省。中心化的注册机制有助于后向兼容性以及更好的功能扩展。一个期望调用ERC777的DApp或智能合约,就可以利用EIP-820返回的ITokenReceipt接口来确定目标合约是否实现了期望的接口。

2、ERC777概述

  ERC777改进了ERC20代币中存在的很多不足,例如,ERC777支持操作员白名单,提供以太币兼容的send()接口,利用ERC20实现后向兼容等。下图展示了ERC777代币的转账实现流程:

  

要快速掌握以太坊区块链应用开发,推荐汇智网的在线互动教程:
以太坊DApp开发入门 | 以太坊电商DApp实战 | ERC721以太坊通证实战 Web3j以太坊开发详解 | Php以太坊开发详解 | Python以太坊开发详解 | C#以太坊开发详解 | Flutter以太坊开发详解 |

与ERC20相比,ERC777有以下方面的优势:
◆采用与以太币一致的发送代币,即采用接口send (dest,value,data)。
◆任何合约都可以定义收到代币时触发的tokensReceived事件,避免了在ERC20代币中存在的双重调用问题。
◆合约和常规地址都可以通过注册一个tokensToSend或
tokensReceivedFunction 函数来控制或拒绝发送或接收的代币,避免ERC20代币中存在的代币卡死问题。
◆代币持有者可以授权或回收管理其代币的操作员权限。这些操作员通常是交易所 合约或自动收费系统中的支付处理器。
◆每个代币交易都包含userData数据字段,在操作员操作时也有类似的operatorData 字段,从而可以自由地将数据传递给接收方。可以后向兼容那些不支持tokensReceived函数的钱包。

3、Logo

  ERC777代币logo采用Creative Commons Attribution-ShareAlike 4.0授权,并且不可以用于广告、推广或其他任何不兼容ERC777的技术。

后向兼容性

ERC777没有引入后向不兼容问题,因此可以兼容之前的ERC20代币标准。在这个RIP中,没有使用transfer和transferFrom进行代币转账,而是使用send和operatorSend来避免混淆与潜在的错误。与此同时,ERC777允许你实现ERC20中的transfer、transferFrom、approve和allowance以便兼容ERC20。因此一个代币合约可以同时实现ERC20和ERC777。

如果代币合约实现了ERC20,那么它必须通过ERC820注册ERC20Token接口。对于实现ERC20的新合约而言,唯一的区别在于ERC777TokensSender和ERC777 TokensRecipient通过ERC820的注册必须早于ERC20的注册。这意味着即使是对ERC20的transfer方法的调用,代币合约也必须通过ERC820检查from或to是否实现了tokensToSend/tokensReceived接口并在可用时进行调用。注意当调用合约的ERC20的transfer方法时,如果合约没有实现tokensReceived接口,那么transfer也应当被接受,这意味着代币可能会被锁定。

  


▼孵化事宜,联系运营总监▼

  

  往期回顾

  |深圳市福田区将打造国内首个数字货币大厦

  |市管培训 | 一站式孵化社区-拾里郎

关键词:比特币新闻 币牛牛

转载自比特币新闻网(www.btc268.com),提供比特币行情走势分析与数字货币投资炒币最新消息。

原文标题:ERC777以太坊新代币标准|拾里郎

原文地址:http://www.btc268.com/ytf/xw/16706.html

本文来源:区块链资讯编辑:btc268.com

本文仅代表作者个人观点,与本网站立场无关。

本网站转载信息目的在于传递更多信息。请读者仅作参考,投资有风险,入市须谨慎!

'); })();