Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/Fantom-foundation/fantom-rust-vm
Register-based Ethereum VM implementation in Rust
https://github.com/Fantom-foundation/fantom-rust-vm
Last synced: 5 days ago
JSON representation
Register-based Ethereum VM implementation in Rust
- Host: GitHub
- URL: https://github.com/Fantom-foundation/fantom-rust-vm
- Owner: Fantom-foundation
- License: mit
- Created: 2018-10-31T04:25:55.000Z (about 6 years ago)
- Default Branch: master
- Last Pushed: 2019-01-03T01:57:26.000Z (almost 6 years ago)
- Last Synced: 2024-08-03T09:12:27.237Z (4 months ago)
- Language: Rust
- Homepage:
- Size: 282 KB
- Stars: 8
- Watchers: 12
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Fantom VM
This is a register-based virtual machine intended to execute transactions for the Fantom cryptocurrency. In its current state, it can function as an Ethereum VM and full node.
## Consensus Algorithms
By default, the FVM utilizes the ethash consensus algorithm used by Ethereum. The goal is for it to use the Lachesis protocol.
## Structure
This project is structured as a Cargo workspace, with three sub-projects: `client`, `fvm`, and `world`.
### Client
This provides the CLI binary, and is responsible for setting up the various servers over which the FVM will accept requests. It also contains utilities for managing keys and accounts.
#### CLI Options
These are defined in `client/src/cli.yml`, and uses the Rust `clap` library.
### FVM
This contains the Fantom Virtual Machine. It implements the Ethereum Virtual Machine, but emulates registers rather than a stack. Any valid Solidity bytecode should run on the FVM.