BenutzerhandbuchInhaltsverzeichnis1. Introduction61.1. Abstract61.2. Supported products61.3. Related documents8a. End users8b. Integrators81.4. Audience81.5. Support and updates81.6. Useful links92. PC/SC, smartcards and NFC: quick introduction and glossary102.1. Smart-card and contactless smartcards standards102.2. PC/SC11a. PC/SC and a contact smartcard11b. PC/SC and a contactless smartcard122.3. Non-7816-4 contactless cards – introducing the embedded APDU interpreter12a. Role of the embedded APDU interpreter132.4. NFC ?132.5. Vendor-specific features – direct control of the coupler142.6. Glossary – useful terms153. Embedded APDU interpreter193.1. Basis193.1.1. CLA byte of the embedded APDU interpreter19a. Changing the CLA byte of the embedded APDU interpreter19b. Disabling the embedded APDU interpreter193.1.2. Status words returned by the embedded APDU interpreter203.1.3. Embedded APDU interpreter instruction list213.2. Instructions defined by the PC/SC standard (v2 part 3)223.2.1. GET DATA instruction223.2.2. LOAD KEY instruction243.2.3. GENERAL AUTHENTICATE instruction263.2.4. READ BINARY instruction283.2.5. UPDATE BINARY instruction303.3. SpringCard-specific instructions for the contactless slot323.3.1. MIFARE CLASSIC READ instruction32a. MIFARE CLASSIC READ using coupler’s keys32b. MIFARE CLASSIC READ selecting a key in the coupler33c. MIFARE CLASSIC READ with specified key333.3.2. MIFARE CLASSIC WRITE instruction34a. MIFARE CLASSIC WRITE using coupler’s keys34b. MIFARE CLASSIC WRITE selecting a key in the coupler35c. MIFARE CLASSIC WRITE with specified key353.3.3. MIFARE CLASSIC VALUE instruction37a. MIFARE CLASSIC VALUE using coupler’s keys37b. MIFARE CLASSIC VALUE selecting a key in the coupler38c. MIFARE CLASSIC VALUE with specified key393.3.4. RFID MEMORY CONTROL instruction40a. Read Single Block40b. Write Single Block40c. Lock Block41d. Read Multiple Blocks41e. Write Multiple Blocks41f. Write AFI41g. Lock AFI42h. Write DSFID42i. Lock DSFID42j. Get System Information42k. Get Multiple Block Security433.3.5. CONTACTLESS SLOT CONTROL instruction443.3.6. SET FELICA RUNTIME PARAMETERS instruction45a. SERVICE CODE for the READ BINARY instruction45b. SERVICE CODE for the UPDATE BINARY instruction46c. SERVICE CODE for both READ BINARY and UPDATE BINARY instructions46d. SYSTEM CODE and REQUEST code for Felica polling463.3.7. ENCAPSULATE instruction for the Contactless slot473.3.8. ENCAPSULATE instruction for one of the Contact slots513.4. Other SpringCard-specific instructions523.4.1. READER CONTROL instruction52a. Driving coupler’s LEDs52b. Driving coupler’s buzzer53c. Others533.4.2. TEST instruction544. Working with contactless cards – useful hints564.1. Recognizing and identifying PICC/VICC in PC/SC environment564.1.1. ATR of an ISO 14443-4 compliant smartcard56a. For ISO 14443-A:56b. For ISO 14443-B:56c. For Innovatron (legacy Calypso cards):574.1.2. ATR of a wired-logic PICC/VICC584.1.3. Using the GET DATA instruction594.1.4. Contactless protocol594.1.5. Contactless card name bytes604.2. ISO 14443-4 PICCs624.2.1. Desfire first version (0.4)624.2.2. Desfire EV0 (0.6) and EV1624.2.3. Calypso cards624.3. Wired-logic PICCs based on ISO 14443-A634.3.1. Mifare Classic63a. READ BINARY instruction63b. UPDATE BINARY instruction64c. Specific instructions for Mifare Classic644.3.2. Mifare Plus X and Mifare Plus S65a. Level 065b. Level 165c. Level 265d. Level 3664.3.3. NFC Forum Type 2 Tags – Mifare UltraLight and UltraLight C, NTAG203...67a. READ BINARY instruction67b. UPDATE BINARY instruction68c. Mifare UltraLight C 3-DES authentication684.3.4. NFC Forum Type 1 Tags – Innovision/Broadcom chips69a. Memory Structures69b. READ BINARY instruction70Using the RALL or RSEG functions is a lot faster than using READ/READ8 in a loop.70c. UPDATE BINARY instruction714.4. Wired-logic PICCs based on ISO 14443-B724.4.1. ST Micro Electronics SR17672a. READ BINARY instruction72b. UPDATE BINARY instruction724.4.2. ST Micro Electronics SRI4K, SRIX4K, SRI512, SRX512, SRT51273a. READ BINARY instruction73b. UPDATE BINARY instruction734.4.3. Inside Contactless PicoPass, ISO 14443-2 mode74a. READ BINARY instruction74b. UPDATE BINARY instruction74c. Page select744.4.4. Inside Contactless PicoPass, ISO 14443-3 mode75a. READ BINARY instruction75b. UPDATE BINARY instruction754.4.5. Atmel CryptoRF76a. READ BINARY instruction76b. UPDATE BINARY instruction764.5. ISO 15693 VICCs774.5.1. ISO 15693-3 read/write commands77a. READ BINARY instruction77b. UPDATE BINARY instruction774.5.2. Read/write commands for ST Micro Electronics chips with a 2-B block address784.5.3. Complete ISO 15693 command set784.5.4. Implementation of basic ISO 15693 commands79a. Read single block79b. Write single block79c. Lock block80d. Write AFI80e. Lock AFI80f. Write DSFID80g. Lock DSFID80h. Get system information804.6. Other non-ISO PICCs824.6.1. NFC Forum Type 3 Tags / Felica82a. READ BINARY instruction82b. UPDATE BINARY instruction (single byte)824.7. Other non-ISO VICCs834.7.1. EM413483a. READ BINARY instruction83b. UPDATE BINARY instruction83c. Lock835. Using the H663 with a NFCIP-1 target845.1. Introduction845.1.1. Functions performed by the coupler845.1.2. Functions to be implemented on the PC855.2. Mapping of the NFC functions into PC/SC functions855.2.1. ATR of an ISO 18092 target855.2.2. Using SCardTransmit (ENCAPSULATE) to exchange PDUs865.3. Advanced features865.3.1. Changing the GI bytes in the ATR_REQ866. Direct control of the H663886.1. Basis886.2. Implementation details886.2.1. Sample code886.2.2. Link to SpringProx legacy protocol906.2.3. Format of response, return codes906.2.4. Redirection to the Embedded APDU Interpreter906.3. List of available control sequences916.3.1. Action on the LEDs91a. Setting the coupler's LEDs manually91b. Going back to default (LEDs managed by the coupler's firmware)916.3.2. Action on the buzzer92a. Starting/stopping the buzzer92b. Going back to default (buzzer managed by the coupler's firmware)926.3.3. Obtaining information on coupler and slots93a. Coupler “product-wide” information93b. Slot related information936.3.4. Stopping / starting a slot94a. Stopping a slot94b. Starting a slot946.3.5. Forced insert/remove sequences95a. Card insertion95b. Card remove956.3.6. Reading/writing H663's configuration registers96a. Reading coupler’s registers96b. Writing coupler’s registers966.3.7. Pushing a new temporary configuration977. Configuration registers987.1. Editing coupler's configuration987.1.1. By software987.1.2. Using SpringCard MultiConf software987.2. List of the configuration registers available to the end-user or integrator997.3. Core configuration1007.3.1. Configuration of the LEDs1007.3.2. Options for the LEDs and GPIOs1017.3.3. Behaviour of the LEDs and buzzer1017.4. PC/SC configuration1027.4.1. Slot naming and startup mode1027.4.2. CLA byte of APDU interpreter1027.4.3. Behaviour of the contactless slot in PC/SC mode1037.5. Contactless configuration1047.5.1. Enabled protocols1047.5.2. Parameters for polling1057.5.3. Options for polling1067.5.4. Allowed baudrates in T=CL (ISO 14443-4)1077.5.5. Options for T=CL (ISO 14443-4)1087.5.6. Number of antennas + auto-stop1087.6. Felica configuration1097.6.1. Service Codes for Felica read/write1097.7. ISO 18092 / NFC-DEP configuration1107.7.1. Global Bytes in ATR_REQ1107.8. ISO 7816 configuration1117.8.1. Options for the smartcard slots1118. Annex A – Specific error codes1129. Annex B – activating SCardControl with the different drivers1149.1. Direct control using SpringCard SDD4801149.2. Direct control using MS USBCCID1149.3. Direct control using MS WUDFUsbccidDriver1159.4. Direct control using PCSC-Lite CCID11610. 3rd-party licenses11710.1. FreeRTOS117Größe: 851 KBSeiten: 118Language: EnglishHandbuch öffnen