pub struct GenesisCeremonyConfig {
pub ceremony_id: String,
pub network_id: String,
pub repo_commit: String,
pub constitution_hash: Hash256,
pub threshold: u16,
pub max_signers: u16,
pub created_at: Timestamp,
pub certifiers: Vec<CertifierContact>,
pub signing_set: Vec<u16>,
}Expand description
Root genesis ceremony configuration bound into every transcript and bundle.
Fields§
§ceremony_id: StringCeremony identifier chosen before DKG starts.
network_id: StringEXOCHAIN network identifier.
repo_commit: StringRepository commit reviewed for the ceremony.
constitution_hash: Hash256Canonical hash of the governing constitution.
threshold: u16Threshold required to sign root artifacts after genesis.
max_signers: u16Total roster size.
created_at: TimestampHLC timestamp supplied by the operator.
certifiers: Vec<CertifierContact>Full certifier roster.
signing_set: Vec<u16>Predeclared deterministic signing set: exactly threshold rostered FROST
identifiers chosen before commitments are emitted. Root artifacts are
signed only by this exact set. If any signer is unavailable, the ceremony
aborts and restarts with a new signed config and ceremony id.
Implementations§
Source§impl GenesisCeremonyConfig
impl GenesisCeremonyConfig
Sourcepub fn validate(&self) -> Result<()>
pub fn validate(&self) -> Result<()>
Validate the constitutional root policy and roster uniqueness.
Sourcepub fn validate_signing_selection(
&self,
submitted: &BTreeSet<u16>,
) -> Result<()>
pub fn validate_signing_selection( &self, submitted: &BTreeSet<u16>, ) -> Result<()>
Validate that submitted is the canonical signing selection for this
ceremony: exactly the predeclared signing_set. There is no in-ceremony
alternate substitution; an unavailable signer aborts the ceremony and forces
a new config/ceremony id.
Sourcepub fn certifier_by_did(&self, did: &Did) -> Option<&CertifierContact>
pub fn certifier_by_did(&self, did: &Did) -> Option<&CertifierContact>
Return the certifier with the supplied DID, if rostered.
Sourcepub fn certifier_by_identifier(
&self,
identifier: u16,
) -> Option<&CertifierContact>
pub fn certifier_by_identifier( &self, identifier: u16, ) -> Option<&CertifierContact>
Return the certifier with the supplied FROST identifier, if rostered.
Trait Implementations§
Source§impl Clone for GenesisCeremonyConfig
impl Clone for GenesisCeremonyConfig
Source§fn clone(&self) -> GenesisCeremonyConfig
fn clone(&self) -> GenesisCeremonyConfig
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for GenesisCeremonyConfig
impl Debug for GenesisCeremonyConfig
Source§impl<'de> Deserialize<'de> for GenesisCeremonyConfig
impl<'de> Deserialize<'de> for GenesisCeremonyConfig
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
impl Eq for GenesisCeremonyConfig
Source§impl PartialEq for GenesisCeremonyConfig
impl PartialEq for GenesisCeremonyConfig
Source§fn eq(&self, other: &GenesisCeremonyConfig) -> bool
fn eq(&self, other: &GenesisCeremonyConfig) -> bool
self and other values to be equal, and is used by ==.