ERC20 Snapshot 解决了双重投票的问题。如果投票的权重是由某人持有的代币数量决定的,那么恶意行为者可以使用他们的代币投票,然后将代币转移到另一个地址,再用那个地址投票,如此反复。如果每个地址都是一个智能合约,...
...定币合约、保险合约、以及chailink喂价合约; # 稳定币和ERC20关联关系 **一句话总结**:ERC20 只是通用代币身份证,稳定币是“必须保持价格锚定”的 ERC20 代币 | 维度 | 稳定币(举例:USDC、DAI) | 普通 ERC20(举...
...## 0. 版本 [openzeppelin]:v4.8.3,[forge-std]:v1.5.6 #### 0.1 ERC165Storage.sol Github: https://github.com/OpenZeppelin/openzeppelin-contracts/blob/v4.8.3/contracts/utils/introspection/ERC165Storage.sol ERC165Storage合约是ERC165的一种拓展。IERC165的supportsInterface(byte...
... `Airdrop`空投合约逻辑非常简单:利用循环,一笔交易将`ERC20`代币发送给多个地址。我们今天就来实现一个简单的空投合约,其主要功能就是对拥有者发送的空投地址的每个地址空投100枚ERC20代币。 合约代码: ``` // SPDX-License-...
...函数解析。 - **常见用途**: - 组合功能:如代币(`ERC20`)、权限(`Ownable`)、暂停(`Pausable`)。 - 代码复用:减少重复代码。 - 模块化:逻辑分层,维护方便。 - **风险**: - **存储冲突**:父合约状态变量可能...
## 概述 BEP20 是 BNB 智能链上与以太坊网络上流行的 ERC20 tokens 规范相对应的标准。不同之处在于,BEP20 Token 不在以太坊网络上运行,而是在 BNB 智能链网络上运行。尽管存在这种差异,但由于 BSC(BNB 智能链)为其所有智能合约...
...坊 - 钱包 - [Solidity](https://learnblockchain.cn/docs/solidity/) - ERC20 & ERC721 - [Ethers.js](https://learnblockchain.cn/docs/ethers.js/) 工具: - MetaMask (钱包浏览器插件) - Node.js, yarn, TypeScript - OpenZeppelin (Solidity库) - Etherscan区块浏览器 让我们...
w3-1 ERC20及 ERC721 作业解答
...//twitter.com/devtooligan)提供的图片。 所以我们来实现一个ERC-20并写一些测试。创建 ERC20 合约,你也可以参考社区的这篇文章[如何创建并部署ERC20代币](https://learnblockchain.cn/article/3672) 。 ## 1. 安装Foundry 安装foundry的具体步骤将...
例如一个标准的ERC20代币合约里,合约内定义了一个变量_balance contract ERC20 is Context, IERC20, IERC20Metadata { mapping(address => uint256) private _balances; 直观理解上_balances只是为地址对数字的映射。IERC20里也没有更多东西了,为什么...
...易发送 ## 编译、部署智能合约 本文中我们要与一个ERC20智能合约交互,需要在机器里先安装 nodejs和npm。 ### 创建项目文件夹 首先创建一个文件夹ethers-template,然后在这个文件夹里再创建另一个 contracts文件夹: ``` ~$ mk...
... }, }, }, ``` # 实操案例 #### 合约开发:ERC20 代币合约 基于 OpenZeppelin 实现一个带 mint 和 burn 功能的 ERC20 代币: ``` // SPDX-License-Identifier: MIT // Compatible with OpenZeppelin Contracts ^5.5.0 pragma solidity ^0.8.27; import {ERC2...
...在[第一部分](https://learnblockchain.cn/article/19298)中,我们对 ERC-20 **代币** 进行了概念性的理解,探索了它们改变游戏规则的影响,并介绍了我们自己的项目:Turra’s Coffee Token (TCT)。 现在,是时候将愿景转化为有形的数字资产了。...
...izedStableCoin 的构造函数是这样的 ```solidity constructor() ERC20("DecentralizedStableCoin", "DSC") Ownable(msg.sender) {} ``` 这里的信息都是已经填充好的,需要的就是 eth 和 btc 的信息 ### 部署合约脚本 我们引用openzeppelin里面的mock合约 ...