文章
课程
首页
集训营
更多
视频
百科图谱
问答
提问
专栏
活动
文档
工作
集市
Toggle navigation
首页
文章
视频
课程
集训营
工作
工作
问答
活动
文档
集市
搜索
登录/注册
专栏
精选
推荐
最新
周榜
关注
RSS
全部
通识
以太坊
比特币
Solana
公链
Solidity
Web3应用
编程语言
安全
密码学
AI
存储
其他
Solidity多重角色:让你的合约权限像俄罗斯套娃一样层层嵌套
今天咱们来扒一扒Solidity里那个让人又爱又恨的家伙——多重角色管理!在区块链上写合约,权限这事儿可不是小打小闹,搞不好一个函数谁都能调,资金就哗哗流走,项目直接黄摊子!多重角色就是给合约装上层层关卡,像俄罗斯套娃一样,外层管理员管内层,内层又分铸币、暂停、销毁这些小角色,权限细到毛孔里!
Solidity
天涯学馆
发布于 2025-12-20
阅读 ( 1124 )
( 13 )
Solidity权限管理:让你的合约像铁门一样锁得死死的
Solidity合约的权限管理!在区块链世界里,智能合约就是你的金库,里面装着资金、数据,啥啥都值钱!要是权限没管好,等于把金库大门敞开,喊着“来抢吧”!权限管理就是给合约装上金刚锁,决定谁能开锁、谁能动钱、谁能改规则。权限管理的硬核逻辑先把基本功打扎实,权限管理是啥?简单说,就是控制谁能调用合
Solidity
天涯学馆
发布于 2025-12-17
阅读 ( 1145 )
( 13 )
汇编技巧
in
Gas 优化手册
in
Gas 优化手册
本文总结了以太坊智能合约中使用汇编进行优化的几个关键技巧,包括使用汇编回滚并附带错误消息、通过接口调用函数时重用内存数据、优化常见数学运算、使用 SUB/XOR 替代 ISZERO(EQ()) 检查不等式、利用汇编进行地址零检查、高效利用 selfbalance()、处理小数据(哈希和事件)以及在多次外部调用和合约创建时重用内存空间等。通过这些技巧,开发者可以显著降低 Gas 消耗,提升智能...
以太坊
智能合约
汇编
gas优化
内存管理
Solidity
DeCert.me
发布于 2025-12-17
阅读 ( 2837 )
( 103 )
Solidity 编译器相关
in
Gas 优化手册
in
Gas 优化手册
本文总结了Solidity编译器Gas优化的20个技巧,包括使用严格不等式、拆分require和revert语句、使用命名返回、反转if-else语句、使用++i递增、无溢出数学运算、优化for循环、使用do-while循环、避免不必要的变量转换、短路布尔运算、避免公开变量、优化器参数选择、优化函数名称、位移代替乘除法、缓存calldata、无分支算法、内联内部函数、哈希比较数组和字符串、使...
Solidity
gas优化
编译器
EVM
智能合约
以太坊
DeCert.me
发布于 2025-12-17
阅读 ( 2450 )
( 102 )
Calldata 优化
in
Gas 优化手册
in
Gas 优化手册
本文介绍了以太坊中calldata的优化策略,包括使用虚荣地址、避免在calldata中使用有符号整数,以及calldata比内存更便宜的特性。同时,讨论了2024年Cancun升级后,EIP-4844 使用 Blob 交易后,L2 网络calldata 优化重要性降低的情况。
Calldata
虚荣地址
gas优化
EIP-4844
blob交易
以太坊
Solidity
Gas
DeCert.me
发布于 2025-12-17
阅读 ( 2623 )
( 106 )
Gas 优化常用技巧
in
Gas 优化手册
in
Gas 优化手册
本文总结了以太坊智能合约开发中常用的Gas优化技巧,包括避免从零到一的存储写入、缓存存储变量、打包相关变量及结构体、保持字符串长度小于32字节、使用不可变或常量、利用瞬时存储、使用映射代替数组避免长度检查、使用unsafeAccess避免冗余检查、使用位图代替布尔值、使用SSTORE2或SSTORE3存储大量数据、使用存储指针而非内存、避免ERC20代币余额归零、倒序计数以及选择合适大小的u...
gas优化
以太坊
智能合约
存储变量
瞬时存储
位图
Solidity
DeCert.me
发布于 2025-12-17
阅读 ( 1733 )
( 116 )
设计模式
in
Gas 优化手册
in
Gas 优化手册
本文总结了10个以太坊智能合约Gas优化的设计模式和技巧,包括使用multidelegatecall批量处理交易,利用ECDSA签名替代默克尔树,使用ERC20Permit合并授权和转账,以及使用状态通道等。同时推荐了更高效的Solidity库Solady, 通过汇编进行极致优化,在ERC20 Transfer、ERC721 Mint等方面,能节省19% - 40% Gas。
gas优化
multidelegatecall
ECDSA签名
ERC20Permit
状态通道
Solady
Solidity
DeCert.me
发布于 2025-12-17
阅读 ( 3236 )
( 89 )
跨合约调用
in
Gas 优化手册
in
Gas 优化手册
本文总结了优化以太坊智能合约跨合约调用,减少 Gas 消耗的六个实用技巧。包括使用转账钩子处理代币,使用 fallback 或 receive 处理以太币转移, 使用 ERC2930 访问列表预热存储槽,缓存外部合约调用结果,在路由器合约中实现 multicall,以及通过单体架构避免跨合约调用。
跨合约调用
gas优化
EVM
ERC2930
multicall
转账钩子
Solidity
DeCert.me
发布于 2025-12-17
阅读 ( 2653 )
( 87 )
危险的优化技术
in
Gas 优化手册
in
Gas 优化手册
本文介绍了一些在以太坊智能合约开发中用于 Gas 优化的非常规设计模式。这些技巧包括利用 gasprice() 或 msg.value 传递信息、操纵环境变量、使用 gasleft() 进行分支决策、不检查 send() 的成功与否、将所有函数设为可支付函数、外部库跳转以及在合约末尾添加字节码等。虽然这些方法可能在 Gas 优化竞赛中有所帮助,但在生产环境中使用时应极其谨慎。
gas优化
以太坊
智能合约
gasPrice
msg.value
gasleft
Solidity
DeCert.me
发布于 2025-12-17
阅读 ( 2159 )
( 86 )
过时的技巧
in
Gas 优化手册
in
Gas 优化手册
本文总结了以太坊智能合约开发中,由于Solidity编译器升级、EVM升级(特别是Cancun升级)以及生态系统变化而不再有效或重要性大幅降低的优化技巧。例如,`external`不再比`public`节省gas,跨交易使用 `SELFDESTRUCT` 清理存储已失效,L2上极致优化calldata中的零字节重要性降低,过度依赖SSTORE2存储临时数据也被临时存储所取代。开发者应保持更新...
Solidity
EVM
Cancun升级
gas优化
selfdestruct
Calldata
Gas
DeCert.me
发布于 2025-12-17
阅读 ( 2279 )
( 93 )
Gas 优化概述
in
Gas 优化手册
in
Gas 优化手册
本文是关于以太坊智能合约 Gas 优化系列文章的开篇,首先介绍了 Gas 机制和 EIP-1559 费用计算方式,明确了 Gas 优化对降低用户交易成本、提升产品竞争力、扩展应用可能性等方面的重要意义。同时强调了 Gas 优化并非总是有效,需要在复杂性和可读性之间做好权衡,本教程旨在帮助开发者掌握通用的 Gas 优化技巧。
Gas 优化
Solidity
EVM
EIP-1559
智能合约
以太坊
DeCert.me
发布于 2025-12-17
阅读 ( 3741 )
( 191 )
部署时节省 gas
in
Gas 优化手册
in
Gas 优化手册
本文总结了9个在以太坊智能合约部署时节省 gas 的技巧。包括:利用账户 nonce 预测合约地址、将构造函数设置为 payable、优化 IPFS 哈希和元数据、一次性合约使用 selfdestruct、权衡内部函数和修饰器、使用克隆或元代理、管理员函数接受支付、使用自定义错误以及使用现有的 create2 工厂。
Gas 优化
智能合约
CREATE
CREATE2
钻石模式
代理模式
Solidity
Gas
DeCert.me
发布于 2025-12-17
阅读 ( 2467 )
( 108 )
Solidity 中继承 vs external 拆分:合约大小与可升级性的权衡
在Solidity开发中,合约体积限制是每个复杂项目绕不开的问题,本质原因是EVM对单个合约部署字节码限制24KB(24576bytes)。
麻辣兔变形计
发布于 2025-12-17
阅读 ( 849 )
( 7 )
Solidity定时任务:让你的合约按点做事稳如泰山
Solidity定时任务!在区块链上,智能合约要想自动干活,比如每天分红、定期锁仓释放,或者按时更新数据,咋整?以太坊可没内置定时器!定时任务得靠外部触发或预言机来搞定。这篇干货从基础的时间检查到ChainlinkKeeper、外部调用触发,再到防重入和权限控制,配合OpenZeppelin和Ha
Solidity
智能合约
天涯学馆
发布于 2025-12-16
阅读 ( 1299 )
( 15 )
输入安全验证
in
Solidity 开发教程
in
Solidity 开发教程
智能合约的输入验证是安全的关键,由于区块链的特殊性(例如不可逆性、公开性),不当的输入验证可能导致严重的安全问题。需要永远不信任用户输入,采用白名单而非黑名单,并尽早进行验证,同时,应针对地址、数值、字符串、数组、枚举、状态、时间等不同类型的输入进行相应的验证,并注意避免常见的验证陷阱,如tx.origin验证、不检查返回值等问题。
智能合约
输入验证
安全
以太坊
Solidity
区块链
DeCert.me
发布于 2025-12-16
阅读 ( 2537 )
( 121 )
智能合约DoS攻击与防御
in
Solidity 开发教程
in
Solidity 开发教程
本文深入探讨了以太坊智能合约中拒绝服务(DoS)攻击的原理、类型和应对策略。重点介绍了外部调用失败、Gas限制、存储操作等多种DoS攻击方式,并通过具体案例分析(如GovernMental和King of the Ether)揭示了潜在风险。同时,文章还提供了拉取模式、限制数组大小、分页处理等防御措施,以及Gas优化技巧,旨在帮助开发者构建更安全、更健壮的智能合约。
DoS攻击
智能合约安全
以太坊
gas优化
拉取模式
重入攻击
Solidity
DeCert.me
发布于 2025-12-16
阅读 ( 2928 )
( 114 )
以太坊智能合约中的 Merkle 树
in
Solidity 开发教程
in
Solidity 开发教程
Merkle 树(也称哈希树)是一种高效的数据验证结构,常用于区块链和智能合约中,在不存储完整数据集的情况下,验证某个数据是否属于该数据集。在智能合约中使用 Merkle 树可以提高 Gas 效率、保护隐私、并支持动态更新。常见的应用场景包括白名单验证、空投分发以及数据验证等。
Merkle 树
哈希树
智能合约
gas 效率
白名单
空投
Solidity
DeCert.me
发布于 2025-12-16
阅读 ( 3379 )
( 118 )
以太坊智能合约访问控制
in
Solidity 开发教程
in
Solidity 开发教程
本文介绍了智能合约中访问控制的重要性,以及常见的访问控制模式,包括Owner模式、白名单/黑名单模式和时间锁。同时,文章还强调了最小权限原则、使用modifier、事件记录等最佳实践,并指出了常见的安全问题和如何使用OpenZeppelin进行访问控制。
访问控制
智能合约
Owner模式
白名单
黑名单
时间锁
Solidity
DeCert.me
发布于 2025-12-16
阅读 ( 2377 )
( 119 )
合约安全概述
in
Solidity 开发教程
in
Solidity 开发教程
智能合约的安全性至关重要,因为合约管理大量资金且部署后难以修改。常见的攻击模式包括重入攻击、访问控制漏洞、时间戳依赖、抢跑攻击、拒绝服务和随机数可预测等。开发者应遵循最小权限原则、防御性编程、CEI模式等最佳实践,并进行充分测试和审计,以应对潜在风险并构建安全的智能合约。
智能合约
安全性
重入攻击
访问控制
拒绝服务
最佳实践
Solidity
DeCert.me
发布于 2025-12-16
阅读 ( 2339 )
( 156 )
Multicall:批量调用合约
in
Solidity 开发教程
in
Solidity 开发教程
Multicall是一种在单个交易中批量调用多个合约函数的技术,主要应用于批量读取数据和批量执行操作。批量读取通过`call`调用外部合约,提升前端查询效率;批量执行则根据情况使用`call`或`delegatecall`,实现原子性和节省Gas。理解`call`和`delegatecall`的区别是使用Multicall的关键,同时需要关注安全风险,例如重入攻击和 Gas 限制,并采取最佳实践。
multicall
批量调用
call
delegatecall
智能合约
以太坊
Solidity
DeCert.me
发布于 2025-12-16
阅读 ( 2242 )
( 126 )
‹
1
2
3
4
5
6
7
8
9
10
...
58
59
›
发表文章
我要提问
扫一扫 - 使用登链小程序
签 到
2026-05-20
星期三
热门文档
»
Solidity 中文文档 - 合约开发
Foundry 中文文档 - 开发框架
Hardhat 中文文档 - 开发框架
ethers.js 中文文档 - 与链交互
Viem 中文文档 - 与链交互
web3.js 中文文档 - 与链交互
Anchor 中文文档 - 开发框架
以太坊改进提案EIP翻译
以太坊域名服务(ENS)文档
Etherscan API 手册 - 查询链上数据
热门百科
»
智能合约
以太坊
区块链
Solidity
DeFi
Solana
零知识证明
NFT
Web3
比特币
EVM
Rust
密码学
闪电网络
加密货币
稳定币
Rollup
Move
DApp
预言机
Layer2
账户抽象
每周以太坊
Gas
OpenZeppelin
×
发送私信
请将文档链接发给晓娜,我们会尽快安排上架,感谢您的推荐!
发给:
内容: