织梦CMS - 轻松建站从此开始!

我的网站

当前位置: 主页 > 竞争币 > 以太坊

一文澄清以太坊开发者常见误解:Gas、交易与智能合约等 (3)

时间:2020-11-02 16:19来源:未知 作者:admin 点击:
关于 ERC20 代币的误解 我就不展开了,这个话题更适合写成一篇完整的文章。在与代币交互时,使用 OpenZeppelin 的 SafeERC20 (你可以在这篇文章中阅读更多相

关于 ERC20 代币的误解

我就不展开了,这个话题更适合写成一篇完整的文章。在与代币交互时,使用 OpenZeppelin 的 SafeERC20 (你可以在这篇文章中阅读更多相关内容)就好。请记住,在转账时,接收者所收到的代币并不一定等于发送者被扣除的代币。我们来看下一部分吧。

关于以太币的误解

以太币的总供应量只会增加

我们都知道,有很多以太币是无法使用的,有的是因为外部账户的私钥丢失,有的是因为意外发送到全零地址,还有的是因为被卡在合约中无法处理(对不起,我没忍住)。总而言之,这部分以太币依然存在,但是无法访问。

不过,有一种方法可以销毁以太币。如果你指令一个合约自毁 selfdestruct 并指定其自身作为资金的接收方,这个合约内的所有以太币都将被销毁。这就意味着,只要愿意销毁比区块奖励更多的以太币,就可以让以太币通缩。

我可以写一个能拒绝任何以太币转入的合约

你或许知道,如果你没有声明任何 payable 方法,Solidity 会拒绝所有发送到你的合约的以太币转账,防止资金被卡在合约内。但是,我们也可以在不触发任何代码的情况下,将资金发送到合约内:要么将该合约指定为自毁操作奖励的接收方,要么将其指定为区块奖励的接收方。正如 @gorgos 在评论中指出的那样,可以预先计算出合约部署地址,并在合约部署前将以太币发送到该地址。

也就是说,如果你追踪所有发送到你的合约的以太币转账,你的总余额可能大于你处理的所有转账的总和。

 

(责任编辑:admin1)
织梦二维码生成器
顶一下
(0)
0%
踩一下
(0)
0%
------分隔线----------------------------
发表评论
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
评价:
表情:
用户名: 验证码:点击我更换图片
栏目列表
推荐内容