2015年11月19日,Fabian Vogelsteller在以太坊EIP改进方案(Ethereum Improvement Proposal)中的ERC 20提案中作出了对代币标准的提议,使代币创建、转移、确认等一系列操作标准化。
ERC-20是以太坊区块链上执行以太坊智能合约,执行代币操作的技术标准。ERC是“Ethereum Request for Comments”的缩写。
以太坊本身并不符合ERC20标准,代币是在独立的智能合约中执行,只能和与众的WETH与以太坊1;1锚定。
ERC-20的作用
ERC-20标准定义了一系列的函数,提供标准化的以太坊智能合约API接口,使以太坊平台代币发行简单易行。符合ERC-20标准的代币兼容以太坊钱包,支持以太坊的平台就默认地支持所有以太坊代币,实现即刻兼容,因而大大方便了钱包商、交易所等。
绝大多数代币符合ERC20标准,只有极少数如GNT(Golem Network Token)是例外。
ERC-20的后果
ERC-20标准代币带来了2017年ICO发行的爆发,大量储蓄不断、络绎不绝的ICO使以太坊在一年内价值暴增400倍。高峰时期的5-7月,以太坊不堪重负,网络阻塞严重。
ERC-20标准的参数
创建ERC-20代币只需设置以下参数:
Name代币名称;
Symbol代币符号;
Decimals精确到小数点后的位数;
totalSupply获得代币总供应量;
balanceOf获得账户所有者余额;
transfer转移一定数量的代币;
transferFrom从某地址到另一个地址,通常是一个交易所提币的操作;
approve批准花费代币;
allowance是一个查询函数,返回交易所上的这个地址可以提多少币的结果。
代币操作事件
Transfer(转账):transfer或者transferFrom被调用,触发转账动作。
Approval(确认):提币请求被批准。