KeyCeremony_Coordinator
¶Responsible for coordinating communication between the trustees during the key ceremony.
KeyCeremony_Coordinator_new
(uint32_t num_trustees, uint32_t threshold)¶Create a new coordinator.
KeyCeremony_Coordinator_new_r
¶KeyCeremony_Coordinator_free
(KeyCeremony_Coordinator c)¶Free a coordinator.
KeyCeremony_Coordinator_receive_key_generated
(KeyCeremony_Coordinator c, struct key_generated_message message)¶Receive a message indicating that a trustee has generated its key-pair, which contains the trustee’s public key.
Checks the NIZKP of possession of the private key.
KeyCeremony_Coordinator_all_keys_received
(KeyCeremony_Coordinator c)¶Assert that exactly one key_generated_message from each trustee has been received, and generate an all_keys_generated_message containing all of the public keys.
KeyCeremony_Coordinator_all_keys_received_r
¶Receive a message indicating that a trustee has verified that the key shares it has received are consistent with the commitments in the public keys of each trustee.
KeyCeremony_Coordinator_publish_joint_key
(KeyCeremony_Coordinator c)¶Assert that exactly one shares_verified_message from each trustee has been received, and generate the joint public key to be used to encrypt votes in the election.
KeyCeremony_Coordinator_publish_joint_key_r
¶KeyCeremony_Coordinator_status
¶Values:
KEYCEREMONY_COORDINATOR_SUCCESS
¶KEYCEREMONY_COORDINATOR_INSUFFICIENT_MEMORY
¶KEYCEREMONY_COORDINATOR_INVALID_PARAMS
¶KEYCEREMONY_COORDINATOR_DUPLICATE_TRUSTEE_INDEX
¶KEYCEREMONY_COORDINATOR_INVALID_TRUSTEE_INDEX
¶KEYCEREMONY_COORDINATOR_MISSING_TRUSTEES
¶KEYCEREMONY_COORDINATOR_TRUSTEE_INVALIDATION
¶KEYCEREMONY_COORDINATOR_SERIALIZE_ERROR
¶KEYCEREMONY_COORDINATOR_DESERIALIZE_ERROR
¶