1、test脚本中如何获取合约中的状态变量//合约中public类型的状态变量支持getter()特性,可以直接使用部署合约的实例调用如:vault.token()contractVault{//这里的token属性是public,自带getter()方法IERC20p
在外部审计前 使用不变量模糊测试之前找到高风险漏洞
有时Solidity语言本身的数据结构无法很好地满足开发需求,此时我们需要实现相关库。本文介绍一个双向链表的库合约,在其它合约中引入即可使用。
透明代理vsUUPS:智能合约升级模式全景解析与实用指南随着区块链技术的不断发展,智能合约的升级能力成为项目长期发展的关键需求。其中,透明代理(TransparentProxy)和UUPS(UniversalUpgradeableProxyStandard)是两种主流的升级模式。本文
本文详细介绍了如何通过内联汇编更高效地实现 Solidity 中的回滚操作,深入探讨了 mstore 和 mstore8 操作码的使用方式,并通过示例代码展示了如何在汇编中实现无消息回滚、自定义错误回滚以及带有原因字符串的回滚。
mstore
mstore8
这篇文章详细介绍了Yul语言,作为以太坊上智能合约的低级语言,具有更高的代码执行效率。文章包括Yul的语法、数据类型、控制流、函数以及Yul和Solidity的对比,并提供了一些示例代码和编译工具的推荐,以帮助开发者理解和应用Yul语言。文章结构清晰,内容丰富,有助于熟悉低级编程概念的开发者进行智能合约优化。
以太坊是一个公共网络,在设计合约的接口时,除了考虑己方的交互外,还应该考虑公众是否方便获取到合约中的数据。
在Solidity中,接口(interface)和抽象合约(abstractcontract)都是用来定义合约的抽象行为,它们有相似之处,但也有一些关键的区别。下面是它们的用法、区别和联系。接口(Interface)接口是合约的一个非常简单的抽象,定义了合约应当实现的外部函数签名,但不包括
Natspec,NaturalLanguageSpecification,是使用自然语言注释向Solidity代码添加文档的标准格式。Natspec注释使Solidity代码更具有可读性和理解性。
本文介绍了验证智能合约源代码的五种方法,并强调了智能合约的重要性、工具及其应用。重点包括使用Etherscan、Hardhat、Remix.IDE等进行合约验证的具体步骤。文章结构清晰,包含丰富的内容和代码示例,并提供了具体的实现步骤与工具建议。
基本定义本节是我们合约的开头,我们首先来介绍下合约的文件结构。一个单个合约文件的结构需要清晰、有条理,便于阅读、理解和维护。文件头部声明SPDX-License标识符用于声明合约的许可证类型(MIT、Apache-2.0等)。
本文详细探讨了区块链虚拟机的存储层及其面临的挑战,特别是以太坊的Merkle Patricia Trie结构带来的高昂存储成本和状态膨胀问题。通过分析各种区块链(如Solana、Sui、Sei)在存储和检索数据方面的优化策略,本文旨在提出有效的解决方案来实现更高的性能和可扩展性。作者呼吁社区参与协作,共同推动更美好的区块链基础设施的发展。
本文是一个入门级指南,介绍如何使用Solidity创建并部署一个简单的'Hello World'智能合约。文章结构清晰,以多个部分详细解释了所需的基础知识、创建过程和与合约的互动,适合想要学习Web3开发的读者。
大约一年前,我开始接触区块链技术,并决定深入学习Solidity。Solidity是以太坊智能合约的主要编程语言,它借鉴了C++、Python和JavaScript的语法特点。最初,我对Solidity的基本语法和数据类型进行了系统的学习,逐渐熟悉了如何编写简单的智能合约。我在过去一
作为一名Web3开发者,我在过去的几年中见证了智能合约技术的飞速发展。然而,随着智能合约在去中心化金融(DeFi)、供应链管理、游戏等多个领域的广泛应用,安全问题也日益凸显。无数的黑客攻击和漏洞利用事件提醒我们,编写安全的智能合约是保护数字资产的关键。我将结合自己的实际工作经验,分享一些编写安全的
Solidity简介什么是SoliditySolidity是一种面向对象的高级编程语言,专门用于编写智能合约。智能合约是在区块链上自动执行的程序,可以用于实现各种去中心化应用(DApps)。Solidity的历史Solidity由以太坊基金会的成员在2014年创建,目的是为以太坊区块链提
编写solidity合约如何选择变量的数据类型
如何实现 EVM 链无许可、无感知的合约部署
Foundry forge 输出覆盖率测试报告
Foundry 单元测试
扫一扫 - 使用登链小程序
378 篇文章,1946 学分
187 篇文章,411 学分
64 篇文章,256 学分
209 篇文章,244 学分
114 篇文章,222 学分