Skip to content

core

threshold-elgamal


threshold-elgamal / threshold-elgamal/core

Low-level core helpers for arithmetic, error handling, and group constants.

Use this module when you need primitives that sit below the voting workflow surface exposed by the root package.

ClassDescription
IndexOutOfRangeErrorRaised when a participant index falls outside the supported 1..n numbering scheme used across the protocol.
InvalidGroupElementErrorRaised when a point or public key is not a canonical member of the selected cryptographic group.
InvalidPayloadErrorRaised when a payload, transcript field, manifest field, or serialized value does not satisfy the package’s canonical encoding rules.
InvalidProofErrorRaised when a Schnorr, DLEQ, or disjunctive proof transcript fails structural checks or cryptographic verification.
InvalidScalarErrorRaised when a scalar value falls outside the expected field or subgroup domain for the current operation.
InvalidShareErrorRaised when a serialized share, decrypted share envelope, or reconstructed share set fails threshold-specific validation.
PhaseViolationErrorRaised when a published payload claims to belong to a protocol phase that does not match the supported ceremony state machine.
PlaintextDomainErrorRaised when an additive plaintext falls outside the explicitly bounded domain that the current workflow promised to support.
ThresholdViolationErrorRaised when threshold parameters or participant counts violate the supported 1 <= k <= n relationship or the package’s honest-majority policy.
TranscriptMismatchErrorRaised when transcript hashes, manifest hashes, or other canonical digest commitments do not match the values claimed by published payloads.
UnsupportedSuiteErrorRaised when the requested suite or required runtime capability is unavailable in the current environment.
Type aliasDescription
EncodedPointCanonical 32-byte Ristretto point encoding exposed at the public boundary.
VariableDescription
RISTRETTO_GROUPImmutable definition of the built-in ristretto255 tally group.
FunctionDescription
modQReduces a value into the range 0..q-1.