本文介绍了如何使用 OpenZeppelin 的 Network.js 库来构建一个简单的 React DApp,该 DApp 可以显示当前连接的 Ethereum 网络信息(网络 ID、网络名称、提供者名称)以及用户账户的余额。文章还介绍了如何向用户请求账户访问权限以及如何与 Gas Station Network (GSN) 集成。
OpenZeppelin Relayer 是一个为EVM和非EVM网络提供交易中继基础设施的服务。它支持多链交互、交易签名、费用估算、Gasless交易等功能。可以通过SDK集成,并支持Docker部署和插件扩展,允许开发者构建自定义逻辑。支持EVM、Solana, Stellar等多种区块链网络。
本文介绍了ERC-4626标准,它是ERC-20的扩展,为代币金库定义了一个标准接口。文章重点讨论了ERC-4626实施中的安全问题,特别是通货膨胀攻击,并提出了一种基于虚拟偏移的防御方法。此外,还讨论了如何在ERC-4626金库中添加费用的自定义行为,并提供了一个Solidity代码示例。
本文档介绍了 OpenZeppelin Defender 的日志功能,包括日志记录的各种事件(如用户操作、自动化活动),日志条目的结构(模块、时间、严重性等),以及如何将日志转发到 Datadog 和 Splunk 等外部服务进行聚合和分析。还提供了设置日志转发到 Splunk 和 Datadog 的具体步骤和示例。
本文提供了两个 subgraph 的示例,展示了如何配置 subgraph manifest 文件来索引以太坊 Goerli 网络上的智能合约事件。第一个示例针对简单的 ERC20 代币,第二个示例扩展到包括 Ownable、Pausable 和 TimelockController 合约,演示了如何处理多个数据源。
本文介绍了 ERC1155 token 标准,它借鉴了 ERC20、ERC721 和 ERC777 的优点,实现了fungibility-agnostic 和 gas-efficient 的代币合约。ERC1155 允许在一个智能合约中表示多种类型的代币,通过批量操作和单一合约状态管理,可以节省大量 gas 费用。
本文介绍了如何在OpenZeppelin Defender中集成Fireblocks,以便直接向Fireblocks提交交易。主要步骤包括:在Defender中生成CSR文件,在Fireblocks中创建API用户并导入CSR,将Fireblocks API密钥连接到Defender,以及创建审批流程。最后,说明了交易的批准或拒绝只能通过Fireblocks进行。
OpenZeppelin发布了5.2版合约,增强了跨链互操作性和账户抽象框架,推出了ERC-4337和ERC-7579等新功能。社区合约库加强了这些标准的实验性实现,支持跨链消息传递,并提供了易于使用的工具和文档,旨在促进智能合约开发者的快速迭代和协作。
本文档介绍了 OpenZeppelin Contracts 库中关于代理模式的各种实现,包括 Proxy、ERC1967Proxy、TransparentUpgradeableProxy、UUPSUpgradeable、BeaconProxy 和 Clones 等合约,以及它们的使用场景、升级机制和安全性考虑。
Proxy
ERC1967Proxy
TransparentUpgradeableProxy
UUPSUpgradeable
BeaconProxy
Clones
本文介绍了如何在Remix IDE中使用OpenZeppelin Defender插件来部署智能合约。通过配置部署环境和审批流程,开发者可以直接从Remix IDE将合约部署到不同的网络,包括使用API密钥进行身份验证、选择或创建审批流程、以及进行确定性部署。部署完成后,可能需要在Defender Dashboard上完成最后的部署步骤。