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

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

ERC20标准是一个由以太坊社区定义的Token标准,旨在简化Token的发行流程并促进通用Token之间的兼容性。通过ERC20标准,开发者可以在以太坊虚拟机(EVM)上快速创建和管理Token,同时确保不同Token之间能够无缝交易和存储。

ERC20标准的核心功能

ERC20标准定义了一套接口,要求每个遵循该标准的Token合约包含以下公共功能:minimumrepresentation, approve, transfer, transferFrom, allowance以及对应的事件触发机制。

1. 函数接口

ERC20标准指定了多个核心函数,确保各Token实现通用兼容性。以下是关键函数的说明:

  • name(): 返回Token的名称,例如"ShowCoin"。
  • symbol(): 返回Token的缩写简称,例如"SHOW"。
  • decimals(): 返回Token支持的小数精度位数,如"8"表示每个Token价值为100000000微元。
  • totalSupply(): 返回Token的总发行量。
  • balanceOf(address _owner): 返回指定地址账户的Token余额。
  • transfer(address _to, uint256 _value): 将指定数量的Token转移到目标地址,若转账失败则抛出异常。
  • approve(address _spender, uint256 _value):批准指定地址的用户在该Token合约中提取指定数量的Token。
  • transferFrom(address _from, address _to, uint256 _value): 从指定地址转移Token到目标地址,需要先通过approve批准。
  • allowance(address _owner, address _spender): 返回指定地址账户在另一地址账户上剩余可提取Token数量。

2. 事件定义

ERC20标准定义了两种事件,用于记录Token操作的发生,确保交易透明:

  • Transfer(event): 触发在转账交易完成时,记录从源地址转移到目标地址的Token数量。
  • Approval(event): 触发在批准交易完成时,记录账户主权人批准其他地址提取Token。

ERC20标准的应用

为了兼容ERC20接口,Token合约开发者需实现上述标准接口。在创建Token时,开发者需确保以下几点:

  • 初始总量设置:通常将初始总量设为一项特定值,如1,000,000,000。
  • 无限循环保护:确保在转移和批准操作中防止重入攻击。
  • 事件触发:在成功执行转移和批准操作时必须触发相应事件。
  • 通过遵循ERC20标准,开发者可以在以太坊网络上快速创建Token,并确保其与其它Token兼容,支持链上交易和跨Token钱包操作。这一标准的成功应用,使得基于以太坊的区块链生态更具灵活性和扩展性,推动了去中心化金融和 Token 化应用的普及。

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

    你可能感兴趣的文章
    Objective-C实现base64加解密(附完整源码)
    查看>>
    Objective-C实现base64编码 (附完整源码)
    查看>>
    Objective-C实现base85 编码算法(附完整源码)
    查看>>
    Objective-C实现basic graphs基本图算法(附完整源码)
    查看>>
    Objective-C实现BCC校验计算(附完整源码)
    查看>>
    Objective-C实现bead sort珠排序算法(附完整源码)
    查看>>
    Objective-C实现BeadSort珠排序算法(附完整源码)
    查看>>
    Objective-C实现bellman ford贝尔曼福特算法(附完整源码)
    查看>>
    Objective-C实现bellman-ford贝尔曼-福特算法(附完整源码)
    查看>>
    Objective-C实现bellman-ford贝尔曼-福特算法(附完整源码)
    查看>>
    Objective-C实现bellmanFord贝尔曼-福特算法(附完整源码)
    查看>>
    Objective-C实现BellmanFord贝尔曼-福特算法(附完整源码)
    查看>>
    Objective-C实现bezier curve贝塞尔曲线算法(附完整源码)
    查看>>
    Objective-C实现bfs 最短路径算法(附完整源码)
    查看>>
    Objective-C实现BF算法 (附完整源码)
    查看>>
    Objective-C实现Bilateral Filter双边滤波器算法(附完整源码)
    查看>>
    Objective-C实现binary exponentiation二进制幂运算算法(附完整源码)
    查看>>
    Objective-C实现binary search二分查找算法(附完整源码)
    查看>>
    Objective-C实现binary tree mirror二叉树镜像算法(附完整源码)
    查看>>
    Objective-C实现binary tree traversal二叉树遍历算法(附完整源码)
    查看>>