Anforderungen an speicher Karte

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

befehl General-Authenticate

Der Befehl General-Authenticate wird verwendet, um die Authentifizierungssequenz für eine MIFARE-Karte auszuführen. Dieser Befehl gilt nur für MIFARE Mini-, Klassische 1K- und 4K-Karten.

General-Authenticate-Befehlsformat

Get-Help Klasse EINFG P1 P2 Lc Eingehende Daten
General-Authenticate 0xFF 0x86 0x00 0x00 0x01 Adresse MSB, Adresse LSB, Schlüsseltyp A oder B, Schlüsselnummer

General-Authenticate Antwortformat

Antwort
SW1, SW2

befehl Get-Data

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

Get-Data-Befehlsformat

Get-Help Klasse EINFG P1 P2 L2
Get-Data 0xFF 0xCA 0x00: Seriennummer der Karte (ISO14443-A: UID, ISO14443-B: PUPI, Felica: IDm, Jewel: RID)

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

Get-Data Antwortformat

Antwort
Datenaus, SW1, SW2

befehl Load-Key

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

Load-Key-Befehlsformat

Get-Help Klasse EINFG P1 P2 Lc Eingehende Daten
Load-Key 0xFF 0x82 Schlüsselstruktur Schlüsselnummer 0x6 Schlüsselwert

Load-Key Antwortformat

Antwort
SW1, SW2

Befehl "Sitzung verwalten"

Die Implementierung dieses Befehls sollte der PCSC-Spezifikation entsprechen.

Verwalten des Sitzungsbefehlsformats

Get-Help Klasse EINFG P1 P2 Lc Eingehende Daten
Allgemeine Authentifizierung 0xFF 0xC2 0x00 0x00 Variable TLV-Datenobjekt

Die folgenden TLV-Datenobjekte müssen vom Treiber unterstützt werden:

Tag Datenobjekt
0x80 Versionsdatenobjekt
0x81 Starten einer transparenten Sitzung
0x82 Beenden der transparenten Sitzung

befehl Read-Binary

Der Befehl Read-Binary wird verwendet, um Daten aus dem kontaktlosen NFC-Tag/-Karte zu lesen. Der Befehl gilt nur für Speicherkarten (MIFARE Classic/UL, Felica, ISO15693 und Jewel/Topaz Karten).

Read-Binary-Befehlsformat

Get-Help Klasse EINFG P1 P2 Lc Eingehende Daten Li
Read-Binary 0xFF 0xB0 Adresse MSB Adresse LSB Länge der Daten in Daten Erwartete Länge

Read-Binary MIFARE-Familie

Get-Help CLA EINFG P1 P2 Le
UL READ 16 0xFF 0xB0 0x00 0x00 zu 0x15 0x10
CL 1K READ 16 0xFF 0xB0 0x00 0x00 zu 0x3F 0x10
CL 4K READ 16 0xFF 0xB0 0x00 0x00 zu 0xFF 0x10

Read-Binary Juwelenfamilie

Get-Help CLA EINFG P1 P2 Le
ALLE LESEN 0xFF 0xB0 0x00 0x00 0x00
RID 0xFF 0xB0 0x00 0x00 0x06
READ 0xFF 0xB0 Block Nein Blockoffset 0x01
READ 8 0xFF 0xB0 Block Nein 0x00 0x08
LESEN VON SEG 0xFF 0xB0 0x00 Segment-Addr 0x80

Read-Binary Familie Felica

Get-Help CLA EINFG P1 P2 Lc Eingehende Daten
CHECK 0xFF 0xB0 0x00 0x00 Länge der Daten in Anzahl des Diensts, Anzahl der Blöcke, Blockliste

ISO 15693-Familie

Get-Help CLA EINFG P1 P2 Le
READ 0xFF 0xB0 Blocknummer 0x00 0x04

Antwort der ISO 15693-Familie

Antwort
Datenaus, SW1, SW2

Befehl "Transparent exchange"

Transparentes Exchange-Befehlsformat

Get-Help Klasse EINFG P1 P2 Lc Eingehende Daten
Allgemeine Authentifizierung 0xFF 0xC2 0x00 0x01 Variable TLV-Datenobjekt

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

Tag Datenobjekt
0x95 Transceive – Senden und Empfangen
0x5F46 Timer

befehl Update-Binary

Der befehl Update-Binary wird verwendet, um Daten in das kontaktlose NFC-Tag/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

Get-Help Klasse EINFG P1 P2 Lc Eingehende Daten
Update-Binary 0xFF 0xD6 Adresse MSB Adresse LSB Länge der Daten in Daten

Update-Binary MIFARE-Familie

Get-Help CLA EINFG P1 P2 Le
UL WRITE 4 0xFF 0xD6 0x00 0x00 zu 0x15 0x04
CL 1k WRITE 16 0xFF 0xD6 0x00 0x00 zu 0x3F 0x10
CL 4k WRITE 16 0xFF 0xB0 0x00 0x00 zu 0xFF 0x10

Update-Binary Juwelenfamilie

Get-Help CLA EINFG P1 P2 Le
WRITE1-E 0xFF 0xD6 Blocknummer Blockoffset 0x01
WRITE8-E 0xFF 0xD6 Blocknummer 0x00 0x08

familie felica Update-Binary

Get-Help CLA EINFG P1 P2 Le Eingehende Daten
UPDATE 0xFF 0xD6 0x00 0x00 Länge der Daten in Anzahl des Diensts, Anzahl der Blöcke, Blockliste

Antwortformat

Get-Help CLA EINFG P1 P2 Le
WRITE 0xFF 0xD6 Blocknummer 0x00 0x04