Freigeben über


Anforderungen an die Speicherkarte

In diesem Abschnitt werden die allgemeinen APDU-Befehlssatzanforderungen für nicht ISO14443-4 kompatible Karten (als Speicherkarten bezeichnet) beschrieben.

General-Authenticate command

Der Befehl General-Authenticate wird verwendet, um die Authentifizierungssequenz auf einer MIFARE-Karte auszuführen. Dieser Befehl gilt nur für MIFARE Mini-, Classic 1k- und 4k-Karten.

General-Authenticate Befehlsformat

Command Class INS P1 P2 Lc Data In
General-Authenticate 0xFF 0x86 0x00 0x00 0x01 Adresse MSB, Adress-LSB, Schlüsseltyp A oder B, Schlüsselnummer

General-Authenticate Antwortformat

Response
SW1, SW2

Get-Data command

Der befehl Get-Data wird verwendet, um Informationen aus dem kontaktlosen NFC-Tag/der Karte abzurufen.

Get-Data Befehlsformat

Command Class INS P1 P2 L2
Get-Data 0xFF 0xCA 0x00: Seriennummer der Karte (ISO14443-A: UID, ISO14443-B: PUPI, Felica: IDm, Juwel: RID)

0x01: Historische Bytes der Karte (Typ A: Historische Bytes von ATR, Typ B: ATTRIB Antwort)
0x00 0x00

Get-Data Antwortformat

Response
Datenausgang, SW1, SW2

Load-Key command

Der Befehl Load-Key wird verwendet, um MIFARE-Schlüssel im Treiber zu speichern. Dieser Befehl gilt nur für MIFARE Mini-, Classic 1k- und 4k-Karten.

Load-Key Befehlsformat

Command Class INS P1 P2 Lc Data In
Load-Key 0xFF 0x82 Key Structure Key Number 0x6 Key Value

Load-Key Antwortformat

Response
SW1, SW2

Befehl 'Sitzung verwalten'

Die Implementierung dieses Befehls sollte gemäß der PCSC-Spezifikation erfolgen.

Sitzungsbefehlsformat verwalten

Command Class INS P1 P2 Lc Data In
General Authenticate 0xFF 0xC2 0x00 0x00 Variable TLV Data-Objekt

Im Folgenden sind TLV-Datenobjekte erforderlich, die vom Treiber unterstützt werden:

Tag Data Object
0x80 Versionsdatenobjekt
0x81 Transparente Sitzung starten
0x82 Transparente Sitzung beenden

Read-Binary command

Der Befehl Read-Binary dient zum Lesen von Daten aus dem kontaktlosen NFC-Tag/der Karte. Der Befehl gilt nur für Speicherkarten (MIFARE Classic/UL, Felica, ISO15693 und Jewel/Topaz-Karten).

Read-Binary Befehlsformat

Command Class INS P1 P2 Lc Data In Li
Read-Binary 0xFF 0xB0 Address MSB Address LSB Länge der Daten in Data Length expected

Read-Binary MIFARE-Familie

Command CLA INS P1 P2 Le
UL READ 16 0xFF 0xB0 0x00 0x00 zu 0x15 0x10
CL 1k READ 16 0xFF 0xB0 0x00 0x00 0x3F 0x10
CL 4k LESEN 16 0xFF 0xB0 0x00 0x00 zum 0xFF 0x10

Read-Binary Juwelenfamilie

Command CLA INS P1 P2 Le
READ ALL 0xFF 0xB0 0x00 0x00 0x00
RID 0xFF 0xB0 0x00 0x00 0x06
READ 0xFF 0xB0 Block No Block Offset 0x01
READ 8 0xFF 0xB0 Block No 0x00 0x08
READ SEG 0xFF 0xB0 0x00 Segment Addr 0x80

Read-Binary Familie Felica

Command CLA INS P1 P2 Lc Data In
CHECK 0xFF 0xB0 0x00 0x00 Länge der Daten in Anzahl des Diensts, Anzahl der Blöcke, Liste blockieren

ISO 15693-Familie

Command CLA INS P1 P2 Le
READ 0xFF 0xB0 Block Number 0x00 0x04

ISO 15693 family Response

Response
Datenausgang, SW1, SW2

Transparenter Austauschbefehl

Transparentes Austauschbefehlsformat

Command Class INS P1 P2 Lc Data In
General Authenticate 0xFF 0xC2 0x00 0x01 Variable TLV Data-Objekt

Im Folgenden sind die erforderlichen TLV-Datenobjekte für transparenten Exchange-Befehl aufgeführt, die vom Treiber für den transparenten Austausch von Befehlen in Speicherkarten unterstützt werden:

Tag Data Object
0x95 Transceive - Übertragung und Empfang
0x5F46 Timer

Update-Binary command

Der Befehl Update-Binary wird verwendet, um Daten in das kontaktlose NFC-Tag/die kontaktlose NFC-Karte zu schreiben. Der Befehl gilt nur für Speicherkarten (MIFARE Classic/UL, Felica, ISO15693 und Jewel/Topaz-Karten). Das Format der Anforderung und Antwort für den Befehl ist wie unten beschrieben.

Update-Binary Befehlsformat

Command Class INS P1 P2 Lc Data In
Update-Binary 0xFF 0xD6 Address MSB Address LSB Länge der Daten in Data

Update-Binary MIFARE-Familie

Command CLA INS P1 P2 Le
UL WRITE 4 0xFF 0xD6 0x00 0x00 zu 0x15 0x04
CL 1k WRITE 16 0xFF 0xD6 0x00 0x00 0x3F 0x10
CL 4k WRITE 16 0xFF 0xB0 0x00 0x00 zum 0xFF 0x10

Update-Binary Juwelenfamilie

Command CLA INS P1 P2 Le
WRITE1-E 0xFF 0xD6 Block Number Block Offset 0x01
WRITE8-E 0xFF 0xD6 Block Number 0x00 0x08

Update-Binary Familie Felica

Command CLA INS P1 P2 Le Data In
UPDATE 0xFF 0xD6 0x00 0x00 Länge der Daten in Anzahl des Diensts, Anzahl der Blöcke, Liste blockieren

Response format

Command CLA INS P1 P2 Le
WRITE 0xFF 0xD6 Block Number 0x00 0x04