Seneca协议在2024年2月28日遭遇黑客攻击,损失约600万美元。攻击的原因是Chamber合约在执行外部调用时缺乏输入验证,攻击者借此机会调用任意合约,转移用户的钱包资产。该事件揭示了智能合约安全性的重要性,尤其是在审计和全面测试方面。
UniswapV3Pool合约则复杂很多了,其引用的库合约就达到了13个,通过using方式使用的也达到了9个
DeltaPrime协议于2024年11月11日遭受黑客攻击,损失约485万美元。攻击者利用智能合约中的两个关键漏洞进行未授权借款和奖励操纵,最终导致资产被盗。在此事件后,DeltaPrime暂停了所有流动池,以保护用户资产并确保协议的安全性。
本指南详细阐述了如何使用Foundry框架进行Solidity智能合约的模糊测试(fuzz testing)。文章首先介绍了什么是不变性(invariant),然后分别讲解了无状态和有状态的模糊测试的实现,并通过代码示例展示了相关实现步骤。最后强调了模糊测试在保证智能合约安全性方面的重要性。
本文详细探讨了在Aave协议更新过程中遇到的平衡不稳定问题,强调了在去中心化金融(DeFi)系统中维护不变性的重要性。通过数学模型和对事务的全面分析,定位了两个主要问题:闪电贷款计算错误和储备因子的调整失误,进而提出了改进措施。文章的结论强调了持续监控和全面问题解决的重要性。
本文详细介绍了Solana程序的部署与升级过程,包括程序账户的定义与属性、部署所需的每一步,以及如何进行程序升级和关闭操作。同时强调了升级权限的重要性与安全性问题。通过示例和代码块,提供了清晰的技术细节和步骤说明。
本指南介绍了11种高级的Solidity gas优化技巧,强调优化智能合约的gas成本能够显著提升协议的可扩展性和用户体验。通过减少链上数据、使用映射而非数组、利用常量和不可变变量等方法,开发者可以实现高达90%的gas节省。这些优化策略不仅能降低成本,还能提升合约的安全性。
本文详细介绍了以太坊网络上交易的基本概念,包括交易的组成部分、账户类型、交易的生命周期以及如何通过QuickNode设置以太坊端点来查看交易数据。文章内容结构清晰,涵盖了交易的基础知识、架构及不同状态,适合希望深入理解以太坊交易机制的读者。
这篇文章探讨了以太坊上去中心化应用(DApp)CryptoKitties的安全问题,强调DApp在某些方面并不像很多人认为的那样去中心化。尽管DApp运行在区块链上,仍然存在诸多集中化的风险与脆弱性,例如所有猫咪的所有权存储在单一智能合约中,以及合约可以由单个实体暂停或更改其功能,这可能会影响其独特性和价值。
本文深入探讨Solana的SPL Token Mint,详细介绍了其常用指令和数据结构,包括如何初始化mint、token账户,铸造、燃烧和转移代币等。通过逐步分析每个指令的实现和逻辑,读者能够全面理解SPL token的工作原理和应用场景。
本文介绍了 ERC-1271 标准,其核心是智能合约如何验证签名。文章详细阐述了 ERC-1271 的重要性、使用案例及其实施,将 EOA 和智能合约之间的签名逻辑进行了区分,清晰解答了许多常见的误解,并提供了一些代码示例进行支持。
了解一个既存在于传统网络安全又存在于智能合约安全中的问题——拒绝服务。
本篇文章深入介绍了Solana的SPL关联代币账户(ATA)程序,包括其技术细节、创建和管理用户代币账户的机制,以及在创建嵌套ATA时可能遇到的问题与解决方案。文章详细阐述了相关指令的使用和实现逻辑,适合对Solana生态系统和智能合约深入了解的开发者。
本文介绍了一种结构化的测试框架,旨在帮助Web3开发者编写有效的测试,从而捕捉严重的漏洞。文章强调了采用黑客思维、保持不变性思维和系统架构思维三个心态的重要性,以确保协议的安全性和可靠性。通过应用这些心态,开发者可以更准确地制定测试场景,以应对潜在的安全威胁。
本文详细介绍了如何使用 Sway 编程语言构建一个去中心化的英语拍卖合约,包含了拍卖的基本原理、安装工具的步骤、合约的结构与实现细节。通过代码示例,读者能够学习如何创建拍卖、出价、取消拍卖及提取资产,并且文中还强调了对数据结构、错误处理和事件的管理。最后,文章还提到了如何为拍卖应用程序实施测试,确保代码的正常运作。