本文档介绍了 OpenZeppelin Relayer 的网络配置方法,支持通过 JSON 文件配置多种区块链网络,包括 EVM 兼容网络、Solana 网络和 Stellar 网络。文档详细说明了各种网络类型的配置字段、配置方法(包括分离 JSON 文件和直接配置),以及网络继承的使用。此外,还提供了配置示例、最佳实践和故障排除建议。
本文介绍了ERC-4337中Paymaster的概念,Paymaster允许第三方为用户的交易支付gas费用。文章详细讲解了两种Paymaster的实现方式:基于签名的赞助,以及基于ERC20代币的赞助,包括如何使用Chainlink预言机动态获取代币价格,以及如何使用担保人模式为用户提供初始资金。此外,还讨论了在生产环境中实施Paymaster时需要考虑的实际问题。
本文档介绍了 OpenZeppelin Relayer 的存储配置,包括内存存储和 Redis 存储两种类型。内存存储适用于开发和测试环境,而 Redis 存储适用于生产环境,并支持数据持久化和多实例部署。文档还详细说明了各种配置选项、Redis 安全性考虑以及事务存储管理。
本文介绍了账户抽象的概念,特别是通过 ERC-4337 标准实现账户抽象的方法。
本文探讨了区块链基础设施安全的重要性,解释了它与智能合约安全的不同之处,并提供了一些针对区块链基础设施进行安全审计的实用方法。文章强调了基础设施审计需要关注的组件及其潜在风险,例如验证节点、数据可用性层、执行客户端和P2P网络,以及如何采用系统性的方法来识别和缓解这些风险,确保区块链网络的整体安全。
本文介绍了如何在以太坊网络上部署和交互智能合约。首先,文章讲解了如何设置本地区块链环境,然后演示了如何使用 Hardhat 部署智能合约。接着,文章展示了如何通过 Hardhat console 和 JavaScript 代码与已部署的合约进行交互,包括发送交易和查询状态。最后,文章说明了下一步学习的方向,包括自动化测试、连接公共测试网络以及为主网做准备。
本文档介绍了OpenZeppelin Contracts库在不同版本之间的向后兼容性保证,包括API和存储布局的兼容性。文章解释了在patch和minor版本更新中通常会保持向后兼容,但某些情况下可能会有例外,特别是涉及到安全问题或draft状态的ERC标准时。同时提醒了override函数、struct结构体以及错误处理等方面需要注意的问题,并强调了major版本更新通常不保证兼容性。
该文档介绍了如何使用Contracts Wizard Deploy Plugin将智能合约直接部署到OpenZeppelin Defender账户。内容涵盖API密钥的生成、在Contracts Wizard中的配置、网络选择、审批流程设置以及合约的部署过程,包括确定性部署的配置。还介绍了完成部署后的后续步骤,并提供了反馈渠道。
本文介绍了智能合约账户的概念,以及如何使用 OpenZeppelin 提供的工具和合约来构建和配置智能账户。内容涵盖了账户的设置、签名验证、批量执行、用户操作的打包和发送等多个方面,并提及了 ERC-7739 签名、EIP-7702 授权和 ERC-7579 模块化等高级特性。
本文档介绍了如何在Solidity中使用OpenZeppelin Contracts进行合约扩展。主要讨论了通过继承进行功能扩展和通过重写(override)改变父合约行为的方法,包括如何调用super来扩展父合约的行为。同时强调了自定义重写可能带来的安全风险,并建议开发者在更新OpenZeppelin Contracts版本时重新验证其假设。
super