Module constants

Source
Expand description

This module defines all the constants used throughout the DKG protocol, including message tags, labels for cryptographic operations, and protocol-specific identifiers. These constants ensure consistent message handling and cryptographic operations across all protocol participants.

Constantsยง

COMMITMENT_1_LABEL
Label used for the first commitment in the protocol. This commitment is used to ensure participants are bound to their initial values.
COMMITMENT_2_LABEL
Label used for the second commitment in the protocol. This commitment is used to ensure participants are bound to their final values.
DKG_LABEL
Label used for the key generation protocol. This label is used to derive protocol-specific keys and nonces.
DKG_MSG_APP
First available message tag for user applications.
DKG_MSG_OT1
Message tag for the first round of oblivious transfer in the DKG protocol. This message is sent peer-to-peer between participants.
DKG_MSG_R1
Message tag for the first round of the DKG protocol. This message contains initial commitments and setup information.
DKG_MSG_R2
Message tag for the second round of the DKG protocol. This message contains responses to the initial commitments.
DKG_MSG_R3
Message tag for the third round of the DKG protocol. This message contains final commitments and proofs.
DKG_MSG_R4
Message tag for the fourth round of the DKG protocol. This message contains the final key shares and verification information.
DKG_RECONCILE
Message tag used to communicate the final result of a keyshare creation or update operation. This message is sent after all protocol rounds are complete.
DLOG_PROOF1_LABEL
Label used for the first discrete logarithm proof. This proof ensures the validity of certain cryptographic operations.
DLOG_PROOF2_LABEL
Label used for the second discrete logarithm proof. This proof ensures the validity of certain cryptographic operations.
DLOG_SESSION_ID_WITH_CHAIN_CODE
Label used to create a discrete logarithm session ID from the final session ID and root chain code. This is used to ensure proper session management and key derivation.
QC_COMMITMENT_1_LABEL
Label used for the first commitment in the quorum change protocol. This commitment is used to ensure participants are bound to their initial values.
QC_COMMITMENT_2_LABEL
Label used for the second commitment in the quorum change protocol. This commitment is used to ensure participants are bound to their final values.
QC_LABEL
Label used for the quorum change protocol. This label is used to derive protocol-specific keys and nonces for quorum changes.
QC_MSG_OT1
Message tag for the first oblivious transfer message in the quorum change protocol. This message is used for secure information exchange.
QC_MSG_OT2
Message tag for the second oblivious transfer message in the quorum change protocol. This message is used for secure information exchange.
QC_MSG_P2P_1
Message tag for the first peer-to-peer message in the quorum change protocol. This message is sent directly between participants.
QC_MSG_P2P_2
Message tag for the second peer-to-peer message in the quorum change protocol. This message is sent directly between participants.
QC_MSG_R0
Message tag for the initial round of the quorum change protocol. This message contains the request to change the quorum.
QC_MSG_R1
Message tag for the first round of the quorum change protocol. This message contains initial commitments for the quorum change.
QC_MSG_R2
Message tag for the second round of the quorum change protocol. This message contains responses to the quorum change commitments.