以太坊代币标准简介
绝大多数的区块链创业团队都在以太坊(Ethereum)上开发自己的项目,并使用以太坊网络发行自己的代币(Token),代币发行的标准需要遵从以太坊代币标准(ERC-Token Standard),这篇文章就帮你梳理一下以太坊的各种代币标准。
什么是以太坊代币标准(ERC-Token Standard)?
建立在以太坊网络上的区块链项目代币,需要遵从以下几种代币标准:ERC-20,ERC-223,ERC-621,ERC-721,ERC-827。其中 ERC 是 Ethereum Request for Comments 的简称,直译过来是 以太坊注释请求,本身这是一个包含结构化信息的网络指令。ERC-Standard 是由以太坊社区定义出来,用户和以太坊网络进行交互的规则。但本身这个标准并不是一尘不变的,社区开发者可以提出自己定义的新标准,但是这个标准需要被整个以太坊社区接纳才能应用在以太坊网络上。
理解ERC20代币合约
ERC20代币合约可以说在发币中算是听到非常多的一个名词了,说到发币都会想到这个合约。本文我们就谈谈如何理解ERC20代币合约。
有关ERC20标准可以参考 官方文档 ,可以说比较抽象,使用Solidity描述的ERC20的接口。
ERC-20最初作为一种尝试,旨在为以太坊(Ethereum)上的token合约提供一个特征与接口的共同标准,并且,它现在已经被证明是非常成功的了。ERC-20有很多好处,包括允许钱包显示数以百计不同token的账户余额;创建一个交易工具,只需提供token合约的地址就可以将更多token列入表中。创建ERC-20兼容token的好处很多,以至于在今天,很少有其他token合约用其他方式创建。
目前依旧有“代币(token)合约到底是什么”的争论。本质上来说,一个代币合约就是一个包含了一个对账户地址及其余额的映射的智能合约。账户余额表示一种由合约创建者定义的值:一个代币合约也许使用余额来表示物理对象,或是表示另一种货币价值,还可以表示持有人的名望。余额的单位通常被称为token。
当token从一个账户被转移到另一个账户的时候,代币合约更新两个账户的余额。例如,从 0x2299…3ab7 转移到 0x1f59…3492 10个token将导致余额列表如下图所示进行更新:
如果该token合约允许的话,改变token总体数量有两种方案。token的总数可以通过铸造新token来增加。举个例子,铸造出100个token到地址 0x4ba5…ae22 余额变更如下图所示:
也可以通过“销毁”减少token总量,比如,0x4919…413d 销毁50枚token将导致余额如下方式变化:
销毁token的另一种方式是将token发送到一个未创建私钥的地址,通常来说就是 0地址 。这会使得这些token不可用,在这方面,它与销毁token有同样的效果,但并没有减少token的总数。比如, 0x93f1…1b09 用此种方式销毁了50枚token将导致如下图所示的余额:
简单的代币合约在一个从地址到余额的映射中保存上述信息。当更多复杂的情景出现时,比如分红,替代性结构或者增补性结构往往更强一些。但是,不管操作上的细节的话,对外部可见的token余额总是像上面的图示那样的。
ERC20 合约是通过合约的地址以及可用的token总数来定义的,但通常还提供一些可选项目,也是为用户提供更多细节。比如token的 名字 、 符号 、 小数位 等等。
在深入了解之前,必须明确一点:代币合约没有中心化的登记处,因此无法保证特定名字和符号的唯一性。一旦你创建了一个代币合约,你应该申请将它加入公共站点,如Etherscan,MyEtherWallet 以及 CoinMarketCap。当然,确保符合网站上的说明,可以最大限度提高申请被接受的机会。
代币合约的 名字 是代币的完整名称,比如“My token”。名字长度没有限制,但是太长的话在某些钱包应用中可能显示不完整,所以最好保持名字的简洁。
代币合约的 符号 是代币的符号,比如“MYT”。大体相当于股票行情自动收录机。尽管没有长度限制,但通常都是三四个字符长度。
小数位 这个概念通常容易混淆,通过解释还是很容易理解的。 小数位 代表一个token的可分割程度,小数位可取值从0(完全不可分割)到18(几乎是连续的),甚至还可以更高。技术上讲, 小数位 的数字就是显示在屏幕上小数点后面跟着的数字。存在 小数位 的意义在于以太坊不处理小数,将所有的数字价值都当做整数处理。
总发行量 是ERC20代币合约最后定义的项,而且是唯一一个强制参数。尽管在ERC20标准中没有明确规定,但是定义 总发行量 十分简单: 总发行量 等于所有余额的总和。 总发行量 在上面的例子中已经给出,无须赘述。
币印收款地址填eth-erc20地址可以收到吗
可以收到。
Erc20充币地址与ETH充币地址已统一。充值Erc20币种到ETH充值地址,系统将自动识别并上账。同时,系统升级前,原有Erc20币种充值地址,仍接受充值并可上账。
ERC20 就是以太坊生态中的通证(token) 标准,允许任何实现该标准的且通过智能合约实现的通证从钱包到去中心化的交易所能够被复用。以太坊的英文名是Ethereum,它是一个公共区块链平台,该平台可以用来处理点对点的智能合约。2013年到2014年期间,Vitalik Buterin提出了有关于以太坊的相关概念,直到2014年,以太坊的发起人们得到了众筹的资金后才得以发展。以太坊的设计原则一共有四个,分别是无歧视原则、模块化原则、通用原则和简洁原则,其中无歧视原则指的是以太坊的网络协议支持玩家创建特定的应用,平台不会特定去反对某些应用。
什么是以太坊(Ethereum)?imToken支持符合ERC20代币
以太坊(Ethereum)是一个开源的有智能合约功能的公共区块链平台。通过其专用加密货币以太币(Ether,又称“以太币”)提供去中心化的虚拟机(称为“以太虚拟机”Ethereum Virtual Machine)来处理点对点合约。以太坊的概念首次在2013至2014年间由程序员Vitalik Buterin受比特币启发后提出,大意为“下一代加密货币与去中心化应用平台”,在2014年通过ICO众筹得以开始发展。
以太坊不仅是一个数据库,它还允许你在区块链的可信环境中运行程序。以太坊在区块链上搭建了一个名为 EVM(Ethereum Virtual Machine,以太坊虚拟机)的虚拟机。EVM 允许在区块链上验证和执行代码,为代码在每个人的机器上以相同方式运行提供保障。这些代码包含在智能合约中。除了追踪账户余额,以太坊使用相同方法将 EVM 的状态保存在区块链上。所有节点处理智能合约,来验证合约本身及其输出的完整性。
eth和erc20的地址一样吗
现在已经统一,是一样的地址。
Erc20充币地址与ETH充币地址已统一。后续,您充值Erc20币种到ETH充值地址,系统将自动识别并上账。同时,系统升级前,原有Erc20币种充值地址,仍接受充值并可上账。
USDT-ERC20是Tether泰达公司基于ETH网络发行的USDT,充币地址是ETH地址,充提币走ETH网络。USDT-ERC20使用的是ERC20协议。
2018年初,以太坊网络爆红,智能合约普及于区块链应用,ERC20-USDT出现。和Omni-USDT一样,使用ERC20-USDT同样需要支付旷工费,但转账速度有了显著的提升。由于安全性好、转账速度快。
ERC20-USDT被市场广泛接受,USDT的发行者泰达公司也开始放弃了比特币Omni,转而支持更高效的以太坊ERC20。
ERC20的简介:
ERC-20引入了可替代Token(代币)的标准,换句话说,它们具有使每个Token(代币)与另一个Token(代币)完全相同(在类型和价值上)的属性。
例如,ERC-20,Token(代币)的行为与ETH相同,这意味着任意1个遵循ERC-20规则的Token(代币)与所有其他所有Token(代币)是平等和相同的。
?由Fabian Vogelsteller在2015年11月提出的ERC-20(以太坊请求注释20)是一种Token标准,在智能合约中实现了Token的API。