CredentialVerifier

Struct CredentialVerifier 

Source
pub struct CredentialVerifier;
Expand description

Verifier for Verifiable Credentials.

Performs structural validation, expiry checks, and subject matching. Cryptographic proof verification requires the issuer’s public key, which must be resolved via the DID Document.

Implementations§

Source§

impl CredentialVerifier

Source

pub fn verify_structure( credential: &VerifiableCredential, ) -> Result<(), CredentialError>

Verify a credential’s structure and expiry.

Checks:

  • The credential has a non-empty id
  • The type array includes “VerifiableCredential”
  • The subject has a non-empty id
  • The credential has not expired

This does NOT verify the cryptographic proof (that requires the issuer’s public key resolved from their DID Document).

Source

pub fn is_expired(credential: &VerifiableCredential) -> bool

Check if a credential has expired.

Returns false if the credential has no expiration date.

Source

pub fn verify_subject( credential: &VerifiableCredential, subject_did: &str, ) -> bool

Verify the credential was issued for the given subject DID.

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<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 = Infallible

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

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

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.