pub struct FederatedTrustAuthority {
pub id: String,
pub members: Vec<MemberOrg>,
pub org_quorum: Quorum,
pub aggregate_key: Vec<u8>,
pub hierarchy_spanning: bool,
}Expand description
A federated trust authority: M-of-K organizations, one aggregate key.
Fields§
§id: StringFTA identifier.
members: Vec<MemberOrg>Member organizations.
org_quorum: QuorumOrganizational quorum: M of K organizations must cooperate.
aggregate_key: Vec<u8>The FTA’s aggregate public key.
hierarchy_spanning: boolWhether members may come from independent root hierarchies (hierarchy-spanning FTA — a trust bridge).
Implementations§
Source§impl FederatedTrustAuthority
impl FederatedTrustAuthority
Sourcepub fn validate(&self) -> SignatifResult<()>
pub fn validate(&self) -> SignatifResult<()>
Validate structural invariants: M <= K <= members, unique member ids, and — for nested members — inner quorum sanity.
§Errors
Encoding errors with a precise message for each violation.
Sourcepub fn requires_inner_quorum(&self, org: &str) -> Option<Quorum>
pub fn requires_inner_quorum(&self, org: &str) -> Option<Quorum>
Whether signing by this FTA requires the given inner authority to first reach its own quorum (nested threshold composition).
Trait Implementations§
Source§impl Clone for FederatedTrustAuthority
impl Clone for FederatedTrustAuthority
Source§fn clone(&self) -> FederatedTrustAuthority
fn clone(&self) -> FederatedTrustAuthority
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for FederatedTrustAuthority
impl Debug for FederatedTrustAuthority
Source§impl<'de> Deserialize<'de> for FederatedTrustAuthority
impl<'de> Deserialize<'de> for FederatedTrustAuthority
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>,
Deserialize this value from the given Serde deserializer. Read more
Auto Trait Implementations§
impl Freeze for FederatedTrustAuthority
impl RefUnwindSafe for FederatedTrustAuthority
impl Send for FederatedTrustAuthority
impl Sync for FederatedTrustAuthority
impl Unpin for FederatedTrustAuthority
impl UnsafeUnpin for FederatedTrustAuthority
impl UnwindSafe for FederatedTrustAuthority
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more