本文主要分析了 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函数的功能。
本文介绍了如何在本地环境中搭建PolkaVM的开发环境,并使用Rust语言编写智能合约。PolkaVM兼容EVM且架构更优,利用Substrate框架的强大功能,为Web3开发者提供了一个有吸引力的选择。文章提供了详细的步骤,包括运行substrate节点、eth-rpc节点,以及如何编译和部署Rust智能合约。
本文介绍了如何使用 OpenZeppelin 框架创建 ERC-20 代币。首先,设置开发环境,包括安装 Hardhat 和 OpenZeppelin 依赖。然后,编写 ERC-20 代币合约,并使用 Hardhat 部署到以太坊测试网络。最后,配置并部署到以太坊主网络。使用 OpenZeppelin 可以安全高效地创建 ERC-20 代币。
本文分析了去中心化应用(DApp)中链上链下状态同步的问题,重点介绍了由于交易生命周期中可能出现的掉单、回滚等情况导致的同步错误。论文提出了两种类型的链上链下同步Bug,并设计了ÐArcher测试框架来有效检测这些Bug。实验结果表明,许多DApp存在此类同步问题,而ÐArcher能有效帮助开发者发现并解决这些问题,从而避免因状态不一致给用户带来不便。
本文深入探讨了加密货币项目中代币归属的各种技术和方法,包括日历式和里程碑式归属,以及push和pull两种代币分发方式。文章还讨论了在智能合约中实施归属时可能出现的常见问题,并比较了三种不同的实施方法:在ERC20代币合约中、通过智能合约系统以及在独立的智能合约中。最后,强调了根据项目具体需求定制归属方案的重要性。
本文深入探讨了Rollups-as-a-Service(RaaS)的兴起及其如何推动应用专用模块化区块链的发展。