Cette section décrit les exigences générales de l’ensemble de commandes APDU pour les cartes non conformes ISO14443-4 (appelées cartes de stockage).
commande General-Authenticate
La commande General-Authenticate est utilisée pour effectuer la séquence d’authentification sur un carte MIFARE. Cette commande s’applique uniquement aux cartes MIFARE Mini, Classic 1K et 4K.
General-Authenticate format de commande
Commande
Classe
INS
P1
P2
Lc
Données entrantes
General-Authenticate
0xFF
0x86
0x00
0x00
0x01
Adresse MSB, Adresse LSB, Type de clé A ou B, Numéro de clé
General-Authenticate format de réponse
response
SW1, SW2
commande Get-Data
La commande Get-Data permet de récupérer des informations à partir de la balise/carte NFC sans contact.
Get-Data format de commande
Commande
Classe
INS
P1
P2
L2
Get-Data
0xFF
0xCA
0x00 : Numéro de série du carte (ISO14443-A : UID, ISO14443-B : PUPI, Felica : IDm, Jewel : RID)
0x01 : Octets historiques du carte (Type A : Octets historiques d’ATR, Type B : Réponse ATTRIB)
0x00
0x00
Get-Data format de réponse
response
Sortie des données, SW1, SW2
commande Load-Key
La commande Load-Key est utilisée pour stocker les clés MIFARE dans le pilote. Cette commande s’applique uniquement aux cartes MIFARE Mini, Classic 1K et 4K.
Load-Key format de commande
Commande
Classe
INS
P1
P2
Lc
Données entrantes
Load-Key
0xFF
0x82
Structure de clé
Numéro de clé
0x6
Valeur de clé
Load-Key format de réponse
response
SW1, SW2
Commande Gérer la session
L’implémentation de cette commande doit être conformément à la spécification PCSC.
Gérer le format de commande de session
Commande
Classe
INS
P1
P2
Lc
Données entrantes
Authentification générale
0xFF
0xC2
0x00
0x00
Variable
Objet de données TLV
Les objets de données TLV requis pour être pris en charge par le pilote sont les suivants :
Tag
Objet de données
0x80
Objet de données de version
0x81
Démarrer une session transparente
0x82
Mettre fin à la session transparente
commande Read-Binary
La commande Read-Binary permet de lire des données à partir de la balise/carte NFC sans contact. La commande s’applique uniquement aux cartes de stockage (cartes MIFARE Classic/UL, Felica, ISO15693 et Jewel/Topaz).
Read-Binary format de commande
Commande
Classe
INS
P1
P2
Lc
Données entrantes
Li
Read-Binary
0xFF
0xB0
Adresse MSB
Adresse LSB
Longueur des données dans
Données
Longueur attendue
Read-Binary famille MIFARE
Commande
CIA
INS
P1
P2
Le
UL READ 16
0xFF
0xB0
0x00
0x00 à 0x15
0x10
CL 1k READ 16
0xFF
0xB0
0x00
0x00 à 0x3F
0x10
CL 4k READ 16
0xFF
0xB0
0x00
0x00 à 0xFF
0x10
Read-Binary Famille Jewel
Commande
CIA
INS
P1
P2
Le
LIRE TOUT
0xFF
0xB0
0x00
0x00
0x00
RID
0xFF
0xB0
0x00
0x00
0x06
READ
0xFF
0xB0
Bloquer non
Décalage de bloc
0x01
LECTURE 8
0xFF
0xB0
Bloquer non
0x00
0x08
READ SEG
0xFF
0xB0
0x00
Segment Addr
0x80
Read-Binary famille Felica
Commande
CIA
INS
P1
P2
Lc
Données entrantes
CHECK
0xFF
0xB0
0x00
0x00
Longueur des données dans
Nombre de services, nombre de blocs, liste de blocs
Famille ISO 15693
Commande
CIA
INS
P1
P2
Le
READ
0xFF
0xB0
Numéro de bloc
0x00
0x04
Réponse de la famille ISO 15693
response
Sortie de données, SW1, SW2
Commande d’échange transparent
Format de commande Exchange transparent
Commande
Classe
INS
P1
P2
Lc
Données entrantes
Authentification générale
0xFF
0xC2
0x00
0x01
Variable
Objet de données TLV
Voici les objets de données TLV requis pour transparent Exchange Command à prendre en charge par le pilote pour l’échange transparent de commandes vers des cartes de stockage :
Tag
Objet de données
0x95
Émetteur - Transmettre et recevoir
0x5F46
Minuteur
commande Update-Binary
La commande Update-Binary est utilisée pour écrire des données dans la balise/carte NFC sans contact. La commande s’applique uniquement aux cartes de stockage (cartes MIFARE Classic/UL, Felica, ISO15693 et Jewel/Topaz). Le format de la demande et de la réponse pour la commande est celui décrit ci-dessous.
format de commande Update-Binary
Commande
Classe
INS
P1
P2
Lc
Données entrantes
Update-Binary
0xFF
0xD6
Adresse MSB
Adresse LSB
Longueur des données dans
Données
Update-Binary famille MIFARE
Commande
CIA
INS
P1
P2
Le
UL WRITE 4
0xFF
0xD6
0x00
0x00 à 0x15
0x04
CL 1k WRITE 16
0xFF
0xD6
0x00
0x00 à 0x3F
0x10
CL 4k WRITE 16
0xFF
0xB0
0x00
0x00 à 0xFF
0x10
Update-Binary Famille Jewel
Commande
CIA
INS
P1
P2
Le
WRITE1-E
0xFF
0xD6
Numéro de bloc
Décalage de bloc
0x01
WRITE8-E
0xFF
0xD6
Numéro de bloc
0x00
0x08
Update-Binary famille Felica
Commande
CIA
INS
P1
P2
Le
Données entrantes
UPDATE
0xFF
0xD6
0x00
0x00
Longueur des données entrantes
Nombre de services, Nombre de blocs, Liste de blocs