AAL2ProcVerifyDeviceCodeRpl
  • 23 Jan 2025
  • 2 Minutes à lire
  • Sombre
    Lumière
  • PDF

AAL2ProcVerifyDeviceCodeRpl

  • Sombre
    Lumière
  • PDF

The content is currently unavailable in French. You are viewing the default English version.
Résumé de l’article

Function prototype

aat_int32 AAL2ProcVerifyDeviceCodeRpl(
                                      aat_byte        *InReply,
                                      aat_int32        ReplySize,
                                      TDigipassBlob   *DPMAData,
                                      aat_ascii       *DeviceID,
                                      aat_int32       *DeviceIDLength,
                                      aat_int32       *pDeviceType);

Description

This function processes a reply from the HSM to a device code validation command which has been generated with AAL2GenVerifyDeviceCodeCmd.

The device code validation on the HSM is identical to the functionality available with the Authentication Suite Server SDK Software Digipass Multi-Device Activation Service. For information on the associated functions, refer to the Authentication Suite Server SDK C-C++ Programmer's Guide.

Score-based Digipass

For Digipass devices that integrate the score-based algorithm, the HSM module performs a score-based authentication to validate the device code. This allows retrieving the Digipass scoring value. Once the HSM module has successfully validated the device code, it returns either SUCCESS or SUCCESS with the relevant scoring warning code. See return codes in Table: Return codes (AAL2ProcVerifyDeviceCodeRpl) for more details.

Parameters

  Table: Parameters (AAL2ProcVerifyDeviceCodeRpl)
TypeNameUseDescription
aat_byte *InReplyI

String of up to 218 bytes that contain the VERIFY DEVICE CODE command type and the output data from the verify device code function on the HSM:

  • Command type - 2 bytes
  • Digipass Master Activation application BLOB - 192 bytes
  • DeviceID - 8 bytes
  • Return code - 4 bytes

Plus 12 bytes for Authentication Suite Server SDK internal use.

aat_int32ReplySizeIThe length of the InReply message.
TDigipassBlobDPMAData O

Digipass master activation application BLOB of the Digipass serial number license that will be used for the activation. Upon return from the function call, this BLOB must be rewritten to the application database to reflect changes.

aat_ascii *DeviceIDO

Output string of 8+1 hexadecimal characters, null-terminated. If the device code has been successfully verified, this parameter contains the value of the Digipass device ID.

aat_int32 *DeviceIDLengthI/O

In input, this parameter must indicate the size of the allocated buffer for the DeviceID parameter (recommended 9 bytes). In output, this parameter indicates the length of the DeviceID string (without the null-terminated character).

aat_int32 *pDeviceTypeO

In output, this parameter contains the Digipass device type if the device code has been successfully verified (from 0 to 31).


  Table: List of device type values and definitions
ValueDefinitionValueDefinition
   
0Hardware device13BlackBerry Native
1Unknown software platform15MIDP2 Platform or BB Java
3iOS17Windows
5Jailbroken iOS19Linux
7Android21Mac
9Rooted AndroidOtherRFU
11Windows Phone  

Return codes

  Table:  Return codes (AAL2ProcVerifyDeviceCodeRpl)
CodeMeaningCodeMeaning
0Success1019Missing mandatory TLV item
10001Success with context warning*1025Buffer too small
10002Success with user warning*1039Invalid response length with DP algorithm
10003Success with user & context warning*1040Invalid host code length with DP algorithm
10004Success with platform warning*1103Unlock Version 2 not supported
10005Success with platform & context warning*1116Response check digit not allowed
10006Success with platform & user warning*1117Challenge check digit not allowed
10007Success with platform & user & context warning*1118Unsupported BLOB
1Code not verified1263Device ID buffer too small
2Static password validation failed1264Invalid master application
140Challenge corrupted1265Invalid master application data pointer
201Code replay attempt1277Invalid device ID pointer
202Identification error threshold reached1278Invalid device ID length pointer
205Inactive days reached1280Invalid device type pointer
208Application disabled1281Invalid device code length
272Invalid wrapped key1282Invalid device code check digit
412Invalid checksum (software)1283Invalid device code character
413Invalid Base64 format1284Invalid device code
414Invalid checksum (HSM)1285Master key derivation failed
600Invalid Gordian root information-102Challenge too long
601Invalid Gordian today information-103Challenge check digit wrong
602Invalid Gordian tomorrow information-105Challenge minimum length not allowed
603Invalid Gordian stimulus information-106Challenge maximum length not allowed
701Invalid input buffer pointer-107Challenge number wrong
910Invalid HSM command in reply-108Challenge character invalid
912HSM invalid BLOB status-201Response length out of bounds
913Invalid HSM key property-205Response character not decimal
951Invalid HSM key type for HSM decryption-206Response character not hexadecimal
1009Invalid TLV total length-207Response character set not specified
1018Invalid TLV item pointer  

* Specific score-based authentication codes; for more information, refer to Score-based Digipass.


Cet article vous a-t-il été utile ?

Changing your password will log you out immediately. Use the new password to log back in.
First name must have atleast 2 characters. Numbers and special characters are not allowed.
Last name must have atleast 1 characters. Numbers and special characters are not allowed.
Enter a valid email
Enter a valid password
Your profile has been successfully updated.
ESC

Ozzy, facilitant la découverte de connaissances grâce à l’intelligence conversationnelle