The ciphersuite type
StaticfromCreate a new Randomizer from the given scalar.
The scalar MUST be randomly generated. It is not recommended to use this
method unless for compatibility reasons with specifications on how the
randomizer must be generated. Use newFromCommitments() instead.
A new Randomizer
StaticnewCreate a new random Randomizer using SigningCommitments for randomness.
The SigningCommitments map must be the one being used in the current FROST signing run (built by the Coordinator after receiving from Participants). It is hashed into the randomizer calculation, which binds it to that specific commitments.
Returns the Randomizer and the generated randomizer seed. Both can be
used to regenerate the Randomizer with regenerateFromSeedAndCommitments().
The ciphersuite to use (must support rerandomization)
A cryptographically secure random number generator
Map of identifier to signing commitments
A tuple of [Randomizer, randomizer seed bytes]
StaticregenerateRegenerates a Randomizer generated with newFromCommitments().
This can be used by Participants after receiving the randomizer seed and commitments in Round 2. This is better than the Coordinator simply generating a Randomizer and sending it to Participants, because in this approach the participants don't need to fully trust the Coordinator's random number generator (i.e. even if the randomizer seed was not randomly generated the randomizer will still be).
This should be used exclusively with the output of newFromCommitments();
it is strongly suggested to not attempt generating the randomizer seed
yourself (even if the point of this approach is to hedge against issues
in the randomizer seed generation).
The ciphersuite to use (must support rerandomization)
The randomizer seed bytes from newFromCommitments()
Map of identifier to signing commitments
The regenerated Randomizer
Serialize the randomizer using the ciphersuite encoding.
The serialized randomizer bytes
StaticdeserializeDeserialize a Randomizer from a serialized buffer.
The ciphersuite to use
The bytes to deserialize
The deserialized Randomizer
Returns a string representation of this Randomizer.
Debug string with hex-encoded value
Check equality with another Randomizer.
The other Randomizer to compare
True if the randomizers are equal
A randomizer. A random scalar which is used to randomize the key.