background image

 

 

 

 

 

 

 

 

 

80161508-001 

 

 

 

MiniSmart II 

Secure Smart Card Reader 

Command Interface 

 

 

 

 

 

August 2, 2019 

2018 Rev. C 

 

 

 

ID TECH 

10721 Walker Street, Cypress, CA90630 Voice: (714) 761-6368  Fax: (714) 761-8880 

Summary of Contents for MiniSmart II

Page 1: ...80161508 001 MiniSmart II Secure Smart Card Reader Command Interface August 2 2019 2018 Rev C ID TECH 10721 Walker Street Cypress CA90630 Voice 714 761 6368 Fax 714 761 8880 ...

Page 2: ...ccuracies that may appear in this document Except as permitted by such license no part of this publication may be reproduced or transmitted by electronic mechanical recording or otherwise or translated into any language form without the express written consent of ID TECH ID TECH and ViVOpay are trademarks or registered trademarks of ID TECH Warranty Disclaimer The services and hardware are provide...

Page 3: ...isc 29 TR 31 Block data format is KBH KBH_OB Optional Block ASCII code Result ASCII code MAC data 35 FIRMWARE UPDATING 36 Application Bootloader FM File Structure 36 Definitions 37 Block 1 Data 37 Block 2 Data 37 Block 3 Data 38 Block 4 Data 38 DEVICE EXAMPLES 39 Example 1 39 Example 2 39 Example 3 39 Entering Bootloader Mode 39 Bootloader Status Process 40 FM File Data Process 40 BOOTLOADER ERROR...

Page 4: ...programmers who wish to target a Windows platform using C or Android via Java The SDK provides a variety of convenience methods and high level langauge wrappers around most of the low level commands described in this document Contact your ID TECH representative to learn more about the SDK which is free for all customers Also be sure to check the ID TECH public Knowledge Base for additional documen...

Page 5: ...nt in a USB HID Report 0 of length 64 with the first byte of the report set to the length of the data being sent The USB HID response from the MiniSmart II is 21 02 1b 00 06 49 44 20 54 45 43 48 20 4d 69 6e 69 53 6d 61 72 74 20 49 49 20 56 32 2e 30 30 21 73 03 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 The report s first byte 21 in this example is the...

Page 6: ...1 21 Get Ascii Mask Data 70 52 01 41 Get Baud Rate 72 52 01 22 Get BCD Mask Data 78 46 11 Get Bootloader FW Release Version Internal Command 72 52 01 04 Get Card Type Option 70 52 01 42 Get Data Bits 78 52 01 50 Get Date and Time 78 46 3E Get DUKPT Key KSN 72 46 23 01 Get EMV Level One Version Number 72 46 08 01 Get EMV Level Two Version Number 72 52 01 02 Get Encryption Mode for Data encryption K...

Page 7: ...nufacture Key Internal Command 72 46 4D Power Off 72 46 6E Power On Get ATR 72 46 01 04 Remove All Application Data 72 46 04 04 Remove All CA Public Key List 72 46 85 04 Remove All Certification Revocation List 72 46 01 02 Remove Application Data 72 46 04 02 Remove CA Public Key 72 46 85 02 Remove Certification Revocation List 72 46 02 02 Remove Terminal Data 72 46 0A 02 Remove Transaction Amount ...

Page 8: ...mmand 70 53 01 45 01 Set Stop Bits 72 46 02 03 Set Terminal Data 72 46 87 03 Set Terminal Identification 72 46 05 01 Start Transaction Get DUKPT Key KSN Command Body is 78 46 3E Length of Data KeyNameIndex Length of Key Slot Key Slot Where Length of Data is 2 bytes format is Len_L Len_H is length of KeyNameIndex Length of Key Slot Key Slot KeyNameIndex is 1 byte please refer to below table Length ...

Page 9: ...s loading below Key KeyNameIndex Key Name Definition Key Slot Mode Of Use Key Usage 0x02 Data encryption Key Encrypt ICC 0 B or X B1 0x0C RKI KEK Remote Key Injection 0 X B1 Response Body 15 Error Code 78 46 F3 No LCL KEK 04 00 or LCL KEK STOP 73 00 or other Or 06 78 46 F3 Length of KCV ANS 1 Structure KCV ANS 1 Structure Where Length of KCV ANS 1 Structure is 2 bytes format is Len_L Len_H KCV ANS...

Page 10: ...except Key Loading State If Device implement the function the Real Date Time will be started from 2015 01 01 00 00 00 Implement Self Test function for Non PCI device Command Body is 78 46 50 Response Body is 06 Self Test function successful 15 75 00 Self Test function failed Implementation notes 1 App integrity checking After failure or error device will check 2 times again 2 Bootloader integrity ...

Page 11: ...st 0xFF STOP RKI KEK 0 None 1 Exist 0xFF STOP Get Status for Key Command Body is 78 46 25 Response Body 06 Block Length KeyStatusBlock1 KeyStatusBlock2 KeyStatusBlockN Or 15 Error Code Where Block Length is 2 bytes format is Len_L Len_H is KeyStatusBlock Number KeyStatusBlockX is 4 bytes format is Key Index and Key Name keyslot keystatus Key Index and Key Name is 1 byte Please refer to following t...

Page 12: ...ate Hour Minute Second Item Value Area BCD Code Year 15 99 00 Month 01 12 Date 01 31 Hour 00 23 Minute 00 59 Second 00 59 MAC Length is 1 byte data Fix is 0x00 Response Body is 06 Note After Power On the device the Real Time is starting from 2000 01 01 00 00 00 end to 2100 01 01 00 00 00 User need set the Real Time to implement related transaction The command always valid in IDLE State If current ...

Page 13: ...vice received command in Idle status the waiting time will be reset If IC card is removed the waiting time will be reset Default General Group Default All Command Body is 78 53 00 Response Body is 06 Below Setting should be reset to default value Function Name Default Value Note Remote Key Injection Timeout 120 Seconds Get Internal Firmware Version Command Body is 78 31 Get Internal Version Respon...

Page 14: ...MiniSmart II 13 19200 6 38400 7 115200 9 Response Body is 06 Note Device will use new baud rate after it responds 0x06 Get Baud Rate Command Body is 70 52 01 41 Response Body is 06 70 01 41 01 ASCIIChar ...

Page 15: ...01 ASCIIChar StopBits ASCIIChar 1 1 2 2 Response Body is 06 Get Stop Bits Command Body is 70 52 01 45 Response Body is 06 70 01 45 01 ASCIIChar Default RS232 Group Command Body is 70 53 00 Response Body is 06 Below Setting should be reset to default value Function Name Default Value Baud Rate 38400 Stop Bits 1 Review RS232 Group Command Body is 70 52 00 Response Body is 06 70 04 41 01 Baud Rate 42...

Page 16: ...ssor card It follows the ISO7816 3 power up sequence and returns the ATR as its response Power Off Command Body is 72 46 4D Response Body is 06 Exchange APDU Plaintext Command Body is 72 46 41 C APDU Response Body is 06 00 R APDU Note If Data encryption Key ICC DUKPT Key was not loaded command supported If Data encryption Key ICC DUKPT Key Exist it is Not Supported and response Error Code 6A 00 Ge...

Page 17: ...nal Capability 3 9F 40 05 F0 00 F0 A0 01 Additional Terminal Capability 4 DF 26 01 01 Terminal Supports CRL 5 DF 10 02 65 6E Language 6 DF 11 01 00 Not Support Transaction Log 7 DF 27 01 00 Not support Exception File 8 DF EE 15 01 01 Terminal Support ASI 9 DF EE 16 01 00 Terminal Encrypt Mode 00 DUKPT 01 MK SK 10 DF EE 17 01 07 Terminal Entry Mode for ICC 11 DF EE 18 01 80 Terminal Encrypt Mode fo...

Page 18: ...put the TLV format data refer to the Option Data list Note To all above commands if it can return ACK execute follow steps otherwise repeated it till return ACK Retrieve EMV Level Two Version Number command can be sent all the time Cancel Transaction command can be sent all the time if you want to terminate a transaction offline Online Offline Online Start transaction response Example 06 00 10 00 ...

