Function prototype
aat_int32 AAL2GenChangeStaticPasswordCmdEx(
aat_byte *Cmd,
aat_int32 *CmdSize,
TDigipassBlob *DPData,
TKernelParms *CallParms,
aat_ascii *aStorageKeyNameIn,
aat_ascii *aIVIn
aat_ascii *NewStaticPassword1,
aat_ascii *NewStaticPassword2);
Description
This function extends AAL2GenChangeStaticPasswordCmd. With this function, you can address the HSM storage key by name and to specify an initial vector. The initial vector is used during the 3DES/AES encryption of the sensitive authenticator application BLOB data.
The Digipass static PIN management on the HSM 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 AAL2ProcChangeStaticPasswordRpl.
Parameters
Table: Parameters (AAL2GenChangeStaticPasswordCmdEx) | Type | Name | Use | Description |
|---|
| aat_byte * | Cmd | O | Up to 450 bytes that serialize the CHANGE STATIC PASSWORD command type and the input data to the change static password function on the HSM: - Command type - 2 bytes
- An authenticator application BLOB - 192 bytes
- Runtime parameters - 80 bytes
- StorageKeyName - up to 128 characters
- InitialVector - 8 bytes
- New static password - up to 8 characters
- New static password confirmation - up to 8 characters
Plus 24 bytes for Authentication Suite Server SDK internal use. |
| aat_int32 * | CmdSize | I/O | On entry, this parameter contains the size of the Cmd buffer.On exit, this parameter contains the length of the Cmd message. |
| TDigipassBlob * | DPData | I | The authenticator application BLOB. |
| TKernelParms * | CallParms | I | Structure of runtime parameters to use during this function call. |
| aat_ascii * | aStorageKeyNameIn | I | String of up to 128+1 characters, left-justified, null-terminated, or right-padded with spaces. This is the label of the HSM storage key used to encrypt the sensitive Digipass application BLOB data. |
| aat_ascii * | aIVIn | I | String of 16 hexadecimal characters, left-justified, null-terminated, or right-padded with spaces. This is the initial vector used to encrypt the sensitive authenticator application BLOB data. |
| aat_ascii * | NewStaticPassword1 | I | First entry of the password change trial. Up to 8 printable ASCII-EBCDIC invariant characters. Must be null-terminated. For a list of the characters that can be used for the new static password, refer to the Authentication Suite Server SDK C-C++ Programmer's Guide, Section "Supported new static password charset". |
| aat_ascii * | NewStaticPassword2 | I | Second entry confirmation of the password change trial. Must be identical to NewStaticPassword1. |
Return codes
Table: Return codes (AAL2GenChangeStaticPasswordCmdEx) | Code | Meaning | Code | Meaning |
|---|
| 0 | Success | 590 | Invalid command pointer |
| 130 | Invalid response pointer | 706 | Invalid data buffer pointer |
| 412 | Invalid checksum (software) | 1000 | Function does not support EMV-CAP |
| 413 | Invalid Base64 format | 1018 | Invalid TLV item pointer |
| 510 | Invalid Digipass data pointer | 1025 | Data buffer too small |