Vous êtes sur la page 1sur 13

Les cartes puce

Brique ROSE Samuel Tardieu sam@rfc1149.net


cole Nationale Suprieure des Tlcommunications

Samuel Tardieu (ENST)

Les cartes puce

1 / 14

Introduction

Les cartes puce sont de plus en plus rpandues : cartes bancaires ; cartes SIM pour tlphones mobiles ; cartes pour les dcodeurs satellite et cble ; cartes de sant ; cartes didentit et informations biomtriques ; cartes didentication (signature et dchirement) lectronique ; cartes daccs (avec ou sans contact).

Samuel Tardieu (ENST)

Les cartes puce

2 / 14

Les direntes cartes

bande magntique permet de stocker 80 octets de donnes carte mmoire permet de stocker 2 ko de donnes carte puce systme embarqu complet, aucune limitation sur la taille de donnes et la puissance embarque

Samuel Tardieu (ENST)

Les cartes puce

3 / 14

Normes
Plusieurs normes ISO rgissent les cartes puce avec contact : 7816-1 caractristiques mcaniques des cartes 7816-2 emplacement et dimensions des connecteurs lectriques 7816-3 description du protocole de communication entre une carte et le lecteur 7816-4 commandes portables dune carte lautre (systme de chiers par exemple) 7816-5 procdure denregistrement didentiants uniques pour les applications 7816-6 lments portables dune carte lautre 7816-7 commandes dinterrogation SCQL (Structured Card Query Language) 7816-8 commandes portables de scurit
Samuel Tardieu (ENST) Les cartes puce 4 / 14

Caractristiques lectriques
Une carte puce dispose de 8 connecteurs : (ISO7816-2) C1 Vcc C2 RST C3 CLK C4 RFU (Reserved for future use) C5 GND C6 Vpp (anciennes gnrations dEEPROM) C7 I/O (bi-directionnel, en mode half-duplex) C8 RFU (Reserved for future use) Symbole Vcc Icc
Samuel Tardieu (ENST)

Minimum 4,75

Maximum 5,25 200

Unit V mA
5 / 14

Les cartes puce

Utilisation de la carte

La procdure dutilisation de la carte est :


1 2 3 4 5

Connection et activation des contacts par le lecteur Reset de la carte La carte envoie son ATR (Answer To Reset) changes entre le lecteur et la carte, linitiative du premier Dsactivation des connecteurs par le lecteur

Samuel Tardieu (ENST)

Les cartes puce

6 / 14

Activation des contacts

Lactivation des contacts doit suivre la procdure suivante, pour viter dendommager la carte :
1 2 3 4 5

RST est positionn ltat bas Vcc est positionn ltat haut (alimentation de la carte) Le lecteur sapprte recevoir des informations sur la ligne I/O Vpp est positionn ltat de repos CLK fournit une horloge utilisable par la carte

Samuel Tardieu (ENST)

Les cartes puce

7 / 14

Reset de la carte

Answer To Reset La carte doit renvoyer son ATR entre 40 et 40000 cycles dhorloge. La communication dorigine a lieu un dbit de 372/f i , o fi est la frquence dhorloge initiale (entre 1MHz et 5MHz), ou 9600 bits/s (pour une carte disposant de sa propre horloge). Pour une horloge 3,5712MHz, cela correspond 9600 bits/s. Format de lATR :
TS T0 TA1 TB1 TC1 TD1 TA2 TB2 TC2 TD2 ... T1 ... TK TCK

Samuel Tardieu (ENST)

Les cartes puce

8 / 14

Octet TS
TS permet de dterminer : une mesure prcise de la vitesse de transmission la valeur (Vcc ou GND) correspond un 0 ou un 1 lordre des bits (plus signicatif ou moins signicatif dabord) Il existe deux conventions : inverse : le 1 est au niveau bas (A), le bit le plus signicatif est transmis en premier (Z)ZZAAAAAAZ, transmission de 3F directe : le 0 est au niveau haut (Z), le bit le plus signicatif est transmis en dernier(Z)ZZAZZZAAZ, transmission de 3B Start ba bb bc bd be bf bg bh bi ____ _______ ___________ ______ | | | | Z Z Z | | (Z)| A | Z Z | A | or | A A | Z (Z) |___| |___|_A___A___A_|___|___|
Samuel Tardieu (ENST) Les cartes puce 10 / 14

Reste de lATR
Les autres caractres de lATR sont : T0 prsence ou non des caractres TA1, TB1, TC1 et TD1, et nombre des caractres historiques TA1, TB1, TC1, TD1 protocole utiliser et paramtres du protocole (vitesse, temps dattente entre les octets, etc.) ; si TD1 est prsent, TA2, TB2, TC2 et TD2 peuvent tre prsents, etc. T1, T2, ... caractres historiques TCK checksum tel que le xor de tous les caractres (y compris TCK) soit zro Protocoles existants : T=0 protocole de transmission par caractre half-duplex T=1 protocole de transmission par bloc half-duplex
Samuel Tardieu (ENST) Les cartes puce 11 / 14

Format des commandes

Les commandes sont transmises en commenant par 5 octets : CLA classe de linstruction INS instruction P1 paramtre complmentaire P2 paramtre complmentaire L longueur des paramtres (linstruction dtermine le sens, incoming si des donnes sont envoyes la carte, entre 0 et 255, outgoing si des donnes viennent de la carte, entre 1 et 256)

Samuel Tardieu (ENST)

Les cartes puce

12 / 14

Rponses de la carte
La carte peut rpondre de direntes manires : ACK quatre valeurs possibles (INS, INS+1, INS ou INS+1) et dterminent si les octets suivants doivent tre envoys dun coup un par un, et demande ventuellement si Vpp doit passer ltat actif NULL (60) la carte demande un dlai de rexion SW1 (6x ou 9x, sauf 60) la carte envoie ensuite SW2 Valeurs de SW1 SW2 : 90 00 n normale 6E xx classe non supporte 6D xx instruction non supporte 6B xx rfrence incorrecte 67 xx longueur incorrecte 6F 00 pas de diagnostic prcis de lerreur
Samuel Tardieu (ENST) Les cartes puce 13 / 14

Fichiers

ISO7816-4 dnit des commandes pour accder des chiers : les chiers peuvent tre plats, par enregistrements ou cycliques ; la carte supporte la notion de rpertoire courant et de chier courant ; certaines oprations ncessitent une identication par PIN ou par la preuve de possession dune cl (rponse un challenge)

Samuel Tardieu (ENST)

Les cartes puce

14 / 14