Page 19: ... 72 46 01 02 LenL LenH 5 16 bytes AID Where LenL LenH is the length of AID Response Body is 06 or 15 ErrorCode Note If AID List does not exist response 15 F2 00 Set Application Data Command Body is 72 46 01 03 LenL LenH 5 16 bytes AID TagCounterL TagCounterH TLV1 TLV2 TLVn Where TagCounterL TagCounterH is the Number of TLV LenL LenH is the length of AID Response Body is 06 or 15 ErrorCode Note If ...

Page 20: ... Set Terminal Data Command Body is 72 46 02 03 TagCounterL TagCounterH TLV1 TLV2 TLVn Where TagCounterL TagCounterH the Number of TLV Response Body is 06 or 15 ErrorCode Note If a TLV format was error response 15 F2 02 Retrieve AID List Command Body is 72 46 03 01 Response Body is 06 NumberL NumberH AID Block 1 AID Block 2 AID Block N Where NumberL NumberH is Number of AID Blocks AID Block format ...

Page 21: ...he public key Its length is specified in the field above Note If CA Key RID does not exist response 15 F2 05 If CA Key Index does not exist response 15 F2 06 Remove CA Public Key Command Body is 72 46 04 02 5 bytes RID 1 byte Index Response Body is 06 Note If CA Key RID does not exist response 15 F2 05 If CA Key Index does not exist response 15 F2 06 Set CA Public Key Command Body is 72 46 04 03 5...

Page 22: ...Body is 72 46 04 04 Response Body is 06 Retrieve CA Public Key List Command Body is 72 46 04 05 Response Body is 06 LenL LenH 5Bytes RID1 1 byte RID1 Index 5Bytes RID2 1 byte RID2 Index 5Bytes RIDN 1 byte RIDN Index Note If any CA Key does not exist response 15 F2 04 Start Transaction Command Body is 72 46 05 01 FallBack TimeOut1 TimeOut2 App Data Where FallBack 1byte 0x01 indicates it supports Fa...

Page 23: ...mmand If any other command was sent it responds 15 F2 0A If timeout occurred response 15 81 00 If a tag is not occurred in the ICC the tag in output TLV list will not occur all the same Amount other amount transaction type must be exist If not terminal will response error code 15 F2 0D For MSR fallback operation the Response Code is 00 07 Attribution is None For MSR whose service code is not 2 or ...

Page 24: ...onal If ComFlag is 0x01 the Data exist If ComFlag is 0x00 the Data does not exist App Data format is TLV V is output tag list Response Body is First return 06 Wait in seconds Second return 06 Response Code Attribution Output TLV Data Where Response Code length is 2Bytes Please refer to Response Code Section Attribution 1 Byte BIT0 Card Type 0 Contact Card BIT2 1 Encryption Mode 00 TDES Mode 01 AES...

Page 25: ...n Number Command Body is 72 46 08 01 Response Body is 06 EMV Common L2 VX YY X YY is version number Fist version number is 1 10 Get Internal EMV Level Two Version Number Command Body is 72 46 08 02 Response Body is 06 EMV Common L2 VX YY ZZZ X YY ZZZ is internal version number Version number is start from 1 10 001 Retrieve Interface Device Serial Number Command Body is 72 46 86 01 Response Body is...

Page 26: ...ove Certification Revocation List Command Body is 72 46 85 02 2 Bytes Length CRL1 CRL2 CRLn 2Byte Length Low byte of length High byte of length CRL format is 5Bytes RID 1Byte CA public key Index 3Bytes Certificate Serial Number Response Body is 06 Set Certification Revocation List Command Body is 72 46 85 03 2 Bytes Length of CRL CRL1 CRL2 CRLn 2Bytes MAC Length Where 2Byte Length of CRL Low byte ...

Page 27: ...ggestion User should load all application data once and not update it Best practice is to remove all application data and load all application data again Then order won t change Get ICC L2 CA Public Key Check Value Command Body is 72 46 09 14 Response Body is 06 32 bytes L2 CA Public Key RID Index Check Value Note 1 CA Public Key format is RID Index 2 Set CA Public Key Order is different the Check...

Page 28: ...D NAK Error Codes LCD display control Output Body is 49 72 01 Len_L of Control Data Len_H of Control Data m bytes Control Data Where m bytes Control Data Display mode 1 byte 1 Menu Display 2 Normal Display get function key 3 Display without key input Do Not Receive Input Data 8 Language Menu Display 16 Clear Screen Do Not Receive Input Data If Mode byte is Clear Screen don t need to send below fie...

