AAL2GenUnlockAuthCodeCmd

Prev Next

Function prototype

aat_int32 AAL2GenUnlockAuthCodeCmd(
                                   aat_byte           *Cmd,
                                   aat_int32          *CmdSize,
                                   TDigipassBlob      *DPData,
                                   TKernelParms       *CallParms,
                                   aat_ascii          *UnlockAuthIndex);

Description

This function creates a command which directs the HSM to generate unlock authentication code using the given data and to return a result in the form of a reply.

Unlocking Digipass with the HSM module is identical to the functionality available with the Authentication Suite Server SDK  Software Digipass Management Service. For information on the associated functions, refer to the Authentication Suite Server SDK C-C++ Programmer's Guide.

This function must be used with the post-HSM API AAL2ProcUnlockAuthCodeRpl.

Parameters

  Table: Parameters (AAL2GenUnlockAuthCodeCmd)
TypeNameUseDescription
aat_byte *CmdO

290 bytes that serialize the UNLOCK AUTH CODE command type and the input data to the unlock auth code function on the HSM:

  • Command type - 2 bytes
  • An authenticator application BLOB - 192 bytes
  • Runtime parameters - 80 bytes
  • Unlock auth index - 4 bytes

Plus 12 bytes for Authentication Suite Server SDK internal use.

aat_int32 *CmdSizeI/O

On entry, this parameter contains the size of the Cmd buffer.On exit, this parameter contains the length of the Cmd message.

TDigipassBlob *DPDataIauthenticator application BLOB.
TKernelParms *CallParmsI

Structure of runtime parameters to use during this function call.

aat_int32UnlockAuthIndexI

This parameter contains the unlock authentication index value; possible parameter values range from 0 to 5:

  • 0: current unlock authentication code
  • 1: next unlock authentication code
  • 2: …

Return codes

  Table: Return codes (AAL2GenUnlockAuthCodeCmd)
CodeMeaningCodeMeaning
0Success706Invalid data buffer pointer
412Invalid checksum (software)1000Function does not support EMV-CAP
413Invalid Base64 format1018Invalid TLV item pointer
510Invalid Digipass data pointer1025Data buffer too small
590Invalid command pointer