Edit

WEBAUTHN_CTAPCBOR_MAKE_CREDENTIAL_REQUEST structure (webauthnplugin.h)

Contains a decoded CTAP CBOR makeCredential request.

Syntax

typedef struct _WEBAUTHN_CTAPCBOR_MAKE_CREDENTIAL_REQUEST {
  DWORD                                    dwVersion;
  DWORD                                    cbRpId;
  PBYTE                                    pbRpId;
  DWORD                                    cbClientDataHash;
  PBYTE                                    pbClientDataHash;
  PCWEBAUTHN_RP_ENTITY_INFORMATION         pRpInformation;
  PCWEBAUTHN_USER_ENTITY_INFORMATION       pUserInformation;
  WEBAUTHN_COSE_CREDENTIAL_PARAMETERS      WebAuthNCredentialParameters;
  WEBAUTHN_CREDENTIAL_LIST                 CredentialList;
  DWORD                                    cbCborExtensionsMap;
  PBYTE                                    pbCborExtensionsMap;
  PWEBAUTHN_CTAPCBOR_AUTHENTICATOR_OPTIONS pAuthenticatorOptions;
  BOOL                                     fEmptyPinAuth;
  DWORD                                    cbPinAuth;
  PBYTE                                    pbPinAuth;
  LONG                                     lHmacSecretExt;
  PWEBAUTHN_CTAPCBOR_HMAC_SALT_EXTENSION   pHmacSecretMcExtension;
  LONG                                     lPrfExt;
  DWORD                                    cbHmacSecretSaltValues;
  PBYTE                                    pbHmacSecretSaltValues;
  DWORD                                    dwCredProtect;
  DWORD                                    dwPinProtocol;
  DWORD                                    dwEnterpriseAttestation;
  DWORD                                    cbCredBlobExt;
  PBYTE                                    pbCredBlobExt;
  LONG                                     lLargeBlobKeyExt;
  DWORD                                    dwLargeBlobSupport;
  LONG                                     lMinPinLengthExt;
  DWORD                                    cbJsonExt;
  PBYTE                                    pbJsonExt;
} WEBAUTHN_CTAPCBOR_MAKE_CREDENTIAL_REQUEST, *PWEBAUTHN_CTAPCBOR_MAKE_CREDENTIAL_REQUEST;

Members

dwVersion

The version of this structure.

cbRpId

The size, in bytes, of the raw UTF-8 relying-party identifier pointed to by pbRpId.

pbRpId

A pointer to the raw UTF-8 relying-party identifier bytes that are hashed into the authenticator data.

cbClientDataHash

The size, in bytes, of the client-data hash pointed to by pbClientDataHash.

pbClientDataHash

A pointer to the client-data hash.

pRpInformation

A pointer to a WEBAUTHN_RP_ENTITY_INFORMATION structure.

pUserInformation

A pointer to a WEBAUTHN_USER_ENTITY_INFORMATION structure.

WebAuthNCredentialParameters

A WEBAUTHN_COSE_CREDENTIAL_PARAMETERS structure that contains the acceptable credential parameters.

CredentialList

A WEBAUTHN_CREDENTIAL_LIST structure that contains the exclusion list.

cbCborExtensionsMap

The size, in bytes, of the CBOR extensions map pointed to by pbCborExtensionsMap.

pbCborExtensionsMap

A pointer to the raw CBOR extensions map.

pAuthenticatorOptions

An optional pointer to a WEBAUTHN_CTAPCBOR_AUTHENTICATOR_OPTIONS structure.

fEmptyPinAuth

If TRUE, a zero-length pinAuth field is included in the request.

cbPinAuth

The size, in bytes, of the pinAuth buffer pointed to by pbPinAuth.

pbPinAuth

A pointer to the pinAuth buffer.

lHmacSecretExt

The hmac-secret extension state.

pHmacSecretMcExtension

An optional pointer to a WEBAUTHN_CTAPCBOR_HMAC_SALT_EXTENSION structure for the hmac-secret-mc extension.

lPrfExt

The prf extension state.

cbHmacSecretSaltValues

The size, in bytes, of the PRF salt-values buffer pointed to by pbHmacSecretSaltValues.

pbHmacSecretSaltValues

A pointer to the PRF salt-values buffer.

dwCredProtect

The credProtect extension value, or zero if the extension is not present.

dwPinProtocol

The PIN protocol value, or zero if it is not present.

dwEnterpriseAttestation

The enterprise-attestation value, or zero if it is not present.

cbCredBlobExt

The size, in bytes, of the credBlob extension buffer pointed to by pbCredBlobExt.

pbCredBlobExt

A pointer to the credBlob extension buffer.

lLargeBlobKeyExt

The largeBlobKey extension state.

dwLargeBlobSupport

The largeBlob extension value.

lMinPinLengthExt

The minPinLength extension state.

cbJsonExt

The size, in bytes, of the json extension buffer pointed to by pbJsonExt.

pbJsonExt

A pointer to the json extension buffer.

Remarks

Use this structure with WebAuthNDecodeMakeCredentialRequest.

Requirements

Requirement Value
Header webauthnplugin.h

See also

WebAuthNDecodeMakeCredentialRequest

WEBAUTHN_CREDENTIAL_ATTESTATION