Note

Access to this page requires authorization. You can try signing in or .

Access to this page requires authorization. You can try .

WEBAUTHN_CREDENTIAL_ATTESTATION structure (webauthn.h)

Contains the attestation data returned by the authenticator after creating a credential.

Syntax

typedef struct _WEBAUTHN_CREDENTIAL_ATTESTATION {
 DWORD dwVersion;
 PCWSTR pwszFormatType;
 DWORD cbAuthenticatorData;
 PBYTE pbAuthenticatorData;
 DWORD cbAttestation;
 PBYTE pbAttestation;
 DWORD dwAttestationDecodeType;
 PVOID pvAttestationDecode;
 DWORD cbAttestationObject;
 PBYTE pbAttestationObject;
 DWORD cbCredentialId;
 PBYTE pbCredentialId;
 WEBAUTHN_EXTENSIONS Extensions;
 DWORD dwUsedTransport;
 BOOL bEpAtt;
 BOOL bLargeBlobSupported;
 BOOL bResidentKey;
 BOOL bPrfEnabled;
 DWORD cbUnsignedExtensionOutputs;
 PBYTE pbUnsignedExtensionOutputs;
 PWEBAUTHN_HMAC_SECRET_SALT pHmacSecret;
 BOOL bThirdPartyPayment;
 DWORD dwTransports;
 DWORD cbClientDataJSON;
 PBYTE pbClientDataJSON;
 DWORD cbRegistrationResponseJSON;
 PBYTE pbRegistrationResponseJSON;
} WEBAUTHN_CREDENTIAL_ATTESTATION, *PWEBAUTHN_CREDENTIAL_ATTESTATION;

Members

dwVersion

Version of this structure, to allow for modifications in the future. This field is required and should be set to CURRENT_VERSION.

pwszFormatType

The attestation format type.

cbAuthenticatorData

The size, in bytes, of the authenticator data pointed to by pbAuthenticatorData.

pbAuthenticatorData

The authenticator data that was created for this credential.

cbAttestation

The size, in bytes, of the CBOR-encoded attestation information pointed to by pbAttestation.

pbAttestation

A pointer to the CBOR-encoded attestation information.

dwAttestationDecodeType

The type used to decode pvAttestationDecode. See Remarks for possible values.

pvAttestationDecode

A pointer to the decoded attestation data. The type depends on dwAttestationDecodeType. See Remarks for details.

cbAttestationObject

The size, in bytes, of the attestation object pointed to by pbAttestationObject.

pbAttestationObject

The CBOR encoded Attestation Object to be returned to the Relying Party.

cbCredentialId

The size, in bytes, of the credential ID pointed to by pbCredentialId.

pbCredentialId

The CredentialId bytes extracted from the Authenticator Data. Used by Edge to return to the Relying Party.

Extensions

A WEBAUTHN_EXTENSIONS structure that contains the authenticator extension outputs for this credential.

dwUsedTransport

A bitmask of WEBAUTHN_CTAP_TRANSPORT_* values indicating which transport was used.

bEpAtt

TRUE if the credential has enterprise attestation.

bLargeBlobSupported

TRUE if the authenticator supports the large blob extension for this credential.

bResidentKey

TRUE if the credential was created as a resident (discoverable) key.

bPrfEnabled

cbUnsignedExtensionOutputs

pbUnsignedExtensionOutputs

pHmacSecret

bThirdPartyPayment

dwTransports

cbClientDataJSON

pbClientDataJSON

cbRegistrationResponseJSON

pbRegistrationResponseJSON

Remarks

The pvAttestationDecode depends on the dwAttestationDecodeType:

Decode type Decode value
WEBAUTHN_ATTESTATION_DECODE_NONE NULL - not able to decode the CBOR attestation information
WEBAUTHN_ATTESTATION_DECODE_COMMON PWEBAUTHN_COMMON_ATTESTATION

Requirements

Requirement Value
Header webauthn.h

See also

WebAuthNAuthenticatorMakeCredential


Feedback

Was this page helpful?

Additional resources