区块链 · 数字资产知识 · 行业资讯
文章库关于本站

行业资讯

区块链新币发行有哪些常见问题:ERC-20标准与实现边界

摘要

以以太坊ERC-20代币为范围,解释发行时常见的标准理解、供应量设计、精度换算、授权和合约接收问题。统一接口方便应用兼容,但发行规则、数量显示与接收处理仍需结合具体实现判断。

区块链价格波动率的科技主题配图

适用范围:以ERC-20代币发行为例

区块链新币发行有哪些常见问题,需要先明确发行对象。本文讨论以太坊上通过智能合约创建的ERC-20同质化代币,不涵盖独立区块链原生币的发行机制。以太坊开发者文档侧重标准接口及接收风险,OpenZeppelin Contracts文档展示基础实现及数量精度,两者分别对应标准与实现层面。

符合标准是否就确定了发行规则

ERC-20统一了余额、总供应量、转账和授权等接口,使应用能够按共同方式与代币交互。同质化表示同一代币的单位具有可互换性,不表示不同代币价值相同,也不表示价值保持不变。

区块链价格预警的科技主题配图

标准接口本身无法回答初始数量分配给谁、后续能否增发等问题。理解发行规则,需要区分对外提供的通用接口与合约内部的具体供应机制。

区块链行情数据api的科技主题配图

初始供应量与分配容易混淆

OpenZeppelin的示例在部署时创建初始供应量,并将其分配给部署地址。这只是示例采用的分配方式,不能据此推断所有ERC-20代币都采用相同安排。

初始创建完成,也不能单独证明供应量以后固定不变。初始数量、持有地址与后续供应机制是不同问题,需要分别说明,避免用一个总量数字代替完整的发行规则。

为什么合约数量与页面显示不同

代币合约以整数记录数量,decimals用于确定显示时的小数位数。OpenZeppelin的ERC20实现默认使用18位精度;显示数量需要由原始整数除以10的精度次方得到。

因此,数量核对必须统一单位。把页面显示数量直接当作合约原始数量,或者对已经换算的数量重复换算,都会造成数量理解错误。精度影响单位表示,不能用来判断代币价值。

授权与转账有什么区别

授权表示允许指定地址在额度范围内代为支出,授权完成本身并不等于代币已经转出。余额表示地址持有多少,授权额度表示第三方获准支出多少,两者应分别理解。

涉及应用交互时,需要区分授予权限与实际转移代币两个环节。仅看到授权记录,不能据此认定接收方已获得代币。

转账成功是否代表应用已接收

以太坊开发者文档指出,ERC-20没有强制的接收通知机制。代币转入不具备处理能力的合约后,可能无法取回;链上余额变化并不自动意味着应用已经记账。

发行与配套应用设计需要同时考虑接收处理和误转处置。增加转账限制也存在兼容性取舍,例如一概禁止转向合约,可能影响依赖此类转入方式的应用。是否支持某种接收方式,应以具体合约功能为准。

← 返回全部文章

延伸阅读 · 相关栏目

行业资讯研究与报告政策资料交易平台观察