Page 29: ...acter in the range of 0x20 0x7f Maximum 16 characters Language Menu Display 2 bytes Language ID EN English default ES Spanish ZH Chinese FR French Message ID 1 byte check LCD Foreign Language Mapping Table 0x1C separator Length Back Light On TimerValue 2 bytes Little endian Back Light On TimerValue in second Little endian all 0 Back Light Off all 0xff Back Light always On Input Body is 72 49 01 AC...

Page 30: ... is 30 seconds Length of Display Message Language 2 bytes Little endian Display Message Language 2 byte EN English default ES Spanish ZH Chinese FR French Length Display Message Control 2 bytes Little endian Display Message Control Line Message 0x1C Line lower 7 bits is for line number Display line number 1 First Line n nth Line Maximum 16 lines The MSB need be 1 is to indicate following message i...

Page 31: ...ion TDES 0x00 AES 0x01 Note ICC Group Task only supports A Fun of Setting Review command except for Default All Review All Response Body is 06 Data encryption Key Data encryption Key ICC DUKPT Key did not exist or 15 6A 00 NAK Unsupported Command Error Code Data encryption Key ICC DUKPT Key existed Get Encryption Mode for Data encryption Key ICC DUKPT Key Command Body is 72 52 01 02 Response Body ...

Page 32: ...the delay time between sending Authenticate Transaction command and receiving ACK Command Body is 72 52 01 2F 01 Response Body is 06 72 01 2F 01 CTL2Interval Where CTL2Interval is 0 no delay or a value in the range 30 100 which means 300 1000 milliseconds Set EMV CT L2 Transaction Interval This is the delay time between command responses during the various phases of the EMV transaction start auth ...

Page 33: ...sponse Body is 06 72 01 20 02 PrePANCtlDataLen PostPANCtlDataLen Set ASCII Mask Data Command Body is 72 53 01 21 01 AsciiMaskData Where AsciiMaskData can be 0x20 0x7E Default is 0x2A Response Body is 06 Get ASCII Mask Data Command Body is 72 52 01 21 Response Body is 06 72 01 21 01 AsciiMaskData Set BCD Mask Data Command Body is 72 53 01 22 01 BCDMaskData Where BCDMaskData can be can be 0x0A 0x0F ...

Page 34: ...ciiMaskData 0x2A BCDMaskData 0x0C Review ICC Group All Setting Command Body is 72 52 00 Response Body is 06 72 07 01 01 Key Type Option 02 01 Encryption Mode Option 04 01 Card Type Option 05 01 L1 Transaction Timeout 20 02 PrePANCtlDataLen PostPANCtlDataLen 21 01 AsciiMaskData 22 01 BCDMaskData Note The one byte followed Task ID 72 is Block Number Data Remote Key Injection Initiate RKL Command Bod...

Page 35: ...1 is 8 bytes data it should be validated 16 bytes Encrypted Data EK1 is encrypted by RKI KEK according to KSN CBC TDES algorithm the IV are 0 Response Body ACK 20 bytes ASCII code KSN of RKI KEK 32 bytes ASCII code Encrypted Data EK2 Or NAK Error Code Where 20 bytes ASCII code KSN of RKI KEK is 10 bytes KSN It is advanced to next KSN Refered as next KSN hereafter 32 bytes ASCII code Encrypted Data...

Page 36: ...after Please see the below detailed algorithm TR 31 Block data format is KBH KBH_OB Optional Block ASCII code Result ASCII code MAC data 2N bytes ASCII code Encrypted Key N bytes Encrypted Key 16 bytes ASCII code MAC data 8 bytes MAC data Response Body ACK 6 bytes ASCII code MAC Result NAK Error Code Where 6 bytes ASCII code MAC Result is 3 bytes MAC Result MAC Result of Key Using 8 16 bytes Key a...

Page 37: ...irmware Check Value Block 3 Package 1 m bytes Data at least 1K bytes Package 2 m bytes Data at least 1K bytes Package N m bytes Data at least 1K bytes Block 4 256 Bytes Random Number Note 1 m value is confirmed by 2 byte data in FM File Format Definition and Get Version From Bootloader Firmware 2 N value is confirmed by 2 byte Package Number data in FM File Format Definition and Calculation from F...

