-
Notifications
You must be signed in to change notification settings - Fork 5
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Committee-based consensus #42
Conversation
I think this requires reduce signatures with a fork to totally take out BLS out of consensus? |
@GalRogozinski For this change, we can still use BLS in consensus. |
@MatheusFranco99 when you are doing operator based consensus, which validator do you choose? What happens when validators are added or removed? You didn't spec this in the SIP... You can find logic to solve this, but I think it makes more sense to simply switch to operator's keys... Because we should do this anyhow |
@GalRogozinski type AttestationData struct {
Slot Slot
Index CommitteeIndex // Default value
BeaconBlockRoot Root
Source *Checkpoint
Target *Checkpoint
} or a custom structure like: struct {
BeaconBlockRoot Root
Source *Checkpoint
Target *Checkpoint
} Another validator Y with the same cluster would use the same consensus instance and get the useful decided information about the |
@GalRogozinski |
You have validators X and Y and Z on a single cluster. You need logic to
decide which validator to use.
Upon validator entry/exit the chosen validator should change.
So you need to spec a function that chooses a deterministic validator based
on some logic each time consensus starts
…On Mon, 11 Mar 2024, 09:39 MatheusFranco99, ***@***.***> wrote:
@GalRogozinski <https://github.com/GalRogozinski>
Do you mean aggregating the validator registration and exit duties? Or how
added/removed validators change this aggregation?
For the second question, removed validators shouldn't have the duty event
and won't be using the decided data by its cluster's consensus, while added
validators would use this data.
—
Reply to this email directly, view it on GitHub
<#42 (comment)>, or
unsubscribe
<https://github.com/notifications/unsubscribe-auth/AB4WDF3PZR2BTKTWKMY26PTYXVNS7AVCNFSM6AAAAABEJDLWVCVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTSOBXG44TCOJYGA>
.
You are receiving this because you were mentioned.Message ID:
***@***.***>
|
@GalRogozinski What do you mean by choosing a validator? |
If operators used BLS for consensus, they would need to choose a validator to know with which BLS key they should sign messages. On discussion, we concluded that this approach would require some agreed-upon deterministic selection. This would not be easy with the current design (due to the decoupling of consensus and duty execution logic). However, there's a cryptography change going on by which operators should use their network keys to validate consensus messages. Relying on that would make things much simpler. Therefore, we prefer to make this change a pre-requisite for this SIP. |
Stuff to think about:
|
Just noting that this SIP should have the representation of the BeaconState (or however you decide to call it) and a specification of how to construct it. |
@GalRogozinski & me considering a different design approach that more naturally represents the hierarchy of cluster -> instance -> runners: Please let us know what you think @MatheusFranco99 If this would be too big of a change, then we might consider skipping it |
@moshe-blox Indeed. Will add it later on. Thanks! |
I like the design @moshe-blox . This cluster-based consensus PR will already be huge anyway. I think this design produces an even bigger change in terms of code and tests, but I think it may be worth the cost. |
New containers and interfaces to be added:
|
For topics the first validator can be used or we organize our topics via clusters |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
just clarify to me your calculation please...
maybe I am wrong, but I am not sure why
Co-authored-by: rehs0y <[email protected]>
Co-authored-by: rehs0y <[email protected]>
This SIP proposes aggregating
Attestation
andSync Committee
duties on a single duty. This will reduce the number of messages exchanged and processing costs.