文章介绍了一个名为“Governance Proposal Simulation Framework”的工具,旨在帮助开发者在区块链上部署治理提案前进行模拟测试,以发现并修复潜在问题,避免安全漏洞和意外行为。
本文分享了两位开发者在Hackathon中的经验,特别是在2022年的Women Techies Hackathon中如何通过开发一个去中心化的众筹平台获取成功。这篇文章不仅提供了成功的关键要素和技术细节,还描述了开发过程中遇到的挑战以及解决方案。
本文作者分享了以太坊虚拟机(EVM)的局限性以及在进行智能合约安全审计时的一些技巧,内容涵盖合约bytecode大小限制、gas优化、setter检查、循环检查、时间戳/区块依赖以及汇编检查等方面,旨在帮助开发者编写更安全、更高效的智能合约,并避免潜在的安全漏洞。
2024年4月19日,Hedgey Finance因智能合约中的Flashloan漏洞遭受了4470万美元的损失。攻击者在Arbitrum和以太坊网络上分别盗取了4260万美元和210万美元。本文详细分析了攻击的发生过程、被利用的漏洞、团队采取的缓解措施以及如何预防类似事件。
本文探讨了Solidity编程语言的学习难度,尽管语言本身与JavaScript等类似,快速上手可能性高,但深入理解以太坊环境及一些独特特性如gas成本、I/O操作以及重入攻击等,则需要时间和经验。文章通过代码示例展示了常见的陷阱和挑战,强调了在掌握Solidity语言之后,还需大量实践才能精通以太坊生态系统。
本文介绍了 ERC-20 token 的概念和使用场景,例如作为交易媒介、投票权和 staking。通过 OpenZeppelin Contracts 可以轻松创建 ERC-20 token 合约,并以一个游戏中的 Gold (GLD) 代币为例,展示了如何构建、部署和转账 ERC-20 token,还讨论了 decimals 字段在处理小数方面的作用。
本文介绍了Solidity中智能合约如何调用其他合约的函数,解释了调用其他合约的原因,例如代码复用和规避合约大小限制,并通过示例代码展示了如何在调用合约时更新值以及发送以太币。
本文介绍了 ERC-721 标准,用于表示非同质化代币(NFT)的所有权,每个代币都是独一无二的。文章提供了一个 GameItem 合约的示例,该合约使用 ERC721URIStorage 扩展来跟踪游戏中的物品,并包含如何创建新物品以及查询物品的所有者和元数据方法。
本文深入探讨了以太坊EIP-7702提案,该提案引入了一种新的交易类型0x04,允许外部账户(EOA)像智能合约一样直接执行代码,从而实现交易批量处理、受限访问权限委托和余额恢复等新功能。文章还讨论了如何设置这些功能,解答了关于委托合约、预部署、存储使用等问题,并分享了一个收集了delegate合约实现的仓库。
本文介绍了Yul语言的基础知识,Yul是一种用于在智能合约中编写汇编语言的中间编程语言。文章通过示例讲解了Yul的变量赋值、操作、循环、条件语句、存储和内存管理,以及如何执行合约调用。
本文深入探讨了Solidity库的工作原理,详细介绍了如何使用delegatecall()调用库函数,以及如何创建和发布一个Solidity库。文章还讨论了库与智能合约的关键区别,并提供了多个代码示例来演示库的使用方法。
delegatecall()
Resupply黑客事件分析
本文介绍了如何使用Yul优化智能合约以节省Gas费用。通过对比纯Solidity、Solidity与内联汇编、以及纯Yul编写的智能合约,展示了Yul在Gas优化中的优势,并通过石头剪刀布游戏的实例详细讲解了各合约的实现和Gas消耗对比。
本文介绍了 Solidity 中的元组(tuple)数据类型,阐述了其基本特征及用法,提供了简单的函数示例,并指出元组可以解包以获取内部变量。此外,还提供了实践问题以帮助读者加深理解。
本文介绍了如何为NFT编写单元测试,包括验证铸造后NFT的拥有者、检查合约余额以及确保提款时的以太币余额变化等关键点,并引导读者访问相关资源进行进一步学习。