Page 38: ...12 bytes Block 1 Data Version and Device Name and Block 2 Data FM Check Value 2 byte block tail size byte SizeL SizeH It is 256 bytes Random Number 2 byte package size in byte SizeL SizeH The byte size of package m 2 byte Package Numbers NumberL NumberH N 4 bytes Block 3 data First Package Start Address Little Endian Mode Surplus bytes Reserved Block 1 Data 1 This Block data are 256 bytes data 2 T...

Page 39: ...2 The Block data could be Plaintext or Encryption 3 The Encryption mode will be Plaintext Only Firmware RSA Encryption Mode Per 256 bytes data of Plaintext BIN file will be Xor ed 256 bytes BASE Data to be Encrypted Block 3 data So Device need Get Base Data from Special area Per 256 byte received data need be Xor ed 256 bytes BASE Data to be Plaintext Block 3 data Firmware Code Firmware Fix Key En...

Page 40: ...480K data Entering Bootloader Mode 1 Device enters into Bootloader Status method While Device runs in Application IDLE Status Host could send Command Commandy Body 78 46 7A 49 52 46 57 00 00 00 00 00 00 00 00 Master Chip Bootloader 78 46 7A 49 52 46 57 00 00 00 00 00 00 00 01 Slave Chip Bootloader 78 46 7A 49 52 46 57 FF FF FF FF 00 00 00 00 Master Chip Bootloader need be changed 78 46 7A 49 52 46...

Page 41: ... Device Encryption by AES 0x36 PCI Device Encryption by Xored 0x37 Non PCI Device Encryption by Xored Vx yy 7 bytes Ascii Code Data Hex Value of 1 00 is 20 56 31 2E 30 30 20 Package Size_L Package Size_H 2 bytes data m 1K size 00 04 2K size 00 08 Request Package Num_L Request Package Num_H For PCI device Hex Value always 00 00 For Non PCI device Indictor next Package Data requirement 4 bytes Reque...

Page 42: ...PCI Device Device Erase All Application Device response Error Code 0x5031 does not quit Bootloader Status until finish implementing Bootloader function The interval between the command and the response is 20ms 3 seconds Full Commands with Packages Example m 1K N 397 02 05 04 42 00 00 00 00 Block 1 256 bytes data Lrc Sum 03 02 05 04 42 01 00 00 00 Block 2 256 bytes data Firmware Check Value Lrc Sum...

Page 43: ...eed send data from Block 1 Data 0x5036 Firmware check value Error Bootloader need send data from Block 1 Data 0x5037 Device Name Error Bootloader need send data from Block 1 Data 0x5038 Encryption Mode Error No firmware key Bootloader only support plain text upgrade 0x5039 Firmware Address Error Bootloader need send data from Block 1 Data 0x6900 Invalid Command Protocol is right but task ID is inv...

Page 44: ...n Timeout Latest Command is Timeout 0x550A MAC Error 0x550B Key Usage Error 0x550C Mode Of Use Error 0x550F Other Error 0x6000 Save or Config Failed Or Read Config Error Flash Error 0x6200 No Serial Number 0x6900 Invalid Command Protocol is right but task ID is invalid 0x6A00 Unsupported Command Protocol and task ID are right but command is invalid 0x6A01 Unsupported Command Protocol and task ID a...

Page 45: ...n Data does not exist 0xF201 Terminal Data does not exist 0xF202 TLV format is error 0xF203 AID List is full 0xF204 Any CA Key does not exist 0xF205 CA Key RID does not exist 0xF206 CA Key Index it not exist 0xF207 CA Key is full 0xF208 CA Key Hash Value is Error 0xF209 Transaction format error 0xF20A The command will not be processing 0xF20B CRL does not exist 0xF20C CRL number exceed max number ...

