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
impl TrustedPublicKey
Sourcepub fn evidence(&self) -> &X509TrustEvidence
pub fn evidence(&self) -> &X509TrustEvidence
Validated certificate identities and the operation’s validation time.
Trait Implementations§
Source§impl VerifyingKey for TrustedPublicKey
impl VerifyingKey for TrustedPublicKey
Source§fn verification_spki(
&self,
algorithm: SignatureAlgorithm,
) -> Result<Option<&[u8]>, DsigError>
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
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>
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>
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>
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>
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 moreSource§fn validate_signature_value_with_policy(
&self,
policy: &VerificationPolicy,
algorithm: SignatureAlgorithm,
signature: &[u8],
) -> Result<bool, DsigError>
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>
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>
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>
fn provider_binding(&self) -> Option<&ProviderBinding>
Exact external execution domain; a key cannot be moved between token sessions.
Auto Trait Implementations§
impl !RefUnwindSafe for TrustedPublicKey
impl !Send for TrustedPublicKey
impl !Sync for TrustedPublicKey
impl !UnwindSafe for TrustedPublicKey
impl Freeze for TrustedPublicKey
impl Unpin for TrustedPublicKey
impl UnsafeUnpin for TrustedPublicKey
Blanket Implementations§
Source§impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
Source§impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
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