## 升级插件 **将升级集成到你现有的工作流程中。** 用于 [Hardhat](https://hardhat.org/) 和 [Foundry](https://learnblockchain.cn/docs/foundry/i18n/zh/) 的插件,用于在 Ethereum 上部署和管理可升级合约。 - 部署可升级合约。 - 升级已部署的合约。 ...
## 介绍 [模糊测试](https://learnblockchain.cn/article/20409/)对于安全的[智能合约](https://learnblockchain.cn/tags/smart-contract/)测试至关重要,但也面临着挑战。测试执行通常很慢,而分析失败可能需要更多的时间和精力。 Shrinking(缩减)解...
### 0. 版本 [openzeppelin]:v4.8.3,[forge-std]:v1.5.6 #### 0.1 SignedMath.sol Github: https://github.com/OpenZeppelin/openzeppelin-contracts/blob/v4.8.3/contracts/utils/math/SignedMath.sol SignedMath库提供了solidity中尚未内置的标准有符号数的数学运算方法。 ...
### 0. 版本 [openzeppelin]:v4.8.3,[forge-std]:v1.5.6 #### 0.1 ERC20Pausable.sol Github: https://github.com/OpenZeppelin/openzeppelin-contracts/blob/v4.8.3/contracts/token/ERC20/extensions/ERC20Pausable.sol ERC20Pausable库是ERC20的拓展。考虑到如下业务需求:1. 在...
### 0. 版本 [openzeppelin]:v4.8.3,[forge-std]:v1.5.6 #### 0.1 Pausable.sol Github: https://github.com/OpenZeppelin/openzeppelin-contracts/blob/v4.8.3/contracts/security/Pausable.sol Pausable库实现了功能函数紧急关停机制,可以继承该合约并使管理员账户来...
### 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(byt...
今天这篇是[Ethernaut 题库闯关](https://learnblockchain.cn/article/4578)连载的第2篇,难度等级:容易。 ## 挑战#2:Fallout [本挑战](https://ethernaut.openzeppelin.com/level/0x5732B2F88cbd19B6f01E3a96e9f0D90B917281E5)的目标是要求获得`Fallout`合约的所有...
> 在深入研究字节码和原始 EVM 追踪之前,值得了解一下使这种探索成为可能的**开发者工具**。 > > 每一个现代以太坊框架:Foundry、Hardhat、Tenderly、Blockscout。都建立在相同的基础之上:**EVM 追踪**。这些追踪捕获了每个执行的 opc...
 高级 Foundry 作弊码系列:第 6 部分 - 使用 Forge 进行高级模糊测试 认为你的测试覆盖了极端情况?Forge 的模糊测试证明你是错的。一个参数 = 数百个随机输...
今天这篇是[Ethernaut 题库闯关](https://learnblockchain.cn/article/4578)连载的第8篇,难度等级:中等。 Ethernaut 题库闯关我已经整理为一个[专栏](https://learnblockchain.cn/column/19)了, 欢迎大家订阅专栏。 ## Ethernaut挑战 #8:金库 本...
### 0. 版本 [openzeppelin]:v4.8.3,[forge-std]:v1.5.6 #### 0.1 Timers.sol Github: https://github.com/OpenZeppelin/openzeppelin-contracts/blob/v4.8.3/contracts/utils/Timers.sol Timers库是一个专门用于控制和管理有时间有效期窗口的工具库。时间有效期可以...
昨天写一篇,蜜罐的分析,我发现感兴趣的朋友还挺多,我也就多了解了一下这方面的知识,我发现重入攻击大家都是翻译的一个老外的文章,连代码都是提供的图片,我觉得有必要自己写代码来一遍。 重入就是利用solidity虚...
2024年5月2日 ## 介绍 使用 Recon 的免费版本,你可以为任何公共 Foundry 存储库构建测试处理程序。Recon 的专业版在此基础上进行了扩展,允许你为任何私人存储库构建测试处理程序,并使用 webhooks 自动在这些存储库上运行作业...
### 0. 版本 [openzeppelin]:v4.8.3,[forge-std]:v1.5.6 #### 0.1 ERC1967Proxy.sol Github: https://github.com/OpenZeppelin/openzeppelin-contracts/blob/v4.8.3/contracts/proxy/ERC1967/ERC1967Proxy.sol ERC1967Proxy库实现了一个基于ERC1967标准的代理合约。通过改变存储...
## 目录架构 我们先看看安装了foundry后各个目录的作用,下面是一张图片,我们挨个讲解  ### lib/forge-std 我们安装的库都会在这里...