pub struct VcRuntime { /* private fields */ }Expand description
Issues, holds, presents, and verifies Verifiable Credentials with ML-DSA-65 proofs.
Implementations§
Source§impl VcRuntime
impl VcRuntime
pub fn new(crypto: FiduciaryCrypto) -> Self
Sourcepub fn issue(
&self,
credential: Credential,
key_id: Option<&str>,
) -> Result<Credential, VcError>
pub fn issue( &self, credential: Credential, key_id: Option<&str>, ) -> Result<Credential, VcError>
Issue a Verifiable Credential: sign the proof-less credential and attach the proof.
Sourcepub fn hold(&self, _credential: &Credential) -> Result<(), VcError>
pub fn hold(&self, _credential: &Credential) -> Result<(), VcError>
Hold a credential (secure storage is the caller’s responsibility for now).
Sourcepub fn present(
&self,
credentials: Vec<Credential>,
key_id: Option<&str>,
) -> Result<Presentation, VcError>
pub fn present( &self, credentials: Vec<Credential>, key_id: Option<&str>, ) -> Result<Presentation, VcError>
Present one or more credentials inside a signed Verifiable Presentation.
Sourcepub fn verify_credential(
&self,
credential: &Credential,
) -> Result<bool, VcError>
pub fn verify_credential( &self, credential: &Credential, ) -> Result<bool, VcError>
Verify a credential’s proof. Fail-closed: missing proof or a failed check errors.
Sourcepub fn verify_presentation(
&self,
presentation: &Presentation,
) -> Result<bool, VcError>
pub fn verify_presentation( &self, presentation: &Presentation, ) -> Result<bool, VcError>
Verify a presentation’s proof and every credential it carries (all fail-closed).
Auto Trait Implementations§
impl Freeze for VcRuntime
impl RefUnwindSafe for VcRuntime
impl Send for VcRuntime
impl Sync for VcRuntime
impl Unpin for VcRuntime
impl UnsafeUnpin for VcRuntime
impl UnwindSafe for VcRuntime
Blanket Implementations§
§impl<S, A> Aggregate<Result<S, Error>> for Awhere
A: Aggregate<S>,
impl<S, A> Aggregate<Result<S, Error>> for Awhere
A: Aggregate<S>,
Aggregate shares in an MPC protocol.
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
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more