Trait identity_iota::verification::jose::jws::JwsVerifier

source ·
pub trait JwsVerifier {
    // Required method
    fn verify(
        &self,
        input: VerificationInput,
        public_key: &Jwk,
    ) -> Result<(), SingleStructError<SignatureVerificationErrorKind>>;
}
Expand description

Trait for cryptographically verifying a JWS signature.

Any type implementing this trait can be passed to JwsValidationItem::verify which is intended as the most convenient way to verify a decoded JWS.

JwsValidationItem::verify

§Implementation

Implementers are expected to provide a procedure for step 8 of RFC 7515 section 5.2 for the JWS signature algorithms they want to support.

Custom implementations can be constructed inline by converting a suitable closure into a JwsVerifierFn using the From trait.

§Default implementation

When the eddsa feature is enabled one can construct an implementor provided by the IOTA Identity library. See EdDSAJwsVerifier::verify.

Required Methods§

source

fn verify( &self, input: VerificationInput, public_key: &Jwk, ) -> Result<(), SingleStructError<SignatureVerificationErrorKind>>

Validate the decoded_signature against the signing_input in the manner defined by alg using the public_key.

Implementors may decide to error with SignatureVerificationErrorKind::UnsupportedAlg if they are not interested in supporting a given algorithm.

Trait Implementations§

source§

impl JwsVerifier for Box<dyn JwsVerifier>

source§

fn verify( &self, input: VerificationInput, public_key: &Jwk, ) -> Result<(), SingleStructError<SignatureVerificationErrorKind>>

Validate the decoded_signature against the signing_input in the manner defined by alg using the public_key. Read more

Implementations on Foreign Types§

source§

impl JwsVerifier for Box<dyn JwsVerifier>

Implementors§