ISO/IEC 7816-4
Identification cards — Integrated circuit cards — Part 4: Organization, security and commands for interchange
Cartes d’identification — Cartes à circuit intégré — Partie 4: Organisation, sécurité et commandes pour les échanges

VERIFY command
The command initiates the comparison in the card of stored reference data with verification data sent from the interface device (e.g., password) or from a sensor on the card (e.g., fingerprint). The security status may be modified as a result of a comparison. The card may record unsuccessful comparisons (e.g., to limit the number of further uses of the reference data).

 If INS = ’20′, the command data field is normally present for conveying verification data. The absence of command data field is used to check whether the verification is required (SW1-SW2 = ’63CX’ where ‘X’ encodes the number of further allowed retries), or not (SW1-SW2 = ’9000′).

If INS = ’21′, the command data field shall convey a verification data object (e.g., tag ’5F2E’, see ISO/IEC 7816-11[4]), normally not empty. The presence of an empty verification data object with an extended header list (tag ’4D’, see 8.5.1) expresses that the verification data come from a sensor on the card.

Table 72 — VERIFY command-response pair

 
CLA INS P1 P2 As defined in 5.1.1 ’20′, ’21′ ’00′ (any other value is reserved for future use) See Table 65
Lc field Absent for encoding Nc = 0, present for encoding Nc > 0
Data field Verification data, or absent (INS = ’20′), or Verification data object and, conditionally, extended header list (INS = ’21′)
Le field Absent for encoding Ne = 0
Data field Absent
SW1-SW2 See Tables 5 and 6 when relevant, e.g., ’6286′, ’6300′ (see 7.5.1), ’63CX’ (see 7.5.1), ’6581′, ’6700′, ’6982′, ’6983′, ’6984′, ’6A81′, ’6A82′, ’6A86′, ’6A88′

CHANGE REFERENCE DATA command

The command either replaces reference data stored in the card with new reference data sent from the interface device, or initiates their comparison with verification data sent from the interface device and then conditionally replaces them with new reference data sent from the interface device. It can be performed only if the security status satisfies the security attributes for this command.

Table 73 — CHANGE REFERENCE DATA command-response pair

 
CLA INS P1 P2 As defined in 5.1.1 ’24′ ’00′ or ’01′ (any other value is reserved for future use) See Table 65
Lc field Present for encoding Nc > 0
Data field Verification data followed without delimitation by new reference data (P1 set to ’00′), or New reference data (P1 set to ’01′)
Le field Absent for encoding Ne = 0
Data field Absent
SW1-SW2 See Tables 5 and 6 when relevant, e.g., ’6300′ (see 7.5.1), ’63CX’ (see 7.5.1), ’6581′, ’6700′, ’6982′, ’6983′, ’6984′, ’6A81′, ’6A82′, ’6A86′, ’6A88′

ENABLE VERIFICATION REQUIREMENT command

The command switches on the requirement to compare reference data with verification data. It can be performed only if the security status satisfies the security attributes for this command.

 DISABLE VERIFICATION REQUIREMENT command

The command switches off the requirement to compare reference data with verification data, and possibly switches on the requirement to compare other reference data with verification data. It can be performed only if the security status satisfies the security attributes for this command.

Table 75 — DISABLE VERIFICATION REQUIREMENT command-response pair

CLA INS P1 P2 As defined in 5.1.1 ’26′ ’00′, ’01′ or 100xxxxx where xxxxx is a reference data number (any other value is reserved for future use) See Table 65
Lc field Absent for encoding Nc = 0, present for encoding Nc > 0
Data field Absent (P1 set to ’01′), or verification data (P1 set to ’00′ or 100x xxxx)
Le field Absent for encoding Ne = 0
Data field Absent
SW1-SW2 See Tables 5 and 6 when relevant, e.g., ’6300′ (see 7.5.1), ’63CX’ (see 7.5.1), ’6581′, ’6700′, ’6982′, ’6983′, ’6984′, ’6A81′, ’6A82′, ’6A86′, ’6A88′

RESET RETRY COUNTER command

The command either resets the reference data retry counter to its initial value, or changes reference data on completion of a reset of the reference data retry counter to its initial value. It can be performed only if the security status satisfies the security attributes for this command.

Table 76 — RESET RETRY COUNTER command-response pair

CLA INS P1 P2 As defined in 5.1.1 ’2C’ ’00′, ’01′, ’02′ or ’03′ (any other value is reserved for future use) See Table 65
Lc field Absent for encoding Nc = 0, present for encoding Nc > 0
Data field Absent (P1 set to ’03′), or Resetting code followed without delimitation by new reference data (P1 set to ’00′), or Resetting code (P1 set to ’01′), or New reference data (P1 set to ’02′)
Le field Absent for encoding Ne = 0
Data field Absent
SW1-SW2 See Tables 5 and 6 when relevant, e.g., ’6300′ (see 7.5.1), ’63CX’ (see 7.5.1), ’6581′, ’6700′, ’6982′, ’6983′, ’6984′, ’6A81′, ’6A82′, ’6A86′, ’6A88′

 

Table 74 — ENABLE VERIFICATION REQUIREMENT command-response pair

 
CLA INS P1 P2 As defined in 5.1.1 ’28′ ’00′ or ’01′ (any other value is reserved for future use) See Table 65
Lc field Absent for encoding Nc = 0, present for encoding Nc > 0
Data field Absent (P1 set to ’01′), or verification data (P1 set to ’00′)
Le field Absent for encoding Ne = 0
Data field Absent
SW1-SW2 See Tables 5 and 6 when relevant, e.g., ’6300′ (see 7.5.1), ’63CX’ (see 7.5.1), ’6581′, ’6700′, ’6982′, ’6983′, ’6984′, ’6A81′, ’6A82′, ’6A86′, ’6A88′