Skip to content
forked from ObolNetwork/charon

Charon (pronounced 'kharon') is a Proof of Stake Ethereum Distributed Validator Client

License

Notifications You must be signed in to change notification settings

gusnoob1/charon

 
 

Repository files navigation

Charon
The Distributed Validator middleware client

This repo contains the source code for the distributed validator client Charon (pronounced 'kharon'); a HTTP middleware client for Ethereum Staking that enables you to safely run a single validator across a group of independent nodes.

Charon is accompanied by a webapp called the Distributed Validator Launchpad for distributed validator key creation.

Charon is used by Enterprises and DAOs to distribute the responsibility of running Ethereum Validators across a number of different instances and client implementations.

Example Obol Cluster

A Distributed Validator Cluster that uses the Charon client to hedge client and hardware failure risks

Quickstart

The easiest way to test out charon is with the charon-distributed-validator-cluster repo which contains a docker compose setup for running a full charon cluster on your local machine.

Documentation

The Obol Docs website is the best place to get started. The important sections are intro, key concepts and charon.

For detailed documentation on this repo, see the docs folder:

There is always the charon godocs for the source code documentation.

Supported Consensus Layer Clients

Charon integrates into the Ethereum consensus stack as a middleware between the validator client and the beacon node via the official Eth Beacon Node REST API. Charon supports any upstream beacon node that serves the Beacon API. Charon aims to support any downstream standalone validator client that consumes the Beacon API.

Client Beacon Node Validator Client Notes
Teku Fully supported
Lighthouse Fully supported
Lodestar *️⃣ Validator client requires Loadestar beacon node
Vouch *️⃣ Only validator client provided
Prysm 🛑 Validator client requires gRPC API
Nimbus *️⃣ No standalone validator client provided

Project Status

It is still early days for the Obol Network and things are under active development. We are moving fast so check back in regularly to track the progress.

Charon is a distributed validator, so its main responsibility is performing validation duties. The following table outlines which clients have produced which duties on a public testnet, and which are still under construction (🚧 )

Duty \ Client Teku Lighthouse Lodestar Nimbus Vouch Prysm
Attestation 🚧 🚧 🚧 🚧
Attestation Aggregation 🚧 🚧 🚧 🚧 🚧 🚧
Block Proposal 🚧 🚧 🚧 🚧
Blinded Block Proposal (mev-boost) 🚧 🚧 🚧 🚧
Sync Committee Attestation 🚧 🚧 🚧 🚧 🚧 🚧
Sync Committee Aggregation 🚧 🚧 🚧 🚧 🚧 🚧

About

Charon (pronounced 'kharon') is a Proof of Stake Ethereum Distributed Validator Client

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Go 99.7%
  • Other 0.3%