Page 46: ...插卡 14 MSG_USE_CHIP_READER USE CHIP READER UTI LECTEUR CHIP USO CHIP LECTOR 使用芯片卡 15 MSG_NOT_ACCEPTED NOT ACCEPTED PAS ACCEPTE DENEGADO 无法接受 16 MSG_PIN_OK GET PIN OK 密码正确 17 MSG_PLEASE_WAIT PLEASE WAIT ATTENDRE POR FAVOR ESPERE 等候中 18 MSG_PROCESSING_ERROR PROCESSING ERROR ERREUR DE TRAITE ERROR PROCESANDO 处理错误 19 MSG_USE_MAGSTRIPE USE MAGSTRIPE USAGE MAGSTRIPE USO DE MAGSTRIPE 使用磁条卡 20 MSG_TRY_AGAI...

Page 47: ...MAGSTRIPE 0x00 0x08 TIME OUT 0x00 0x10 start transaction success 0x00 0x11 MSR Success 0x10 0x01 FILE_ARG_INVALID TERMINATE 0x10 0x02 FILE_OPEN_FAILED TERMINATE 0x10 0x03 FILE_OPERATION_FAILED TERMINATE 0x20 0x01 MEMORY_NOT_ENOUGH TERMINATE 0x30 0x01 SMARTCARD_OK TERMINATE 0x30 0x02 SMARTCARD_FAIL TERMINATE 0x30 0x03 SMARTCARD_INIT_FAILED TERMINATE 0x30 0x04 FALLBACK_SITUATION TERMINATE 0x30 0x05 ...

Page 48: ...x07 APP_SELECTION_RETRY TERMINATE 0x50 0x08 AMOUNT_ERROR_GET TERMINATE 0x50 0x09 CARD_REJECTED TERMINATE 0x50 0x10 AIP_NOT_RECEIVED TERMINATE 0x50 0x11 AFL_NOT_RECEIVED TERMINATE 0x50 0x12 AFL_LEN_OUT_OF_RANGE TERMINATE 0x50 0x13 SFI_OUT_OF_RANGE TERMINATE 0x50 0x14 AFL_INCORRECT TERMINATE 0x50 0x15 EXP_DATE_INCORRECT TERMINATE 0x50 0x16 EFF_DATE_INCORRECT TERMINATE 0x50 0x17 ISS_COD_TBL_OUT_OF_RA...

Page 49: ...OT_PRESENCED TERMINATE 0x50 0x29 ARC_INVALID TERMINATE 0x50 0x30 COMM_NO_ONLINE TERMINATE 0x50 0x31 TRAN_TYPE_INCORRECT TERMINATE 0x50 0x32 APP_NO_SUPPORT TERMINATE 0x50 0x33 APP_NOT_SELECT TERMINATE 0x50 0x34 LANG_NOT_SELECT TERMINATE 0x50 0x35 TERM_DATA_NOT_PRESENCED TERMINATE 0x60 0x01 CVM_TYPE_UNKNOWN TERMINATE 0x60 0x02 CVM_AIP_NOT_SUPPORTED TERMINATE 0x60 0x03 CVM_TAG_8E_MISSING TERMINATE 0x...

Page 50: ..._SUPPORTED 0x60 0x07 CVM_NO_MORE TERMINATE 0x60 0x08 PIN_BYPASSED_BEFORE TERMINATE Error Result Code TERMINATE Note First response byte format Bit 0 if transaction have advice this bit is 1 Bit 1 if transaction have reversal this bit is 1 ...

Page 51: ...m eout_ H Timeout_L need be 120 seconds 3600 seconds 120 sec 78 53 01 01 02 00 78 02 01 00 06 06 06 03 6 3600 sec 78 53 01 01 02 0e 10 02 01 00 06 06 06 03 6 error command 78 53 01 01 02 00 77 02 03 00 15 6B 00 7E 80 0 6 Get Remote Key Injection Timeout 06 78 01 01 02 Timeout_ 78 52 01 01 02 07 00 06 78 01 01 02 0 6 Default General Group Remote Key Injection T 78 53 00 02 01 00 06 06 06 03 6 Set D...

Page 52: ...be 0 6 Default is 4 PostPANCtlDataLen need be 0 4 Default is 4 72 53 01 20 02 00 00 02 01 00 06 06 06 03 6 72 53 01 20 02 06 04 02 01 00 06 06 06 03 6 72 53 01 20 02 07 04 02 03 00 15 6B 00 7E 80 03 6 Get Pre Post Data Len 72 52 01 20 06 72 01 20 02 06 04 6 Set ASCII Mask Data Command Body is 72 53 01 21 01 AsciiMaskData Where AsciiMaskData can be 0x20 0x7E Default is 0x2A 72 53 01 21 01 20 02 01 ...

