pub struct ProvenAuthority { /* private fields */ }Expand description
Authority derived from cryptographic verification of a claim CellOS did not author.
Permitted rule-classes: CryptographicProof (REQUIRED — at least one
rule from this class must fire). StructuralAlignment and
RawObservation may co-occur (e.g. SNI parsed alongside a verified JWS),
but Opacity and ImposedInterception are forbidden.
Forbidden: Opacity (would invalidate the proof claim);
ImposedInterception (different stack); GuestAgentDeclaration.
Constructor discipline: Self::try_new requires a
ProvenAuthorityArtifact. Without the artifact, construction fails —
preventing a non-cryptographic emission from minting a ProvenAuthority
even if its derivation declares CryptographicProof.
Implementations§
Source§impl ProvenAuthority
impl ProvenAuthority
Sourcepub const PERMITTED_CLASSES: &'static [RuleClass]
pub const PERMITTED_CLASSES: &'static [RuleClass]
Permitted rule-classes for this variant.
Sourcepub fn try_new(
derivation: AuthorityDerivation,
artifact: ProvenAuthorityArtifact,
) -> Result<Self, ValidationError>
pub fn try_new( derivation: AuthorityDerivation, artifact: ProvenAuthorityArtifact, ) -> Result<Self, ValidationError>
Construct a ProvenAuthority.
Runs AuthorityDerivation::validate plus the type-class envelope
check, and additionally requires:
- At least one rule with class
CryptographicProof(otherwise we have nothing to prove). - A non-trivial
ProvenAuthorityArtifact.
§Errors
Returns the first ValidationError encountered.
Sourcepub fn derivation(&self) -> &AuthorityDerivation
pub fn derivation(&self) -> &AuthorityDerivation
Read-only access to the derivation.
Sourcepub fn artifact(&self) -> &ProvenAuthorityArtifact
pub fn artifact(&self) -> &ProvenAuthorityArtifact
Read-only access to the verification artifact.
Sourcepub fn output(&self) -> AuthorityOutput
pub fn output(&self) -> AuthorityOutput
Convenience accessor for the output tuple.
Trait Implementations§
Source§impl Clone for ProvenAuthority
impl Clone for ProvenAuthority
Source§fn clone(&self) -> ProvenAuthority
fn clone(&self) -> ProvenAuthority
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 ProvenAuthority
impl Debug for ProvenAuthority
Source§impl<'de> Deserialize<'de> for ProvenAuthority
impl<'de> Deserialize<'de> for ProvenAuthority
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>,
Source§impl PartialEq for ProvenAuthority
impl PartialEq for ProvenAuthority
Source§fn eq(&self, other: &ProvenAuthority) -> bool
fn eq(&self, other: &ProvenAuthority) -> bool
self and other values to be equal, and is used by ==.