什么是以太坊代币?ERC-20,ERC-223,ERC-721和ERC-777 代币解释

原创:Daniel Frumkin
翻译:victoryangn

如果我们要理解比特币并不困难,但是当以太坊发展成为一个图灵完备的系统,我们要理解起来就会男的多。即使你有扎实的技术背景,仍然需要花费一些时间做出独立的研究,才能比较系统的理解以太坊。

当我们理解了以太坊是如何运作的基本原理后,我们对于加密货币整体的情况也会了解的更透彻。以太坊作为一个分布式的平台,可以在其上编写智能合约(使用Solidity编程语言)并执行,以太坊存在的意义是为数百个分散应用程序(dApp)提供基础层。

每当在以太坊上开发区块链技术和智能合约的新应用程序时,就可以创建新的以太坊token。以太坊通过设定标准来执行发币的过程,让发币变得非常简单。根据不同的标准,不同类型的应用程序,进行不同的定制来执行发币的过程,具体取决于应用程序的用途。

通过标准的制定,智能合约和代币交互更加直接,因此,开发人员可以在以太坊上创建dapps。打个比方,以太坊就像是iOS或Android,可以为dapps提供一个更容易构建的操作系统。

以太坊令牌最常见的标准是目前的ERC-20标准,但也有ERC-223,ERC-721和ERC-777标准。在本文中,我们将解释每个标准以及如何在分布式的生态系统中使用它。

什么是ERC-20代币?

智能合约中使用的ERC-20标准仅包含6个基本功能,这些功能使通证有了可靠的功能。代码非常简单,无需掌握任何计算机科学知识即可理解它。

首先是totalSupply()函数,它确定在给定项目的通证经济中将要创建的通证总数。

然后是transfer()函数,用于将通证初始分配给用户钱包。这个功能是ERC-20通证在ICO中如此受欢迎的最大原因,因为它使ICO完成时向投资者发送代币变得非常容易。

transferFrom()函数的作用是使得通证持有者可以彼此交换通证。假设您要向朋友发送一些BAT,此功能将获取您的以太坊钱包地址,收件人的以太坊钱包地址以及发送的金额,然后执行交易。

接下来,正如其名称所暗示的,balanceOf()函数会跟踪每个用户钱包中的令牌余额。

接着是approve()函数,用于保证经济中总共的代币数量供给保持不变。换句话说,这个功能已经到位,以确保没有人能够凭空创造额外的通证以使自己受益。

最后,allowance()函数确保事务在添加到区块链之前有效。每当用户想要将某些代币转移到另一个钱包时,此功能会检查发送地址是否至少具有transferFrom()函数中规定的数量一样多的令牌。如果没有,则交易无效。

通过这6个功能,创建新的代币以及为它们开发平台和钱包非常简单。该标准已被数千个不同的项目所采用。事实上,前20个以太坊令牌中的所有项目都是ERC-20令牌。

ERC-20代币:

  • 是目前的行业标准
  • 由6个关键功能组成
  • 已经被数以千计的不同加密货币项目所使用

什么是ERC-223令牌?

虽然ERC-20标准非常有用,但它还远非完美。例如,ERC-20的一个特别糟糕的设计缺陷使得当人们错误地使用他们,尤其是如果你将用于普通钱包的token 发送到了智能合约的时候,代币可能会丢失。令人震惊的是,迄今为止这已经导致人们损失了价值超过300万美元的ERC-20代币。

ERC-223通过允许用户将代币转移到具有相同功能的智能合约和钱包来解决这一设计缺陷。此外,ERC-223代币转账只需要一步操作,以此来提高ERC-20的效率。这意味着与ERC-20转账相比,ERC-223令牌转移仅需要一半的费用(即更便宜)。

最重要的是,ERC-223令牌向后兼容ERC-20令牌,这意味着它们在解决上述错误的同时保持了所有原始功能。

由于这些优点,ERC-223标准有朝一日可能取代ERC-20作为最常用的以太坊代币标准。但是,大多数以太坊钱包还不支持ERC-223代币,因此项目开发人员的采用速度很慢。

我们都知道加密货币生态系统的发展速度有多快,如果ERC-223令牌在2019年甚至更早的时候流行起来,那也是非常正常的一件事情。

