Skip to content
This repository has been archived by the owner on Apr 13, 2022. It is now read-only.
/ rhododendron Public archive

Asynchronously safe BFT consensus, implementation in Rust

License

Notifications You must be signed in to change notification settings

paritytech/rhododendron

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

47 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Rhododendron

Futures-based BFT in Rust. Mostly works, but not ready for production.

Most of the work is done with the agree function:

pub fn agree<C: Context, I, O>(context: C, nodes: usize, max_faulty: usize, input: I, output: O)
	-> Agreement<C, I, O>
{
    // ...
}

There are three parts to invoking agree:

  • A Context, encapsulating value type to be agreed upon, as well as generation, evaluation, and signatures on values.
  • An input stream of messages from other nodes.
  • An output sink of messages which will reach all other honest nodes.

This yields an Agreement which can be run on an event loop to completion.

About

Asynchronously safe BFT consensus, implementation in Rust

Resources

License

Security policy

Stars

Watchers

Forks

Packages

 
 
 

Languages