本文提供了十二个关于Solidity智能合约的gas优化技巧,旨在帮助开发者在Layer 2链如Base上降低交易费用。技巧包括最小化链上数据、使用映射代替数组、利用常量和不可变量等,旨在有效提高合约的执行效率和降低成本。
本指南详细阐述了如何使用Foundry框架进行Solidity智能合约的模糊测试(fuzz testing)。文章首先介绍了什么是不变性(invariant),然后分别讲解了无状态和有状态的模糊测试的实现,并通过代码示例展示了相关实现步骤。最后强调了模糊测试在保证智能合约安全性方面的重要性。
全面理解复杂类型的存储布局
Solidity 初学者常见的 20 个错误
探索 EVM 能做什么?
使用 Cancun 硬分叉加入的 TSTORE 降低 Gas
在这最后一节,我们将看一些 Yul 中相对较少使用的指令。
可升级合约中可以使用 immutable 变量么? 让我们深入探索一番
数据分析师如何分析合约代码
在本节中,我们将详细讲解官方文档中的 100% Yul 实现的 ERC20 合约。
在 Foundry 使用 OpenZeppelin 插件进行智能合约升级
什么是MPT树MPT全称是MerklePatriciaTrie或者MerklePatriciaTree,是MerkleTree和PatriciaTree的混合物,它在以太坊中常常被用作状态树和区块树,存储树。以下是三种树的介绍状态树StateTrie每个以
本文讨论了在云中进行模糊测试的不同选项,特别是在Solidity合约上的实施,介绍了多种云服务提供商和工具,包括DigitalOcean, GitHub CI, Consensys和Recon,帮助读者选择适合的云模糊测试环境。文中详细阐述了每个选项的优缺点、难度及背景要求,并附有必要的CLI命令和示例配置,以便更好地进行模糊测试。
如何阅读区块浏览器并理解以太坊(EVM)上的交易、trace 和日志
UUPS:通用可升级代理标准(ERC-1822)
解析 GMX 限价订单逻辑
100% Yul 合约。
让我们来看一下如何使用 Yul 编写一个合约,并使其能够接受外部调用。
本文将介绍两种常见转账的实现方式,以及它们在 Yul 中的对应写法和 gas 费用的比较。
为什么memory数组不能进行切片操作?为了回答这个问题,我们需要深入了解Solidity的内存模型和数据操作机制。
扫一扫 - 使用登链小程序
114 篇文章,739 学分
388 篇文章,466 学分
67 篇文章,418 学分
118 篇文章,340 学分
163 篇文章,328 学分