在上两篇文章中,我们分析了SolidityEVM中的存储结构,在本篇文章中,我们将详细分析EVM的calldata是如何进行编码的。
合约调用合约有五种方法
Solidity 0.8.26 发布
深入探讨了智能合约测试的重要性,重点介绍了使用 Foundry 的实用策略和示例。
本文针对几个典型的 EVM Memory 例子进行分析,涉及到 solidity opcode,内联汇编,以及 solidity 内存安全
EVM存储结构在EVM中实际上有六个位置可以存储数据:stack,memory,calldata,storage,code(在一个特定的地址),log(触发事件)实际上深入研究的是前四个:stack,memory,calldata,storage
使用非代理模式实现合约升级
本文记录一下UUPS代理合约无法在XLayer链上开源验证的问题。
一、理解代理模式代理模式在智能合约开发中是一种使智能合约可升级的设计模式。本质上,它允许智能合约的逻辑部分在不更改合约地址或其存储状态的情况下进行修改和升级。这种模式解决了智能合约一旦部署就不能更改的限制,为修复漏洞、添加功能或优化合约逻辑提供了可能。1.1代理模式的工作原理代理模式涉及至少
什么是ABI?ABI=ApplicationBinaryInterface用于定义智能合约接口的规范。它定义了智能合约的函数、事件和数据结构的编码和解码规则,以便其他应用程序可以与智能合约进行交互。简言之,就是以太坊的调用合约时的接口说明。有点类似于Web2API。
solidity汇编语言汇总
2024 年如何学习 Solidity
EVM—calldata存储空间详解文章旨在记录过去所学知识,若文章内容存在不当,欢迎指出。若对文章内容感兴趣,也欢迎评论区留言讨论!文章部分图片取自本人其他博客。一、Calldata的结构EVM中的主要数据存储结构包括Storage、Memeory、Stack、Calldata。本章主要介绍
在我们进行合约开发时有一个痛点是,升级部署到链上后不能再更改,但如果了解Solidity比较深的小伙伴就知道,Solidity有个delegate方法,可以实现通过代理合约调用逻辑合约,我们的数据存储在代理合约中,执行的逻辑在逻辑合约中,我们想要升级合约时只需要部署新的逻辑合约即可。
调用,预编译和编译器到底是怎么工作的
分享一个质押提款的项目合约,该项目是一个质押代币获取奖券,并参与游戏的一个项目,这里我们只分析合约部分。开发工具:Foundry:一个智能合约开发工具链,学习文档vscode:编辑合约代码合约解析:以下几个合约配合形成整个项目的合约逻辑,下面逐个对合约进行解析主合约
探讨如何使用 Yul 编写 ERC20 代币合约,实现一个高度Gas 优化,同时遵循 ERC20 标准的合约
ERC20PresetFixedSupply库是一种带预铸造功能的ERC20实现,即在合约部署时直接将全部流通量都铸造给某一地址且部署后无法增发。该库同时继承了ERC20Burnable库,支持销毁和委托销毁功能。
Foundry 常用命令和作弊码速查表
探究如何将原始字节码转换为可读的 Solidity 代码及其对应的应用程序二进制接口(ABI)
扫一扫 - 使用登链小程序
41 篇文章,411 学分
74 篇文章,301 学分
30 篇文章,258 学分
158 篇文章,167 学分
11 篇文章,160 学分