IBM 2 Computer Hardware User Manual


 
Encrypted_PIN_Verify CCA Release 2.54
Parameters
For the definitions of the return_code, reason_code, exit_data_length, and exit_data
parameters, see “Parameters Common to All Verbs” on page 1-11.
PIN_encrypting_key_identifier
The PIN_encrypting_key_identifier parameter is a pointer to a string variable
containing an internal key-token or a key label of an internal key-token record
in key storage.
If you do not use the unique-key-per-transaction process, the internal key-token
must contain the input PIN-block encrypting key to be used to decrypt the input
PIN-block. The control vector in the key token must specify the IPINENC
key-type with EPINVER bit valued to one.
If you use the unique-key-per-transaction process for the input PIN-block,
specify the base derivation key as a KEYGENKY key-type with the UKPT bit
valued to one.
PIN_verifying_key_identifier
The PIN_verifying_key_identifier parameter points to a string variable
containing an internal key-token or a key label of an internal key-token record
in key storage. The internal key-token contains the key used to generate the
account-number-based PIN (A-PIN). The control vector in the internal
key-token must specify a PINVER or PINGEN key-type. For a PINGEN (and
PINVER) key, the EPINVER bit must be one.
PIN_profile
The PIN_profile parameter is a pointer to a string variable containing three
8-byte character strings with information defining the PIN-block format, and
optionally an additional 24 bytes containing the input current key serial number
(CKSN). The strings are equivalent to 24-byte or 48-byte strings. For more
information about a PIN profile, see “PIN Profile” on page 8-10 and “Current
Key Serial Number” on page 8-11.
PAN_data
The PAN_data parameter is a pointer to a string variable containing the
personal account number (PAN) data. The verb uses the PAN data to recover
the PIN from the PIN block if the PIN profile specifies the ISO-0 keyword for the
PIN-block format. Otherwise, ensure that this parameter is a pointer to a
12-byte variable in application storage.
Note: When using the ISO-0 format, use the 12 rightmost PAN digits,
excluding the check digit.
encrypted_PIN_block
The encrypted_PIN_block parameter points to a string variable containing the
encrypted PIN-block.
rule_array_count
The rule_array_count parameter is a pointer to an integer variable containing
the number of elements in the rule_array variable. The value must be one,
two, or three for this verb.
rule_array
The rule_array parameter is a pointer to a string variable containing an array of
keywords. The keywords are eight bytes in length, and must be left-justified
and padded on the right with space characters.
8-44 IBM 4758 CCA Basic Services, Release 2.54, February 2005