本文介绍了在以太坊虚拟机(EVM)中引入三条新的指令 SWAPN、DUPN 和 EXCHANGE 以提升栈操作的灵活性,这三条指令允许访问深达256个项的栈,简化了编译器的设计,并支持更复杂的函数调用。文章详细阐述了这些新指令的规范、执行规则、兼容性及安全性考虑。
SWAPN
DUPN
EXCHANGE
本文介绍了一种为以太坊虚拟机(EVM)设计的可扩展和版本化的容器格式(EOF),通过在部署时进行校验,提供了代码与数据的分离,有助于将来新功能的引入与旧功能的废弃。EOF格式的设计可以减少运行时的负担,提升合约的管理效率。并且,该格式包括了一些新特性,如静态跳转和多字节操作码的支持。
本文介绍了一种扩展验证EVM代码段的机制,旨在确保在有效合约的执行过程中不会发生栈的下溢或溢出。通过对操作数栈的验证,消除了运行时对栈下溢的检查,并减少了对于大多数指令的栈溢出检查。此外,还讨论了代码有效性、栈高度和终止指令的相关性。
本文介绍了在EOF格式的字节码中实现多个代码段的能力,主要是通过引入新的操作码CALLF和RETF来实现对函数的调用和返回。该EIP旨在消除动态跳转的需要,并通过编码输入和输出数量来提高代码分析的机会,同时限制每个函数的栈隔离。
CALLF
RETF
本文介绍了在合约创建时对EOF格式(EIP-3540)合约代码进行验证的新特性,以确保代码的正确性,拒绝包含不完整PUSH数据或未定义指令的合约。该项更改旨在将代码有效性纳入共识,同时提供向前兼容性,允许未来新指令的定义,并简化EVM的执行路径。
本文详细介绍了Merkle证明的格式,包括各种辅助函数和数据结构。文章中展示了如何生成Merkle树以及实现Merkle多重证明,并通过代码示例详细解释了各个函数的作用和实现原理,具有较高的技术深度和实用价值。
本文介绍了四条在EOF1引入的新指令:DATALOAD、DATALOADN、DATASIZE和DATACOPY,旨在对EOF容器的数据部分进行读取。新的指令设计遵循现有数据读取指令的模式,并在保持向后兼容的情况下,优化了数据的访问和复制方式。
DATALOAD
DATALOADN
DATASIZE
DATACOPY
这篇文章介绍了Ethereum中的一种新交易定价机制,即EIP-2718。该机制通过设置基本费用并根据网络拥堵情况动态调整,从而提高交易的效率和稳定性。文章详细说明了新交易类型的结构以及如何计算费用,解决了交易费用波动和排队等问题。