ERC-223代币:

  • 使用ERC-20令牌标准解决关键缺陷
  • 仅需要ERC-20令牌的一半费用
  • 向后兼容ERC-20
  • 目前还未被广泛使用

什么是ERC-721代币?

当基于以太坊的收藏品游戏CryptoKitties在2017年底获得关注时,ERC-721代币第一次高调的展示在所有人面前。

ERC-721令牌标准与其他ERC标准之间的主要区别在于ERC-721使开发人员能够轻松创建不可替代的令牌(NFT)。

不可替代的令牌非常有用,因为它们可以对独特的个人资产来执行发币的过程。这包括精心培育的数字猫,还有更多传统上有价值的资产,如艺术品,葡萄酒,房地产,文凭等。

以太坊生态系统中最好的项目之一,0x协议,正在努力在其定于2018年7月下旬的v2版本中添加对ERC-721代币和其他新代币标准的支持。

另一个高质量且鲜为人知的项目0xcert专注于不可替代的代币,并使任何人都能够在区块链上创建,拥有和验证独特的资产。此外,0xcert使开发人员可以轻松创建针对各种类型的独特资产量身定制的dapps和智能合约。

随着越来越多的真实资产在未来几年被通证化,ERC-721代币标准将比CryptoKitties知名度更高。从美术和音乐版权到球赛门票的所有权都可以透明地转移到以太坊区块链上。供应链可以在前所未有的水平上确保产品的完整性和可追溯性。至少可以说,ERC-721的潜力令人兴奋。

ERC-721代币:

  • 是不可替代的令牌(NFT)
  • 可用于标记唯一的单个资产
  • 最初由Ethereum dapp CryptoKitties使用,但除了数字游戏之外还有许多可能的应用

什么是ERC-777和ERC-820令牌?

与ERC-223类似,ERC-777旨在改进ERC-20令牌标准,并向后兼容。

ERC-777优于ERC-20的一种方式是,与ERC-223一样,它解决了导致超过300万美元丢失代币的设计缺陷。然而,ERC-777标准的独特之处在于它包含的交易处理机制的广度。

要解释ERC-777,我们必须首先使用ERC-820代币标准。在该标准中,在以太坊网络上建立了智能合约的中央登记处。注册表使任何人都可以“检查”智能合约地址并检查它支持的功能。

ERC-777使用相同的ERC-820中央注册表,使智能合约功能易于验证。它还建立了一套全新的功能,而不是使用ERC-20标准中使用的相同“转账”和“批准”功能。取而代之的是,ERC-777使用“发送”功能,用于传输以太网本身。

ERC-777的另一个重要亮点是它允许“授权执行”,这意味着人们可以批准智能合约代表他们进行代币转账。这使得ER​​C-777具有高度可定制性,因为它允许人们在代币之上构建额外的功能,例如用于改善交易隐私的混合合同,或者如果您丢失私钥,则可以使用紧急恢复功能来帮助您。

此外,ERC-777为发行代币和燃烧令代币创建了一个标准,根据项目的特定通证经济学,这可能非常有用。

不幸的是,目前还没有任何基于ERC-777令牌标准的知名应用程序供我们参考,因此未来该标准是否会被广泛采用还有待观察。考虑到它比ERC-20更具可定制性并减少交易摩擦,今天ERC-20上的每一个应用程序都可以从将来转向ERC-777中受益。

对于任何真正想深入了解细节的人,可以在其github存储库中找到作为ERC-777标准一部分的事务处理机制的进一步说明。

ERC-777代币:

  • 使用ERC-20令牌标准解决关键缺陷
  • 向后兼容ERC-20
  • 使用用于传输ETH本身的函数,使事务更平滑
  • 允许“授权操作”,使其比以前的标准更具可定制性

展望未来

以太坊平台不会保持静态,也不是建立在其上的通证标准。虽然ERC-20代币目前主导市场以太坊为主,但未来应该会有越来越多的项目转向新的和改进的ERC-223或ERC-777令牌标准。

已经有超过100,000个令牌合同已经存在于以太坊(是的,你读的是正确的),开发速度没有显示出放缓的迹象。这些令牌中的大多数无疑将是多余的,无用的,无价值的,但其中少数几个可能会改变我们所知道的世界。

推荐阅读更多精彩内容