The goal of this PR was to make the sign and keygen protocol depend less on a shared state between rounds.
The main difference is that the LocalParty structs are now removed, in favor of more maps contained in the respective rounds.
Made Commitment and Decommitment "validatable" which checks the size, minimizing the possibility of an error.
Fixed a bug in party/IDSlice.Sorted which returned the wrong result.
round.Helper: added validation of given partyIDs
round.Helper: add group information which will make it easier to use different curves or groups at a later stage.
round.Helper: handle the ssid hash here, and include the protocol ID (made writable with domain)
protocol/keygen.Session: remove sid struct since this information is handled in the round.Helper
protocol/keygen.Session: remove many unnecessary fields and make validation easier
protocol/keygen.Public: remove ID field and only consider the "keygen finished" state
The goal of this PR was to make the sign and keygen protocol depend less on a shared state between rounds. The main difference is that the
LocalParty
structs are now removed, in favor of more maps contained in the respective rounds.Commitment
andDecommitment
"validatable" which checks the size, minimizing the possibility of an error.party/IDSlice.Sorted
which returned the wrong result.round.Helper
: added validation of given partyIDsround.Helper
: add group information which will make it easier to use different curves or groups at a later stage.round.Helper
: handle the ssid hash here, and include the protocol ID (made writable with domain)protocol/keygen.Session
: removesid
struct since this information is handled in theround.Helper
protocol/keygen.Session
: remove many unnecessary fields and make validation easierprotocol/keygen.Public
: removeID
field and only consider the "keygen finished" state