博客
关于我
ERC20
阅读量:553 次
发布时间:2019-03-09

本文共 1572 字,大约阅读时间需要 5 分钟。

ERC20

ERC20是一套发行的token标准,可以让Token的发行变得非常容易,甚至可以做到5分钟之内就发行一种新的Token。以太坊上的token种类很多,这么多token的标准不统一的话也就没办法办到token之间的交易以及多种token的钱包。所以,有了ERC20这样统一的标准,有利于Token的流通以及相关产品(比如钱包、交易平台)的开发。它本身就是以太坊上的智能合约。

为了充分兼容 ERC20,开发者需要将一组特定的函数(接口)集成到他们的智能合约中。

ERC20标准(标准接口)

方法:

name:
function name() constant returns (string name)

返回ERC20 token的名字,例如:ShowCoin

symbol:
function symbol() constant returns (string symbol)

返回ERC20 token的缩写简称,例如:SHOW

decimals(可选):
function decimals() constant returns (uint8 decimals)

返回支持小数点后几位。 比如 8,表示分配token数量为100000000。

totalSupply
function totalSupply() constant returns (uint256 totalSupply)

返回发行 token的总量

balanceOf
function balanceOf(address _owner) constant returns (uint256 balance)

返回地址是_owner的账户的账户余额。

transfer
function transfer(address _to, uint256 _value) returns (bool success)

转移_value的token数量到的地址_to,并且必须触发Transfer事件。 如果_from帐户余额没有足够的令牌来支出,该函数应该被throw。

创建新令牌的令牌合同应该在创建令牌时将_from地址设置为0x0触发传输事件。

approve
function approve(address _spender, uint256 _value) returns (bool success)

批准一账户从自己的账户花费_value个token。可以分多次转移。

transferFrom
function transferFrom(address _from, address _to, uint256 _value) returns (bool success)

approve批准花费之后,调用transferFrom函数来转移token。

allowance
function allowance(address _owner, address _spender) constant returns (uint256 remaining)

返回一账户还能提取token的个数。

事件

Transfer
event Transfer(address indexed _from, address indexed _to, uint256 _value)

从地址_from发送数量为_value的token到地址_to,必须触发Transfer事件。

转移成功时,必须要触发Transfer事件

Approval
event Approval(address indexed _owner, address indexed _spender, uint256 _value)

调用approval函数成功时,必须要触发Approval事件

转载地址:http://krosz.baihongyu.com/

你可能感兴趣的文章
mysql5.7 for windows_MySQL 5.7 for Windows 解压缩版配置安装
查看>>
Webpack 基本环境搭建
查看>>
mysql5.7 安装版 表不能输入汉字解决方案
查看>>
MySQL5.7.18主从复制搭建(一主一从)
查看>>
MySQL5.7.19-win64安装启动
查看>>
mysql5.7.19安装图解_mysql5.7.19 winx64解压缩版安装配置教程
查看>>
MySQL5.7.37windows解压版的安装使用
查看>>
mysql5.7免费下载地址
查看>>
mysql5.7命令总结
查看>>
mysql5.7安装
查看>>
mysql5.7性能调优my.ini
查看>>
MySQL5.7新增Performance Schema表
查看>>
Mysql5.7深入学习 1.MySQL 5.7 中的新增功能
查看>>
Webpack 之 basic chunk graph
查看>>
Mysql5.7版本单机版my.cnf配置文件
查看>>
mysql5.7的安装和Navicat的安装
查看>>
mysql5.7示例数据库_Linux MySQL5.7多实例数据库配置
查看>>
Mysql8 数据库安装及主从配置 | Spring Cloud 2
查看>>
mysql8 配置文件配置group 问题 sql语句group不能使用报错解决 mysql8.X版本的my.cnf配置文件 my.cnf文件 能够使用的my.cnf配置文件
查看>>
MySQL8.0.29启动报错Different lower_case_table_names settings for server (‘0‘) and data dictionary (‘1‘)
查看>>