poanetwork / hbbft

An implementation of the paper "Honey Badger of BFT Protocols" in Rust. This is a modular library of consensus.
Other
356 stars 96 forks source link

question regarding operation mutiple nodes #437

Open jejdouay opened 2 years ago

jejdouay commented 2 years ago

First of all, love that crate. I am learning Rust and developing a ( simple ) blockchain and want to use this consensus system !

I have however a few understanding questions: 1 - when the network start, one node shall be build using the DynamicHoneybadgerBuilder::build first node. With that you can make a queueing honey badger. Other nodes do not know if someone else is there. They connect using P2P and generate a DynamicHoneyBadger object or wait to receive messages ? 2 - When a transaction / contribution is generated on the first node, a batch is created. Is it necessary to send to all the other node the batch or just the message in the step ? If only the message, how is validating the node the contribution ? Do the nodes have to have the same contributions ? 3 - when all the nodes agree on the contributions, what is the signal that it is completed ? No more message in steps ? Ready message ? I could not find any info or clues in the doc, maybe I did look at the right place ?

Thanks again for the great work !