位置:芙蓉财经网 >> 币安

以太科学:理解ERC-20托肯契约

2023年07月08日 11:43

欧易okx交易所下载

欧易交易所又称欧易OKX,是世界领先的数字资产交易所,主要面向全球用户提供比特币、莱特币、以太币等数字资产的现货和衍生品交易服务,通过使用区块链技术为全球交易者提供高级金融服务。

APP下载   官网注册

eth(以太坊)以太坊钱包基本概念介绍

以下文章将简要介绍符合ERC-20标准的各种代币,并解释ERC-20的特点和功能,以便读者了解什么是代币合约。以及开发者应该如何使用该标准。

ERC-20最初是试图为以太坊上的令牌合约提供一个通用的特性和接口标准,现在已经被证明是非常成功的。。ERC-20有许多优点,包括允许钱包显示数百种不同代币的账户余额;创建一个交易工具,只需提供令牌合约的地址,就可以在表中列出更多的令牌。创建ERC-20兼容令牌有很多好处。所以今天,很少有其他的象征性契约是以其他方式产生的。关于"什么是代币合同?"本质上,令牌合约是一种智能合约,包含帐户地址及其余额的映射。帐户余额代表由合同创建者定义的值:令牌合同可以使用余额来代表物理对象。,或另一种货币的价值,也是持有者的声誉。余额的单位通常称为代币。

当代币从一个账户转移到另一个账户时,代币契约更新两个账户的余额。例如将10个令牌从0x2299…3ab7传送到0x1f59…3492将导致余额列表更新,如下图所示:

如果该token合约允许的话有两种方法可以改变代币的总供应量。可以通过铸造新的代币来增加代币的总供应量。例如,将100token转换为地址0x4ba5…ae22将导致余额更新,如下图所示:

代币的总供应量也可以减少"摧毁"现有令牌。比如0x4919…413d销毁50个token,会导致余额更新如下图:

销毁令牌的另一种方法是将其发送到尚未创建私钥的地址,该地址通常为地址0。这将使这些令牌无法使用。在这方面,它具有与销毁令牌相同的效果,但并不减少令牌的总数。例如,0x93f1…1b09这样破坏50个令牌,会产生如下图所示的余额:

一个简单的令牌协定将上述信息存储在从地址到余额的映射中。当更复杂的情景出现时,如支付股息,替代结构或补充结构往往会变得更强。然而,不管操作细节如何,,外部可见的令牌余额始终如上图所示。

一个ERC-20合约是由合约的地址和它的可用令牌总供应量定义的,但它通常会为用户提供一些不必要的东西和更多的细节。。它们包括令牌的名称、徽标和小数位数。这些都将包含在下面的细节中。

在进入细节之前,理解这个问题是很重要的:令牌合同没有集中的注册中心。因此,无法保证特定名称和符号的唯一性。一旦您创建了令牌合同,您应该请求将其添加到公共网站,如Etherscan、MyEtherWallet和CoinMarketCap。当然确保你遵循网站上的说明可以最大化你被录取的机会。

代币合约的名称是代币合约应该知道的完整名称,例如"我的令牌"。名字的长度没有限制。,但是全名在一些钱包应用中更容易显示不完整,所以还是把名字弄短一点比较好。

代币合约的符号是代币合约应该知道的符号,如"MYT";从广义上讲,它是股票代码的对应物,并且虽然没有严格的长度限制,但长度往往是3或4个字母。

十进制数字往往是混乱的来源,但经过合理的解释后就非常容易理解了。十进制数字表示令牌的整除性。,从0位小数位(即完全不可分)到18位小数位(几乎连续),必要时可以有更多的小数位。从技术上来说,小数位的意义是在屏幕上显示代币数值时,显示小数点后的位数。。小数位之所以存在,是因为以太坊不处理带小数的数字,只显示整数的数字值。考虑下面两个例子:

第一个例子是LicenseToken。显示给定软件产品的软件许可证分配的令牌合同;有了LicenseToken,用户就可以使用软件了。持有少于一个LicenseToken是没有意义的。因此令牌创建者将小数位设置为0。一些LicenseToken的帐户余额如下。

