#ethereum #virtual-machine #evm #pure #portable #opcode #no-std

no-std evm-core

纯Rust编写的便携式以太坊虚拟机实现

43个版本 (破坏性更新)

0.41.0 2023年11月1日
0.39.0 2023年5月22日
0.37.0 2022年11月14日
0.35.0 2022年4月1日
0.14.0 2019年10月31日

#28 in #opcode

Download history 4109/week @ 2024-03-14 3961/week @ 2024-03-21 3584/week @ 2024-03-28 3650/week @ 2024-04-04 3378/week @ 2024-04-11 4100/week @ 2024-04-18 4838/week @ 2024-04-25 4429/week @ 2024-05-02 4589/week @ 2024-05-09 4571/week @ 2024-05-16 4620/week @ 2024-05-23 5772/week @ 2024-05-30 5161/week @ 2024-06-06 6592/week @ 2024-06-13 5660/week @ 2024-06-20 3678/week @ 2024-06-27

22,269 每月下载量
用于 41 个crate(5个直接使用)

Apache-2.0

69KB
2K SLoC

Rust EVM

Build Status License

Rust EVM,也称为SputnikVM,是一个灵活的以太坊虚拟机解释器,可以轻松定制。

状态

Rust EVM项目有着悠久的历史,可以追溯到2017年的初始实现(当时称为SputnikVM)。多年来,它经过多次重写以满足不同的需求,当我们成功测试了一个集成Geth以同步主网后。

当前的重写正在Frontier项目(波卡与以太坊兼容层)的生产中使用。然而,我们尚未对其进行全面测试以与以太坊主网兼容。如果您有这样的需求,欢迎提交修复的PR。

功能

  • 独立 - 可以作为独立进程启动或集成到其他应用程序中。
  • 灵活 - 可以定制和扩展以支持额外的操作码、额外的预编译、不同的气体计或其他更奇特的使用案例。
  • 便携 - 支持no_std,可用于不同的环境,如WebAssembly。
  • 快速 - 我们当然力求快速!
  • 用Rust编写,可以作为二进制文件、cargo crate或共享库使用。

依赖

Rust EVM至少需要rustc 1.75

文档

许可证

Apache 2.0

依赖

~0.3–1.2MB
~24K SLoC