Skip to content
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

Owner address in Reshare struct can be removed #4

Open
alan-ssvlabs opened this issue Sep 5, 2024 · 2 comments
Open

Owner address in Reshare struct can be removed #4

alan-ssvlabs opened this issue Sep 5, 2024 · 2 comments

Comments

@alan-ssvlabs
Copy link
Contributor

The Reshare struct is used for an initiator to start a reshare, specifying the parameters including validatorPubKey, oldOperators, newOperators, oldThreshold, newThreshold, for, withdrawalCredentials, owner, nonce.

However, the owner here is not really necessary as the owner address is also included in Proofs, that are also required to present when starting reshare.

@GalRogozinski
Copy link

In ValidateCeremonyProof it seems like we need it @alan-ssvlabs

dkg-spec/proof.go

Lines 16 to 18 in 2f5e6b6

if !bytes.Equal(ownerAddress[:], signedProof.Proof.Owner[:]) {
return fmt.Errorf("invalid owner address")
}

If you agree I can close this

@alan-ssvlabs
Copy link
Contributor Author

Not really agree. We can safely remove this check as well if we remove the owner address in Reshare. By doing that we are simply removing a place where initiator can mess things up. @GalRogozinski

The purpose of this check is to make sure whether the owner address in the Reshare correct (same as the one in Proofs). It is unnecessary because anyway operators can directly uses the owner address in Proofs to understand who is the owner.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants