[区块链&DAPP介绍 Day29] Dapp 实战 何谓 token

今天来聊聊整个以太坊合约应用里面一个很特殊的东西 token

token 在区块链里面,我觉得翻译成 代币 会比较适合,而不是一般语言常用的翻译 令牌,那到底它是什麽意思呢?

简单来说它也是透过合约去规范多少 eth 换多少 代币,也可以规范整个代币全部的总发行数量,至於这个代币的数值,就是储存在合约的纪录中。讲到这边大家又会问?那是不是任何人都可以自己写合约自订自己的代币?那这样它有什麽货币效力呢? 所以以太坊的合约规范里面有设定一个东西,叫做ERC20,它是一个 interface ,只要符合这个 interface ,它就具备完整的货币交易机制。

下面来看一下一个 ERC20 的 interface

contract ERC20 {
    //总代币发行量
    function totalSupply() constant returns (uint totalSupply);
    //owner户口结余
    function balanceOf(address _owner) constant returns (uint balance);
    //传送代币到位址
    function transfer(address _to, uint _value) returns (bool success);
    //从 a 地址 传送代币到 b 地址
    function transferFrom(address _from, address _to, uint _value) returns (bool success);
    function approve(address _spender, uint _value) returns (bool success);
    function allowance(address _owner, address _spender) constant returns (uint remaining);
    event Transfer(address indexed _from, address indexed _to, uint _value);
    event Approval(address indexed _owner, address indexed _spender, uint _value);
}

只要 contract 中有实现上面的东西,它就是一个合法且具备完整交易功能的 token,透过这个 token 机制,可以使整个 contract 更灵活的应用。

这种作法在很常应用在 ICO (Initial Coin Offering),数字货币首次公开募资


<<:  DAY25 - 自学就像瞎子摸象,在未知的情况下试图拼出原貌

>>:  热情,是唯一答案

GoLang 语言

https://wolkesau.medium.com/golang-语言-d86e8a781fb3...

从 JavaScript 角度学 Python(22) - GitHub API

前言 前面我们已经学习了不少的 Python 新知识,所以也差不多该到了实作一下前面的知识点,这样子...

Angular Stock上市个股日成交(一)(Day27)

今天我们要开始实作最後一个页面了,这个页面功能是可以显示上市个股日成交的资讯 还记得我们在Angul...

Day28 Gin with SMTP Server

What is an SMTP Server? SMTP 全名为Simple Mail Transf...

[Day28] 沟通之术 - 测试工程师篇

这是铁人赛接近尾声的倒数第 3 篇~今天就来讲讲跟测试工程师的沟通之术吧! 前言 原本是个坐在位置上...