Page 53: ...3 01 01 01 00 02 01 00 06 06 06 03 6 PIN type Key 72 53 01 01 01 01 02 01 00 06 06 06 03 6 Get Key Type for Data encryption Key ICC DUKPT Key 06 72 01 01 01 Option 72 52 01 01 02 06 00 06 72 01 01 01 0 6 Set Encryption Mode for Data encryption Key ICC DUKPT Key 06 ICC DUKPT Key existed or 15 6A 00 NAK Unsupported Command Error Code ICC DUKPT Key did not exist TDES 72 53 01 02 01 00 02 01 00 06 06 ...

Page 54: ...306 01 01 Key Type Option 02 01 Encryption Mode Option 04 01 Card Type Option 20 02 PrePANCtlDataLen PostPANCtlDataLen 21 01 AsciiMaskData 22 01 BCDMaskData 72 52 00 02 16 00 06 72 06 01 01 00 02 01 FF 04 01 FF 20 02 04 04 21 01 2A 22 01 0C 73 2B 03 6 Key Loading Protocol Get Key Status Account ICC DUKPT Key 0 None 1 Exist 0xFF STOP 78 46 30 02 07 00 06 00 00 00 00 0 6 78 46 25 6 Admin DUKPT Key 0...

Page 55: ...nL LenH is the length of AID Response Body is 06 TagCounterL TagCounterH TLV1 TLV2 TLVn or 15 ErrorCode Where TagCounterL TagCounterH is the number of TLV Note If AID List Application Data does not exist response 15 F2 00 5 9 Remove Application Data Command Body is 72 46 01 02 LenL LenH 5 16 bytes AID Where LenL LenH is the length of AID Response Body is 06 or 15 ErrorCode Note If AID List Applica...

Page 56: ...ponse Body is 06 NumberL NumberH AID Block 1 AID Block 2 AID Block N Where NumberL NumberH is Number of AID Blocks AID Block format is LenL LenH Several bytes AID Where LenL LenH is Length of AID Note If AID List does not exist response 15 F2 00 6 Retrieve CA Public Key Command Body is 72 46 04 01 5 bytes RID 1 byte Index Response Body is 06 5 bytes RID 1 byte Index 1 byte Hash Algorithm 1 byte En...

Page 57: ...lds RID Index Modulus Exponent l Public Key Exponent Actually the real length of the exponent is either one byte or 3 bytes It can have two values 3 Format is 0x00 00 00 03 or 65537 Format is 0x00 01 00 01 l Modulus Length LenL LenH Indicated the length of the next field l Modulus This is the modulus field of the public key Its length is specified in the field above Response Body is 06 Note Per RI...

Page 58: ...6 If a tag is not occurred in the ICC the tag in output TLVlist will not occur all the same 7 Amount other amount trsanction type must be exist If not terminal will response error code 15 F2 0D 8 For MSR operation the Output Data List is MSR data TLVs are not included 9 For MSR fallback operation the Response Code is 00 07 10 For MSR whose service code is not 2 or 6 the Response Code is 00 11 Card...

Page 59: ...inal Test Issuer Authentication Data TLV Tag 91 Scripts TLV Card 704 Tag 71 72 App Data RCTP International Where Maestro T 1Byte ComFlag 0x01 indicate online with host 0x00 indicate 1 920 unable online Visa Credit Data in indicate these data is optional Signature l If ComFlag is 0x01 the Data exist Test Card l If ComFlag is 0x00 the Data does not exist 774 App Data format is TLV V is output tag li...

Page 60: ...onse Body is 06 EMVL2 X YY X YY is version number Fist version number is 1 00 6 Retrieve Interface Device Serial Number Command Body is 72 46 86 01 Response Body is 06 Serial Number Note Set Interface device s serial number EMV serial Number can be set only once 6 Set Interface Device Serial Number Command Body is 72 46 86 03 Serial Number Note Serial Number 8 bytes 0 9 or a z or A Z Response Body...

