| Stability | experimental |
|---|---|
| Safe Haskell | None |
| Language | Haskell2010 |
Crypto.WebAuthn.AttestationStatementFormat.Packed
Description
This module implements the Packed Attestation Statement Format.
Synopsis
- format :: SomeAttestationStatementFormat
- data Format = Format
- data VerificationError
- = VerificationErrorAlgorithmMismatch
- | VerificationErrorInvalidSignature Text
- | VerificationErrorVerificationFailure SignatureFailure
- | VerificationErrorCertificateRequirementsUnmet
- | VerificationErrorASN1Error ASN1Error
- | VerificationErrorCredentialAAGUIDMissing
- | VerificationErrorCertificateAAGUIDMismatch
Documentation
format :: SomeAttestationStatementFormat Source #
Helper function that wraps the Packed format into the general SomeAttestationStatementFormat type.
The Packed format. The sole purpose of this type is to instantiate the AttestationStatementFormat typeclass below.
Constructors
| Format |
Instances
| Show Format Source # | |
| AttestationStatementFormat Format Source # | |
Defined in Crypto.WebAuthn.AttestationStatementFormat.Packed Methods asfIdentifier :: Format -> Text Source # asfVerify :: Format -> DateTime -> AttStmt Format -> AuthenticatorData 'Registration 'True -> ClientDataHash -> Validation (NonEmpty (AttStmtVerificationError Format)) SomeAttestationType Source # asfTrustAnchors :: Format -> VerifiableAttestationType -> CertificateStore Source # asfDecode :: Format -> HashMap Text Term -> Either Text (AttStmt Format) Source # | |
| type AttStmt Format Source # | |
| type AttStmtVerificationError Format Source # | |
data VerificationError Source #
Verification errors specific to Packed attestation
Constructors
| VerificationErrorAlgorithmMismatch | The Algorithm from the attestation format does not match the algorithm of the key in the credential data |
| VerificationErrorInvalidSignature Text | The statement key cannot verify the signature over the attested credential data and client data for self attestation |
| VerificationErrorVerificationFailure SignatureFailure | The statement certificate cannot verify the signature over the attested credential data and client data for nonself attestation |
| VerificationErrorCertificateRequirementsUnmet | The certificate does not meet the requirements layed out in the webauthn specification https://www.w3.org/TR/webauthn-2/#sctn-packed-attestation-cert-requirements |
| VerificationErrorASN1Error ASN1Error | The (supposedly) ASN1 encoded certificate extension could not be decoded |
| VerificationErrorCredentialAAGUIDMissing | The certificate extension does not contain a AAGUID |
| VerificationErrorCertificateAAGUIDMismatch | The AAGUID in the certificate extension does not match the AAGUID in the authenticator data |
Instances
| Show VerificationError Source # | |
Defined in Crypto.WebAuthn.AttestationStatementFormat.Packed Methods showsPrec :: Int -> VerificationError -> ShowS # show :: VerificationError -> String # showList :: [VerificationError] -> ShowS # | |
| Exception VerificationError Source # | |
Defined in Crypto.WebAuthn.AttestationStatementFormat.Packed Methods toException :: VerificationError -> SomeException # | |