Thanks to visit codestin.com
Credit goes to github.com

Skip to content

SovaNetwork/sova-reth

Repository files navigation

sova-reth

GitHub Release Docs docs MIT License Apache-2.0 License CI Status

The Bitcoin-powered EVM with native BTC interoperability

A sova-reth is a custom EVM node built upon the Reth SDK. It extends the EVM to enable a new set of Bitcoin precompiles. Along with the precompiles, a first of its kind Bitcoin finality inspector is employed in the transaction execution pipeline. The Inspector ensures any Sova state that is tied to a pending Bitcoin transaction is properly finalized depending on the outcome of the Bitcoin transaction. The Inspector plays a big part in mitigating double-spend attacks, chain reorganizations, and other cross-chain race conditions.

Building and Running

# view all make commands
make help

# build the sova-reth binary
make build

# run in devnet mode using Bitcoin regtest
make run-sova-regtest

Precompiles

Precompile Name Address Description
Broadcast Transaction 0x0000000000000000000000000000000000000999 Broadcasts Bitcoin transactions
Decode Transaction 0x0000000000000000000000000000000000000998 Decodes raw Bitcoin transactions
Convert Address 0x0000000000000000000000000000000000000997 EVM to Bitcoin address conversion

For more information on how to use the precompiles see related docs.

Validators

Validators are free to join the mainnet or testnet. Validators are required to provide their own Bitcoin node API connection, and also run their own Sentinel database service.

Sentinel

The sova-sentinel is a necessary component to every sove-reth node. It is used in custom EVM hooks to enforce Bitcoin finality. Transactions on Sova that are associated with a Bitcoin transaction have their state confirmed by the sova-sentinel. If a transaction that was flagged by the chain is not confirmed on Bitcoin, the Sova state associated with the flagged Bitcoin tx will be reverted.

License

Licensed under either of Apache License, Version 2.0 or MIT license at your option.

Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in these crates by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.

About

An EVM execution client designed to interact with Bitcoin

Topics

Resources

License

Apache-2.0, MIT licenses found

Licenses found

Apache-2.0
LICENSE-APACHE
MIT
LICENSE-MIT

Stars

Watchers

Forks

Packages

 
 
 

Contributors 4

  •  
  •  
  •  
  •