在区块链领域,Token最为普遍又广泛的翻译是“代币”。要说起这一概念在产业内广泛的熟知和使用,就不得不说ERC-20标准。
ERC-20标准是以太坊在2015年11月推出的,它是一种实现代币合约的标准函数。使用这种规则的代币,表现出一种通用的和可预测的方式。简单地说,就是任何ERC-20代币都能立即兼容以太坊钱包(几乎所有支持以太币的钱包,也支持ERC-20的代币)
1. Token合约的概念
本质上说, Token合约就是包含了一个对账户地址及其余额的映射的智能合约。账户余额表示一种由合约创建者定义的值: 一个Token合约也许使用余额来表示物理对象,或是表示另一种货币价值,还可以表示持有人的名誉。而余额的单位通常被称为 Token.
一个ERC-20合约是通过合约地址以及它可用的 Token总供给来定义的,但它通常还提供一些非必需的东西,也是为用户提供更多细节,包括该 Token的名字、标志、小数位。
Token合约的名字(name)是该 Token合约应被知道的完整名称。名字的长度没有限制,但完整名称在一些钱包应用中更容易显示不完全,所以名字短些较好。
Token合约的标志( symbol)是该 Token合约应被知道的符号。广义上,它对应着金融市场的股票代码,没有严格的长度限制,它的长度通常是3个或4个字母。
Token的小数位( decimals)意味一个Token的可切分性,从0位小数(即完全不可切分)到18位小数(几乎是连续的)小数位经常被称为是一个人性化的元素,从技术上来说,它的意义在于在屏幕上显示 Token价值的时候小数点后面跟着的位数。
2. Token合约的功能
ERC-20 Token合约拥有一系列的功能,它允许用户发现用户的余额,也允许余额经过验证从一个账户转账到另一个账户,这些功能依靠合约代码来实现。
在一个 Token代币合约代码中,有两个函数很重要, Balance( )和 Transfer( )。
Balance( )函数提供了被一个给定地址持有的 Token的数量,即返回地址是_ owner的账户的账户余额。任何人都可以查到任何地址的余额,正如所有数据在区块链上都是公开的。
Transfer( )函数可以从信息发送者那里直接转一些 Token到另一个地址,即转移、 value l的 Token数量到地址_to,并且必须触发 Transfer事件。人们不会查验接收地址,因此确保接收者按预期的方式行动是发送者的责任。
网友评论