Page 61: ...RID 1Byte CA public key Index 3Bytes Certificate Serial Number 2Bytes MAC Length is 2 bytes data Fix is 0x00 0x00 Response Body is 06 Note Supported at least CRL number is 30 for a RID 1 CRL 5 9 CRL number is 30 33 Remove All Certification Revocation List Command Body is 72 46 85 04 Response Body is 06 6 Get ICC L2 Kernel Check Value Command Body is 72 46 09 01 Response Body is 06 20 bytes L2 Kern...

Page 62: ...rchant Category Code n4 2 9F16 Merchant Identifier ans 15 15 9F1A Terminal Country Code Default 08 40 n3 2 9F1B Terminal Floor Limit b 4 9F1C Terminal Identification an 8 8 9F1D Terminal Risk Management Data b 1 8 9F1E Interface Device IFD Serial Number Default 31 32 33 34 35 36 37 38 an 8 8 9F21 Transaction Time HHMMSS n6 3 9F22 Certification Authority Public Key Index b 1 9F33 Terminal Capabilit...

Page 63: ... 35 26 36 9F37 Unpredictable Number b 4 9F39 POS Entry Mode Default 07 b 1 9F3A Amount Reference Currency b 4 9F3C Transaction Reference Currency Code n3 2 9F3D Transaction Reference Currency Exponent n1 1 9F40 Additional Terminal Capabilities Default F0 00 F0 A0 01 Byte 1 b1 b2 b3 b4 b5 b6 b7 b8 Meaning 1 x x x x x x x Cash x 1 x x x x x x Goods x x 1 x x x x x Services x x x 1 x x x x Cashback x...

Page 64: ...x Code table 10 x x x x x x x 1 Code table 9 Byte 5 b8 b7 b6 b5 b4 b3 b2 b1 Meaning 1 x x x x x x x Code table 8 x 1 x x x x x x Code table 7 x x 1 x x x x x Code table 6 x x x 1 x x x x Code table 5 x x x x 1 x x x Code table 4 x x x x x 1 x x Code table 3 x x x x x x 1 x Code table 2 x x x x x x x 1 Code table 1 9F40 Additional Terminal Capabilities b 5 9F41 Transaction Sequence Counter n4 8 2 4...

Page 65: ...Mode b 1 DFEE18 MSR Terminal Entry Mode b 1 DFEE19 Online DOL b 1 256 DFEE1A Output data element DFEE1B Authorization Response Code b 8 DFEE1E Contact Terminal Configuration Default F0 DC 3C F0 C2 9E 94 00 Byte 1 b8 b7 b6 b5 b4 b3 b2 b1 Meaning 1 x x x x x x x Key Pad support x 1 x x x x x x LCD support x x 1 x x x x x PIN Pad support x x x 1 x x x x Print Support x x x x 0 x x x RFU x x x x x 0 x...

Page 66: ...ansaction Log DF11 x x x x x 0 x x RFU Exception File DF27 x x x x x x 0 x RFU x x x x x x x 0 RFU Byte 5 b8 b7 b6 b5 b4 b3 b2 b1 Meaning 1 x x x x x x X Terminal action code support x 1 x x x x x x Terminal action code can be change x x 1 x x x x x Terminal action code can be deleted or disable x x x 1 x x x x Default Action code processing before 1st GAC x x x x 1 x x x Default Action code proce...

Page 67: ... x x x 1 x x Internal date management x x x x x x 1 x Reversal Mode 1 Unable go online 2 ARC Error 0 3 Online Approved but reader not approved 1 3 Online Approved but card response AAC x x x x x x x 0 RFU Byte 8 b8 b7 b6 b5 b4 b3 b2 b1 Meaning x x x x x x x x RFU DFEE1F Issuer script device limit Range 0 255 Default 128 b 1 DFEE20 ICC Power on detect waiting time Unit Sec Default 60S b 1 DFEE21 IC...

Page 68: ... and Get ICC L2 CA Public Key Check Value Added command 72 46 50 Implement Self Test function for Non PCI Device New error codes added Miscellaneous typos fixed KT 5 25 2017 Correct miscellaneous grammar and usage problems Update copyright Refer to Universal SDK and download URL 3 15 2018 Add 72 53 01 2F 01 command and the Get version of it 8 2 2019 Added Set Idle Waiting Time 78 53 01 05 01 ...

Reviews: