本文档介绍了OpenZeppelin Contracts库的使用,它是一个用于安全智能合约开发的库,提供了如ERC20和ERC721等标准的实现,以及灵活的基于角色的权限控制方案和可重用的Solidity组件。文档涵盖了安装、使用方法、安全注意事项以及学习资源。
本文介绍了如何在Hardhat环境中为Uniswap V3添加新流动性池。通过代码示例,作者详细解释了使用恶意代币创建和初始化流动池的过程,并讨论了相关的技术参数和安全考虑事项。文章包括了必要的代码片段以及进一步的学习资源,对审计师和开发者在Uniswap V3生态系统中的操作提供了帮助。
本文介绍了如何使用 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令牌余额的过程。
本文是Huff技术深入探讨系列的第二部分,对比了Huff、Solidity和Yul的特性及gas消耗,并完成了ERC20合约的实现,包括approve、allowance和transferFrom宏。此外,文章还介绍了使用Foundry进行测试和部署的工作流程,并通过架构图展示了合约的结构组成。
本文介绍了Warp,一个能够将Ethereum的Solidity合约转译为StarkNet的Cairo合约的工具。文章详细解释了Warp与StarkNet的关系及其在以太坊扩展中扮演的重要角色,并提供了ERC20合约在StarkNet上部署的例子和操作步骤,同时列出了未来的开发路线图。
文章讨论了在以太坊以L2为主的生态系统中,提高L1 Gas限制的重要性。作者从多个角度分析了提高L1 Gas限制的价值,包括抗审查性、跨L2资产转移、L2大规模退出、L1上的ERC20发行、Keystore钱包操作和L2证明提交等。
如何集成 Permit2