Closed sidsankhe closed 1 year ago
A committee for Certification will be chosen based on the VRF (with an input possibly being the layer number and a special character for Certification)
I propose that we use no "special character" - the VRF input for the certification is just the layer number (round ID).
implemented
Overview and Motivation
We propose adding a new role, that of a Hare Certifier, which publishes the results of the Hare algorithm when it terminates. This is advantageous for the following reasons:
hdist
layers in order to determine how to vote.High-level Design
A committee for Certification will be chosen based on the VRF (with an input possibly being the layer number and a special character for Certification). This committee will not be updated per round, but will last for the entire duration of the Hare algorithm on that given layer. The committee will listen to the Hare conversation, recording
notify
messages on all sets of values that they see. Once this committee accumulatesf+1
notify
messages on a set, it will deem that the Hare has terminated, will create and sign this output set, and gossip it to the entire network. This is an accurate instance for Hare terminating, because it means that the rest of the network should also seef+1
notify
messages on the same set, indicating that all honest parties would terminate.Proposed Implementation
Augment the Hare code to:
f+1
notify
messages, broadcast the signed output set (along with the SVP) as a special Hare messagehdist
layers have passedImplementation Plan
hare/algorithm_test.go
and add test files for all the new files added.notify
messageQuestions
Stakeholders and Reviewers
TBD