ERC20是时候退出历史舞台了
以太坊上ERC20标准的诞生打开了潘多拉魔盒。 这个标准让开发者可以非常轻松地构建自己的代币系统,带来了 1c0 的春天和疯狂的牛市。
在让无数人获得财富的同时,ERC20的一个漏洞也蒸发了很多人的财富。
你有没有试过从某个地方转出硬币,但还是收不到,然后硬币飘在空中,拿不回来? 这很可能是不负责任的开发者对ERC20漏洞的混淆造成的。
相信看到这篇文章的人,或多或少都持有ERC20代币。 今天我们就来聊一聊划时代的ERC20及其背后隐藏的风险。
基础知识:什么是 ERC20?
已经知道的同学可以跳过这部分。
ERC20代币标准出现于2015年,在它出现之前,开发者需要建立大量的标准和代码才能在以太坊上发行自己的币。 ERC20标准大大简化了这项工作,并因此彻底颠覆了加密货币市场,为2017年全球众多ICO加密货币项目打开了大门。
主网上线前最著名的ERC20 Token有EOS、BNB、VeChain等。
你的币是怎么丢的? ERC20漏洞分析
ERC20 是以太坊上的第一个代币标准。 在第一版代码中出现逻辑问题或错误是很常见的。
ERC20中有两种操作代币转账的方法,分别针对不同的目的地、账户和智能合约地址。 我觉得这个可以理解为个人账户,还有智能合约代码的“公众账户”:
1. 要将代币从您的账户发送到其他人的账户,请使用“转账”方式。
2. 要将代币从您的账户发送到智能合约地址,您需要连续调用两个方法:“approve”和“transferFrom'”。 那就是两个步骤:
一种。 授权:我允许这个智能合约账户转账我的token
b. 转出币种:从我的账户转入xxx代币
这看起来没什么问题,但是万一有人在写代码的时候不小心在一个“私转公”的转账函数中使用了“转账”怎么办? 出现以下错误:
举个例子,假设你从交易所A转币到交易所B(通常是到一个智能合约地址),假设交易所A使用了错误的转账方式,结果是你的币余额减少了,但是交易所B的币实际上是在那里收到的,但由于转账方式错误,没有显示到货。
如果B交易所没有一个很好的应急机制,那你就永远回不去那些飘在空中的币了。
截至今天,有超过 60,000 个 ERC20 合约。 由于上述错误ERC20代币地址与以太坊地址,以太坊生态系统损失了数千万美元。
新解决方案:ERC223、ERC777、BCH彩色币
社区成员提出了一个基于安全的ERC223标准来检查转账方式的目的地是账户地址还是只是合约地址。 如果发现不是正常的账户地址,则返回错误,调用tokenFallback方法将币转回。
但是ERC233要求智能合约中有tokenFallback方法,否则币还是会丢的。
ERC777标准诞生于2017年11月,是试图解决漏洞的新版本,向下兼容ERC20。 也就是说,任何使用ERC20的应用程序也可以使用ERC777。
该协议的好处是:
当用户与智能合约进行交互时ERC20代币地址与以太坊地址,交互从 2 次交互变为 1 次交互,这意味着需要支付的时间、资源和以太币都减少了。 反之,这会消耗较少的以太网资源并解决一些拥塞问题。
可设置黑名单地址,一定程度上避免黑客攻击造成的损失。
这也使得交易所更容易遵守“了解你的客户”(KYC)和反洗钱(AML),有利于以太坊区块链的合规发展。
此外,BCH网络上还有一种名为“彩色币”的代币发行方案。 与可以在以太坊网络上生成的无限代币不同,彩色币是有成本的。 BCH 上发行的最小代币单位是聪。 要发行代币,必须有相应的货币数量(以聪为单位)。 也就是说,这是一个不会“归零”的代币方案。
Queen相信竞争会带来更好的产品,因此她也很期待这个新的市场选择,能否在满足安全要求的同时,实现ERC20的易用性。
为什么我们还在使用ERC20标准?
总结一下,目前代币的大部分应用都是类似的——ICO。 ERC223和ERC777试图以不同的方式解决ERC20的问题。 值得注意的是,在以太坊经典系统中,ERC233 已经取代了 ERC20 的地位。
女王在此冷冷表示,如果暂不考虑新标准,使用ERC20进行新币发行和融资项目,是对投资者的不负责任。 虽然这篇文章只是一篇技术文章,但是基于这一点可以排除很多地雷。
Reddit 用户 Dexaran 是 ERC233 标准的创建者,他是第一个公开提醒社区注意该漏洞的人。 有人问他为什么 ERC20 仍然被广泛使用,他的回答是:
由于令牌开发人员对其行为不负责任的犯罪行为。 因为代币发展的主要原因是资金抢夺,而不是产品创造。
因为那些开发代币的人,他们的目标是抢夺资本,而不是创造。 这种不负责任无异于犯罪。
最后就是今天的分享啦~mua~
让我们继续一起学习知识,给自己打预防针!
为防止失联,可添加个人微信ladybitcoin
女王大人的新二维码怎么敢不扫!
▼▼▼