本文分析了Damn Vulnerable Defi V4挑战中的Unstoppable Vault漏洞。
本文作者Yash 通过一个 WorkLedger 的 DApp 案例,详细介绍了如何从零开始构建一个全栈Web3应用,部署智能合约并通过前端与之交互。
本文深入探讨了Solana链上开发的架构设计,强调了高效数据处理和避免并行执行中的瓶颈。文章讨论了通过优化数据大小、利用Box和Zero-Copy来管理大型账户,以及智能的账户设计(如数据排序、版本控制和索引),以实现更快的速度、更低的成本、更高的安全性和更好的功能性Solana程序。
本文探讨了区块链开发中gas优化的各种策略,通过代码示例,将优化方法归为架构级优化(合约设计模式)、代码级优化(开发者控制)和部署优化三个类别。内容涉及变量类型选择与布局、存储设计、函数设计、逻辑与循环优化、事件与错误处理、工具与测试、以及汇编层面的优化技巧,旨在降低gas消耗,提高合约执行效率和用户体验。
本文深入探讨了以太坊虚拟机(EVM)的架构、工作原理、指令集、执行过程、安全性和性能优化。EVM作为以太坊的核心组件,负责执行智能合约和处理交易。文章详细介绍了EVM的内存结构、存储布局、关键操作码,以及Solidity代码如何转换为EVM字节码并在以太坊上执行的过程,此外,还讨论了gas优化策略和智能合约安全性问题。
本文总结了智能合约开发中常见的安全漏洞和最佳实践,包括重入攻击、算术精度问题、访问控制不当、非标准协议、原生代币处理、底层调用、随机数问题、存储槽管理以及编译器版本固定。同时,强调使用静态分析工具和编写全面测试的重要性。
本文主要分析了 ERC4626 标准下的 On-chain Vault 可能遭受的通胀攻击,攻击者通过操纵 Vault 中的资产总量来稀释其他用户的份额,并探讨了多种防御方法,包括初始化 Vault 资产、内部控制资产总量、使用 decimals offset 以及 OpenZeppelin 提出的虚拟份额和资产方案。
本文介绍了以太坊对象格式(EOF)及其对EVM的影响。EOF通过EIPs引入了新的验证和操作码,旨在构建更友好的EVM。EOF的特性包括改进的代码结构、静态分析、更大的堆栈空间、代码验证、JUMPDEST分析、新的合约创建方式和改进的CALL指令,从而提高了开发者的体验和合约性能。
本文解释了EntryPoint合约如何通过validateUserOp和execute函数获得对ERC-4337钱包(SimpleAccount)的控制权。通过代码示例展示了EntryPoint合约如何在用户操作验证和交易执行过程中与SimpleAccount合约交互,从而控制钱包的行为。但强调这种控制并非绝对或永久,SimpleAccount仍然保持自身的访问控制。
validateUserOp
execute
本文详细介绍了如何使用Solidity从头开始创建一个链上NFT智能合约。该合约将NFT的元数据和艺术作品直接存储在区块链上,通过abi.encodePacked等函数将数字资产编码并转换为字节,实现完全的链上存储,包括合约代码、SVG图像生成以及mint和burn函数的功能。