Skip to main content

TrustedPublicKey

Struct TrustedPublicKey 

Source
pub struct TrustedPublicKey { /* private fields */ }
Expand description

A public key authorized by certificate path validation, not just DER parsing. Only the validating resolver can create it; callers may inspect evidence.

Implementations§

Source§

impl TrustedPublicKey

Source

pub fn evidence(&self) -> &X509TrustEvidence

Validated certificate identities and the operation’s validation time.

Trait Implementations§

Source§

impl VerifyingKey for TrustedPublicKey

Source§

fn verification_spki( &self, algorithm: SignatureAlgorithm, ) -> Result<Option<&[u8]>, DsigError>

Borrow public SPKI for native verification, validating method/key binding. Opaque external keys may return None; native providers then fail closed.
Source§

fn ecdsa_encoding(&self) -> EcdsaSignatureValueEncoding

Wire encoding already selected by the immutable verification policy.
Source§

fn verify_candidate_keys( &self, verify: &mut dyn FnMut(&dyn VerifyingKey) -> Result<bool, DsigError>, ) -> Result<Option<bool>, DsigError>

Composite resolvers may try individual keys through the selected engine. None identifies a leaf handle. Wrappers must preserve per-key policy when forwarding the visitor; no public/private key copy is required.
Source§

fn verify_with_context( &self, algorithm: SignatureAlgorithm, context: &SignatureContext, data: &[u8], signature: &[u8], ) -> Result<bool, DsigError>

Verify with validated domain separation, rejecting unsupported contexts.
Source§

fn validate_policy(&self, policy: &VerificationPolicy) -> Result<(), DsigError>

Validate this key against the operation’s immutable trust policy. Read more
Source§

fn validate_signature_value( &self, algorithm: SignatureAlgorithm, signature: &[u8], ) -> Result<bool, DsigError>

Check that signature_value has the wire framing required by the declared algorithm and this key before provider dispatch. Read more
Source§

fn validate_signature_value_with_policy( &self, policy: &VerificationPolicy, algorithm: SignatureAlgorithm, signature: &[u8], ) -> Result<bool, DsigError>

Validate wire framing under the operation’s immutable compatibility policy. Read more
Source§

fn verify( &self, algorithm: SignatureAlgorithm, data: &[u8], signature: &[u8], ) -> Result<bool, DsigError>

Verify signature_value over signed_data with the declared algorithm.
Source§

fn verify_with_policy( &self, policy: &VerificationPolicy, algorithm: SignatureAlgorithm, data: &[u8], signature: &[u8], ) -> Result<bool, DsigError>

Verify after applying operation-scoped compatibility semantics. Read more
Source§

fn provider_binding(&self) -> Option<&ProviderBinding>

Exact external execution domain; a key cannot be moved between token sessions.

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<'a, T, E> AsTaggedExplicit<'a, E> for T
where T: 'a,

Source§

fn explicit(self, class: Class, tag: u32) -> TaggedParser<'a, Explicit, Self, E>

Source§

impl<'a, T, E> AsTaggedImplicit<'a, E> for T
where T: 'a,

Source§

fn implicit( self, class: Class, constructed: bool, tag: u32, ) -> TaggedParser<'a, Implicit, Self, E>

Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> Same for T

Source§

type Output = T

Should always be Self
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = !

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, !>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.