Base 资助了 Solady 库的第三方安全审计,主动识别并解决了多个安全问题。Solady v0.1.1 已发布,建议开发者升级。审计发现并修复了包括 ERC-6492 实现中的严重漏洞在内的多个问题,这些漏洞可能导致未经授权的资金转移。Base 强调安全是其首要任务,并致力于通过投资安全研究和开源基础设施审计来提升整个以太坊生态系统的安全性。
本文深入解析了DeFi中重要的借贷协议Compound V3的智能合约架构及其使用方法。文章分为几个部分,详细介绍了如何借贷USDC、提供抵押品以及清算不足抵押的贷款,并通过代码分析了Compound V3的核心合约Comet及其相关合约的结构。另外,还讨论了参数更新的治理机制,强调了Immutable变量的设计优势。
本文提供了一个73条清单,帮助开发者有效编写NFT智能合约,包含多个步骤和最佳实践,从准备阶段到部署后任务,涵盖安全性、测试、Gas节省等方面。通过结构化的方式和代码示例,旨在帮助阅读者了解编写安全、高效的NFT合约的重要性,同时指出了在学习中应关注的关键概念。
本文探讨了Ethereum的ERC-7512提案,该提案旨在通过在区块链上提供审计报告的标准化表示,增强智能合约的安全性和透明度。文章回顾了历史上对以太坊构成威胁的事件,尤其是DAO黑客事件,并讲述了围绕智能合约审计的重要性及目前存在的问题。通过介绍ERC-7512,文章强调了如何通过链上验证来解决审计信息的数据中心化和人工验证的繁琐这一关键问题,最终推动区块链上的信任构建。
本文介绍了Certora最近在形式验证WebAssembly (Wasm) 字节码方面的努力,特别是在Stellar区块链上的Soroban智能合约的实现中。Wasm因其安全性和高效性被广泛应用于DeFi领域,Certora开发了Sunbeam工具,能够验证用Rust编写的智能合约的高层功能正确性。
本文深入探讨了重入攻击在智能合约中的漏洞,介绍了重入攻击的原理、类型以及如何实施和防御它。通过构建受害者合约与攻击者合约的实例,读者能够直观理解攻击过程,同时了解历史上的攻击实例和防护措施。文章结构清晰,逻辑严谨,是学习重入攻击的重要参考资料。
本文深入探讨了以太坊虚拟机(EVM)的架构和操作,解释了EVM的基本组件(如堆栈、内存、存储等),字节码如何被编译为操作码,以及交易的执行过程。通过详细的步骤和示例,读者能够更好地理解EVM的工作原理和智能合约的执行机制。
本文详细介绍了Tornado Cash的工作原理,包括零知识证明、Merkle Tree的使用以及如何实现匿名加密货币转账。文章还讨论了Tornado Cash的智能合约架构、合法性问题以及潜在的安全风险。
这篇文章深入探讨了Ethereum智能合约的安全性,具体阐述了Solidity语言中的常见漏洞,例如重入攻击、算术溢出和访问控制问题。文章提供了理论背景和具体的代码示例,并给出了缓解这些安全问题的方法,通过这样的方式帮助开发者理解并实现安全的智能合约编写。
这篇文章深入探讨了以太坊的Safe智能账户(Safe Smart Accounts)的基础知识,涵盖了定义、架构、关键功能及其与多重签名和元交易等概念的关系。文章提供了详细的术语说明,并分层次地展示如何安全地操作和管理高价值的安全智能账户,同时为后续的安全最佳实践奠定了基础。
本文介绍了多重签名账户,这是一种需要多个授权签名者批准操作才能执行的智能合约账户。文章详细讲解了 ERC-7913 标准及其在 OpenZeppelin 中的实现,包括 SignerERC7913、MultiSignerERC7913 和 MultiSignerERC7913Weighted 合约,以及如何具有不同类型签名者和权重的多重签名账户。
EIP-1271(又名ERC-1271)是以太坊的一项改进,使智能合约能够验证签名,允许它们像传统的EOA钱包一样签署交易。EIP-1271 为智能合约解锁了大量功能,包括基于意图的交易、高级订单类型以及需要钱包签名的各种区块链交互,还介绍了EIP-1271 的原理和使用场景。
本文深入探讨了智能合约中重入攻击的原理、危害以及防御方法。文章通过具体的代码示例,详细解释了经典重入攻击和只读重入攻击的利用方式和防范措施,强调了Check-Effects-Interactions模式和重入锁Guard在保障智能合约安全中的重要性。尤其针对view函数在特定情况下可能返回过期数据的问题提出了应对方案。
本文介绍了在智能合约开发中使用加密密钥的重要性,并提供了在 Hardhat 和 Foundry 框架中实现加密密钥的详细步骤。文章强调了明文存储密钥的风险,并提供了使用 AES 等加密技术保护密钥的方法,同时推荐了密钥管理和安全开发的最佳实践。
本文总结了Solidity智能合约开发中常见的五个陷阱,包括存储、内存和calldata的区别,重入攻击,默认public的可见性,使用tx.origin进行授权的风险,以及无限循环/高Gas成本问题。针对每个问题,文章都给出了具体的代码示例和修复方案,旨在帮助开发者构建更安全、更智能的智能合约。