可以看到,在这里有100份许可,主要由账户持有。当用户购买许可证时,令牌将从持有帐户转移到买方';的账户。许可证验证器可以检查特定帐户是否真正持有LicenseToken,然后采取相应的行动。

第二个例子是Goldtoken,一种代表实物黄金所有权的代币合约。合约创建者希望表示每单位1千克黄金的单位,但也希望允许用户以克(但不能更低)的水平持有和交易黄金。因为以太坊不支持小数,一个代币必须代表一克黄金,并且为了向外界表示1000克为单个1Kg单位。,小数位应设为3(因为10^3克,即1公斤黄金,是代币契约创建者希望显示为1token的单位)。一些金权持有者可以用下面的图片来表示。

在这里,您可以看到总共有50公斤黄金(每枚代币1克乘以50,000个代币)。

但是,如果小数位设置为3,用户';的情况将如下:

可以看到将小数位设置为3实际上意味着当显示GoldToken余额时,小数点后应该有3位数字。

十进制数字通常被称为人性化元素。因为它允许令牌合约定义它们希望如何向用户显示余额。GoldToken不在内部处理小数位,也从不在自己的计算中使用小数位,因为一切都是以克为单位计算的。但它允许用户使用黄金的常用单位(千克)而不是合同中使用的单位(克)。

如上面的GoldToken所示,可分性的概念允许Token合约显示非常小的十进制值。而token经常将小数位设置为18,给token一个近乎连续的取值范围。

综上所述,决定取多少位小数时,应遵循以下规则:

代币契约是否代表不可分的对象?(如果是)将小数位设置为0的契约

token是否代表一个具有特定小数位的对象?如果以上两种情况都不成立,则将小数位设置为该数字

。请将小数位设置为18

了解小数位对合同创建的影响很重要。创建的令牌数应该等于令牌总数,并且要求是10位小数的倍数。正如你在黄金令牌的例子中看到的。token的创造者们想创造一种代币来代表50公斤的黄金,但由于小数点后有三位,他们不得不发行50000枚代币(5010^3)来做到这一点。

总供应量是定义ERC-20代币合约的最后一个因素,正如我们提到的,它是唯一的强制参数。尽管ERC-20规范中没有明确提到,但总供给的概念很简单:总供给等于所有余额的总和。。总供应量在上面的例子中已经显示出来了,所以这里不需要赘述。

ERC-20令牌契约有一系列的功能,它允许用户发现用户';核实后将余额从一个账户转到另一个账户。。让';让我们描述一下这些功能。函数的作用是:提供一个给定地址的令牌数量。请记住,任何人都可以检查任何地址的余额,就像区块链上的所有数据都是公开的一样。

将令牌从一个地址发送到另一个地址有两种方式。transfer()函数可以将一些令牌从发送方直接传输到森林中的一个地址。记住,人们不会';不要检查收货地址。因此,发送方有责任确保接收方的行为符合预期。

虽然使用transfer()将token发送给另一个用户很棒,但是当token用于支付智能合约中的某个功能时,它就不起作用了。。这是因为当智能合约运行时,它可以';t获得哪个地址被转移到哪里的细节,所以它可以';不能保证调用该合同的用户已经支付了启动该合同所需的金额。

假设网络上部署了一个合同执行者。。Doer有一个函数dosomething(),它需要10个Do标记才能运行。Joe想调用dosomething(),他的帐户中也有50Dotoken。。Joe如何支付Doer才能让后者成功运行dosomething()?

approve()和transferFrom()是两个等式,使用一个两步过程就可以解决上述问题。。第一步,令牌持有者批准另一个地址(通常是智能合同)从本地传输最大特定数量的令牌,这就是所谓的配额。令牌持有者使用approve()来提供此信息。。

在上述例子中第二行显示地址为0x1f59…3492的Joe已经允许地址为0xd8f0…c028的Doer从Joe'的账户。

创建许可后,智能合同可以占用来自用户的许可数量的令牌';作为合同运作的一部分。继续这个例子。Joe现在可以调用dosomething()而dosomething()可以使用transferFrom()从Joe'然后开始它的工作。如果乔没有';他的账户里没有10个代币,或者额度少于10个代币。Dosomething()会崩溃。函数的作用是:提供允许从一个给定地址提取到另一个地址的令牌数量。记住,任何人都可以查看任何地址的余额。正如在区块链所有的信息都是公开的一样。重要的是要知道配额是"软"因为所有单个或累积配额都可能超过某个地址的余额。在上面显示的表格中,持有者0x2299.3ab7最多允许转账500个代币,但是他的余额,如上图,只有90个代币。任何使用allowance()的合约,在计算可用令牌数时。,你必须额外考虑用户';的平衡。ERC-20定义了在合同中采取相关行动时,必须触发两种事件。第一种事件是Transfer()就是公布令牌从一个地址转移到另一个地址的细节。第二种事件是Approval(),它发布将令牌从一个地址转移到另一个地址的细节。这些可用于跟踪地址余额和配额的变化。,没有询问区块链。

造型令牌将发出一个以o地址为源的Transfer()事件。

销毁令牌时,不会发出任何事件。因为这个。ERC-20令牌合约通常通过transfer()而不是真正的销毁将令牌发送到地址0来销毁令牌。

ERC-20为构建令牌合约提供了良好的基础。,但也不是没有问题。ERC-223协议提供了额外的功能和安全措施,但它与ERC-20不兼容。Tokencontract的构造今天将继续遵循ERC-20,开发者应该遵循ERC-223协议并为之做出贡献。

以上是以太坊的科普:了解ERC-20代币契约的细节。更多了解ERC-20代币合同的信息,请关注www.dadaqq.coM其他相关文章!

本站提醒投资有风险,入市需谨慎。此内容不作为投资理财建议。

标签:以太坊ERC20oken合约

推荐阅读

哪个app投资虚拟货币(投资虚拟币app)
非功能测试应用程序
2009年去哪里买比特币(2009年怎么买比特币?)
以太科学:理解ERC-20托肯契约
挖掘虚拟货币链接
DeFi领域龙头币是什么?DeFi领域的产品项目盘点
区块链LINK币是什么币?Link币有潜力吗?
VISR币的发行量是多少?VISR硬币发行总量介绍
虚拟货币又叫什么
各大机构持有虚拟货币数据
文章来源: summer
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至405936398@qq.com 举报,一经查实,本站将立刻删除。
相关资讯
虚拟货币哪里来的现金 虚拟货币交易钱怎么到账
虚拟货币哪里来的现金 虚拟货币交易钱怎么到账 1970-01-01

一个ERC-20合约是由合约的地址和它的可用令牌总供应量定义的,但它通常会为用户提供一些不必要的东西和更多的细节

虚拟货币排查 打击清理虚拟货币十大措施
虚拟货币排查 打击清理虚拟货币十大措施 1970-01-01

一个ERC-20合约是由合约的地址和它的可用令牌总供应量定义的,但它通常会为用户提供一些不必要的东西和更多的细节

中国持有虚拟货币合法吗 在我国买卖比特币等虚拟货币合法吗?为什么?
中国持有虚拟货币合法吗 在我国买卖比特币等虚拟货币合法吗?为什么? 1970-01-01

一个ERC-20合约是由合约的地址和它的可用令牌总供应量定义的,但它通常会为用户提供一些不必要的东西和更多的细节

虚拟币哪个平台最火 虚拟币哪个平台最火爆
虚拟币哪个平台最火 虚拟币哪个平台最火爆 1970-01-01

一个ERC-20合约是由合约的地址和它的可用令牌总供应量定义的,但它通常会为用户提供一些不必要的东西和更多的细节

缩表对虚拟货币 缩表对大宗商品影响
缩表对虚拟货币 缩表对大宗商品影响 1970-01-01

一个ERC-20合约是由合约的地址和它的可用令牌总供应量定义的,但它通常会为用户提供一些不必要的东西和更多的细节

虚拟货币数量单位有哪些,货币单位m是什么意思
虚拟货币数量单位有哪些,货币单位m是什么意思 1970-01-01

一个ERC-20合约是由合约的地址和它的可用令牌总供应量定义的,但它通常会为用户提供一些不必要的东西和更多的细节