本文介绍了如何使用 OpenZeppelin Contracts 创建具有自定义供应机制的 ERC-20 代币。文章展示了两种使用 OpenZeppelin Contracts 的方法,包括创建固定供应量的代币,以及奖励矿工的代币供应机制。此外,还介绍了如何使用 _update 函数在每次代币转账时自动奖励矿工。
_update
本文介绍了如何使用 OpenZeppelin 框架创建 ERC-20 代币。首先,设置开发环境,包括安装 Hardhat 和 OpenZeppelin 依赖。然后,编写 ERC-20 代币合约,并使用 Hardhat 部署到以太坊测试网络。最后,配置并部署到以太坊主网络。使用 OpenZeppelin 可以安全高效地创建 ERC-20 代币。
本文总结了智能合约开发中常见的安全漏洞和最佳实践,包括重入攻击、算术精度问题、访问控制不当、非标准协议、原生代币处理、底层调用、随机数问题、存储槽管理以及编译器版本固定。同时,强调使用静态分析工具和编写全面测试的重要性。
本文介绍了ERC-4626标准,它是ERC-20的扩展,为代币金库定义了一个标准接口。文章重点讨论了ERC-4626实施中的安全问题,特别是通货膨胀攻击,并提出了一种基于虚拟偏移的防御方法。此外,还讨论了如何在ERC-4626金库中添加费用的自定义行为,并提供了一个Solidity代码示例。
该⽂档介绍了openzeppelin 合约库中提供的各种标准化的智能合约接口,包括 ERC20、ERC721、ERC1155 等代币标准,以及 ERC165 接口检测、ERC1820 注册表、ERC2981 NFT Royalty标准等。⽂档详细列出了每个接⼝的函数、事件和错误类型,并提供了相关链接。
本文档介绍了OpenZeppelin Contracts库中与ERC20代币标准相关的接口、合约和实用程序。核心合约实现了EIP中指定的行为,并提供了一系列自定义扩展,例如无gas token批准、销毁token、限制token供应、暂停token转移等。此外,还包括了与ERC20合约交互的多种实用程序。
本文提供了两个 subgraph 的示例,展示了如何配置 subgraph manifest 文件来索引以太坊 Goerli 网络上的智能合约事件。第一个示例针对简单的 ERC20 代币,第二个示例扩展到包括 Ownable、Pausable 和 TimelockController 合约,演示了如何处理多个数据源。
本文档提供了一系列使用 GraphQL 查询 OpenZeppelin Subgraphs 的示例,涵盖了 ERC20、ERC721、ERC1155、Ownable、AccessControl 和 Timelock 等常见合约标准。每个示例都展示了如何通过特定合约地址和用户地址来查询相关数据,例如代币总量、持有人、交易历史、NFT 元数据、权限角色以及定时锁定的操作等。
本文将介绍如何设置Chainbase帐户、编写使用Chainbase API的脚本以及获取ERC20令牌余额的过程。
本文介绍了Warp,一个能够将Ethereum的Solidity合约转译为StarkNet的Cairo合约的工具。文章详细解释了Warp与StarkNet的关系及其在以太坊扩展中扮演的重要角色,并提供了ERC20合约在StarkNet上部署的例子和操作步骤,同时列出了未来的开发路线图。
文章讨论了在以太坊以L2为主的生态系统中,提高L1 Gas限制的重要性。作者从多个角度分析了提高L1 Gas限制的价值,包括抗审查性、跨L2资产转移、L2大规模退出、L1上的ERC20发行、Keystore钱包操作和L2证明提交等。
如何集成 Permit2
本文详细介绍了如何创建和部署ERC-20代币,包括ERC-20标准的历史、功能和使用案例,以及如何使用Remix.IDE和OpenZeppelin库来编写和部署智能合约。
本文介绍了如何手动解码以太坊calldata以检测UI欺骗攻击。通过解析交易数据,用户可以验证交易的意图,防止恶意操作。文章详细讲解了ERC-20授权交易的解码过程,并提供了一个Python脚本来自动化calldata分析,最终能够帮助开发者在签名恶意DApp交易之前检测和预防UI欺骗攻击。
本文介绍了如何使用Solidity和Hardhat构建一个时间锁定的收益金库。它包含两个智能合约: MockERC20代币(用于测试)和TimeLockedYieldVault。该金库合约接受存款,锁定7天,并在提款时支付5%的固定利息。文章涵盖了使用OpenZeppelin库、管理具有锁定期存款、编写测试以及使用Ignition在本地Hardhat网络上部署合约的步骤。