说起ERC20协议,想必币圈的投资者们都不陌生,我们在买入USDT时,就会看到ERC20、TRC20、Omni这三个选项,那么这些究竟代表了什么呢。其实这都是代币协议,TRC20是基于TRON网络中的一种代币协议,存储在TRON的地址当中,充值、提现都是通过TRON网络进行的,Omni是一种在比特币地址上的代币协议,所以每次转账(链上转账)时,都需要支付少量的比特币作为矿工费。那么究竟ERC20协议是什么意思?下面就让币圈子小编为大家通俗解释ERC20协议。
首先ERC代表“Etuereum Request for Comment”
以太坊社区为了创建一个以太坊平台的标准,开发人员提交了一个以太坊改进方案(EIP),改进方案中包括协议规范和合约标准。最终确定的EIP为以太坊开发者提供了一套可实施的标准。这使得智能合约可以遵循这些通用的接口标准来构建。
ERC-20标准中定义了一些函数接口,这里不做讨论。大部分空投玩家,也不需要深入研究,有兴趣的朋友可以百度一下。
ERC20标准规定了各个代币的基本功能,它可以快速发币,而且使用又方便,因此空投币和大部分基于以太坊合约的代币基本上就是利用ERC-20标准开发的;
除了ERC20之外,还有ERC20,ERC721,ERC223,ERC621,ERC827, 具体不做累述,但是对ERC721顺便说一下,ERC721是主要用于区块链游戏的协议,大家经常看到的区块链游戏基本上是基于ERC721。
我在此描述一个ERC-20合约的功能和事件签名的基本界面,以下将对每个功能做详细解释。
total Suplytotal Suply为一个公共函数(public function),展示了目前该token的流通总量,可以被所有函数调取。因为这个函数被标记了viewmodifier,所以调取此函数不需要花费任何gas。所以,你可以免费的获取任何基于ERC-20的token的流通总量信息。每当有新token被通过挖矿的方式加入到流通市场,该逻辑就会更新内部变量totalSupply_的值。这个值可以通过以下方式获取。
balanceOfbalanceOf也是一个公共函数,同样被标记了viewmodifier,因此所有人都可以免gas费访问。此函数接受一个以太坊地址作为输入,并返回该地址拥有的token数量。这个函数作为系统内部的一个映射以如下方式展示。
transfertransfer函数与以上函数不同,token转账是需要消耗gas的,因为转账将导致以太坊智能合约中一个状态的变化。Token持有者调用此函数来实现将token从一个地址转移到另一个地址。_to代表token接收者的地址,转移的数量为value个token
allowance,approve 和 transferFrom最后介绍allowance,approve和transferFrom函数,这几个函数提供了一些高级功能,用于授权其他以太坊地址的所有者代表你使用你的token。这个“其他以太坊地址”可能是一个智能合约,也可能只是一个普通token账户。
●approve函数。Token所有者可以调用这个函数授权spender代表它使用value数量的token。
●allowance 函数。此函数被用来查看owner给spender的token额度。
●transferFrom函数。spender可以调用此函数来执行转账,转账金额不应超过其被授权的额度。
综上所述,就是币圈子小编对于ERC20协议是什么意思这一问题的回答,希望币圈子小编的这篇关于通俗解释ERC20协议的文章能够帮助各位投资者对ERC20协议这一概念有一个更加全面深入的了解。在这里提醒各位投资者,虽然目前ERC-20是最流行、最基本的以太坊代币标准,但是目前以太坊网络的拥堵以及高昂的手续费让很多投资者都望而却步,如果是为了解决某些特定的问题,一些改进还是必要的,我们期待未来的以太坊能够带给我们更好的体验。