# Carte à puce

Une carte à puce est une carte en matière plastique, en papier ou en carton, de quelques centimètres de côté et moins d'un millimètre d'épaisseur, portant au moins un circuit intégré capable de contenir de l'information. Le circuit intégré (la puce) peut contenir un microprocesseur capable de traiter cette information, ou être limité à des circuits de mémoire non volatile et, éventuellement, un composant de sécurité (carte mémoire). Les cartes à puce sont principalement utilisées comme moyens d'identification personnelle (carte d'identité, carte d'accès aux bâtiments, carte d'assurance maladie, carte SIM) ou de paiement (carte bancaire, porte-monnaie électronique) ou preuve d'abonnement à des services prépayés (carte de téléphone, titre de transport) ; voir ci-dessous. La carte peut comporter un hologramme de sécurité pour éviter la contrefaçon. La lecture (l'écriture) des données est réalisée par des équipements spécialisés, certaines puces nécessitant un contact physique (électrique), d'autres pouvant fonctionner à distance (communication par ondes radio).

## Histoire

Dès 1947, une mémoire portative est décrite par un ingénieur britannique : un substrat en bakélite sur lequel sont imprimées de très fines pistes de cuivre qui, sous l'effet d'un courant important, se volatilisent irréversiblement, créant un effet mémoire. Il est question, à l'époque, de 64 bits.
En 1968, Helmut Gröttrup et Jürgen Dethloff, deux ingénieurs de l'entreprise allemande Giesecke & Devrient, inventent une carte automatique dont le brevet ne sera finalement accordé qu'en 1982.
En 1969, les Américains Halpern, Castrucci, Ellingboe, notamment, contribuent à la genèse de la mémoire portative.
Le premier brevet concernant un dispositif de type carte à puce (mémoire sécurisée) est déposé le 25 mars 1974 par le Français Roland Moreno, qui, par la suite, pour exploiter ce brevet, transforme en SARL la SA Innovatron, elle-même issue d'une association loi de 1901 homonyme née en 1972.
En mars puis mai 1975, Moreno développe par plusieurs certificats d'addition les moyens inhibiteurs revendiqués dans le premier brevet et étend la protection internationalement :
* comparaison interne du code confidentiel ;
* compteur d’erreurs, qui provoque l’autodestruction de la puce en cas de soumission répétée d’un code faux : un code inexact provoque la destruction d'un fusible en mémoire, d'où une surconsommation électrique importante ;
* moyens de traitement ;
* lecture irréversiblement impossible de zones prédéterminées, notamment code confidentiel, clés, etc. ;
* écriture, modification, effacement irréversiblement impossibles de zones prédéterminées de la mémoire.
Ces moyens inhibiteurs prévus dès 1974 n'ont été installés industriellement qu'en 1983. L'agencement d'un circuit intégré ASIC est en effet une lourde opération industrielle qui ne se justifie nullement en l'absence d'un risque de fraude massive.
En décembre 1975, la Compagnie Honeywell Bull, compagnie sous la tutelle de France Télécom, dépose de son côté une demande de brevet pour une carte portative du type carte de crédit également, comprenant au moins un dispositif de traitement de signaux électriques disposé à l’intérieur de la carte. Les Français Bernard Badet, François Guillaume et Karel Kurzweil y sont désignés inventeurs. La protection industrielle sera étendue à onze autres pays.
En 1977, l'Allemand Dethloff dépose un brevet pour une carte à mémoire portative dont les moyens inhibiteurs seraient constitués par un microprocesseur. Ce perfectionnement significatif autorisant un changement de fonctions de la carte par simple reprogrammation (fonderie sur la base d'un masque spécifique). Aujourd'hui, plus des trois quarts des cartes à puce en service sont dotées d'un microprocesseur ou d'un microcontrôleur.
En août 1977, le Français Michel Ugon dépose pour le compte de son employeur Bull un brevet sur une technique comparable, nommée CP8, pour « Circuit Portatif des années 1980 », comportant deux chips : un chip processeur et un chip mémoire, Cette carte intelligente, permet d'assurer un bon niveau de sécurité en implantant des algorithmes cryptographiques. Mais dans cette version bi-puces elle présente une faiblesse évidente, un espionnage du contenu des informations échangées entre le processeur et la mémoire.
En avril 1978, Michel Ugon dépose le brevet SPOM (self programmable only memory) qui réunit en une seule puce, le processeur et la mémoire, et résout le problème de sécurité. Ce qui ne donnera lieu à une activité industrielle qu'à partir du début des années 1990, tout en engendrant le dépôt de plus de 1 200 brevets. Il s'agit de l'application cryptographique la plus répandue dans le monde ce jour.
En 1978, la Direction générale des télécommunications (DGT, qui deviendra France Télécom) organise elle-même la mise au point des prototypes, la réalisation des cartes et des terminaux points de vente, et elle impulse la constitution la même année d'un groupement d'intérêt économique (GIE) intitulé Carte à Mémoire et regroupant autour d’elle dix banques françaises.
En 1979, le géant des services pétroliers Schlumberger entre au capital d’Innovatron, pour 23 %, puis 34 % ; il devient par la suite numéro 1 mondial de la carte à puce, absorbant notamment ses deux plus lourds concurrents français : Solaic en 1997 puis Bull CP8 en 2001. À signaler cependant que, avant ces absorptions, via Innovacom qui lui appartient, France Telecom était entrée en 1989 dans le capital de la société Innovatron et qu’alors l’augmentation de capital opérée lors de la fusion des deux protagonistes avait multiplié par quinze celui-ci (porté à 7,6 millions d’euros).
Des moyens considérables ont été déployés à partir de la fin des années 1970 par Philips, IBM et Siemens pour tenter de faire annuler les brevets de Roland Moreno, en vain.
En 1981, le GIE Carte à Mémoire lance trois expérimentations de la carte à puce, respectivement à Blois avec Bull, Caen avec Philips, et Lyon avec Schlumberger.
La première diffusion massive de la carte à puce auprès du grand public débutera en 1983 avec la mise en place de la Télécarte, une carte à puce destinée à être utilisée dans les cabines téléphoniques françaises.
À la fin des années 1980, le GIE Carte bancaire, qui a succédé au GIE Carte à mémoire, commande 16 millions de cartes CP8, lançant la généralisation de la carte à puce en France en 1992. Ce délai de dix années s'explique par un grave défaut de conception des cartes fabriquées par Bull, qui commence par livrer plusieurs millions de cartes dont le code secret est lisible avec un jouet du commerce : sur ordre des banques, toutes ces cartes (plusieurs millions) sont purement et simplement pilonnées, afin d’éviter le discrédit public de l’ensemble de cette technique.
Les premières puces sécurisées apparaîtront en 1982 (logique câblée) et 1983 (microcontrôleur).
En 1988, Marc Lassus crée Gemplus en France. Cette société fut jusqu'à sa fusion avec Axalto (ex-Schlumberger) en juin 2006, le numéro 1 mondial de la carte à puce, ayant mis en circulation de 1980 à 2006 plus de 6,8 milliards de cartes. Le leader mondial de la carte à puce est depuis Gemalto, devant Oberthur Card Systems et Giesecke & Devrient.
En avril 1998, dépôt du brevet SPOM (Self Programmable One Chip Microprocesseur) par Bull-CP8 inventeur Michel Ugon, lequel couvre toutes les cartes à une seule puce de type microprocesseur : cartes bancaires, carte vitale…
Les banques d'Amérique du Nord attendront, elles, la fin de la période d'exclusivité pour équiper leurs clients (quid de la concurrence ?), en dépit des problèmes de sécurité rencontrés.

## Composition

La puce d'une carte typique est constituée d'un microprocesseur, le plus souvent en 8 bits et fonctionnant à une vitesse de 4 MHz, d'une mémoire morte (ROM) de taille variant entre quelques kilooctets et plusieurs centaines de kilooctets, d'une mémoire vive généralement très petite (256 octets dans le cas d'une carte bancaire B0', 4 096 octets pour la carte d'identité électronique (eID) Belge), et d'une mémoire de stockage de type EEPROM ou Flash.
Les composants des cartes à puce suivent l'évolution générale de l'électronique ; puissance des microprocesseurs (2005 : 32 bits à plus de 10 MHz) et capacité de mémoire (plus de 256 ko de mémoire non volatile EEPROM, 512 ko de mémoire morte), diversité des types de mémoire (mémoire flash de plusieurs mégaoctets dès 2005).
La puce composant peut être accessible :
* par contact : l'interface entre les contacts de la puce et ceux du lecteur est le circuit imprimé doré très mince appelé micromodule. Il est divisé en 8 parties, chacune ayant un rôle précis permettant l'échange des données entre la puce et le lecteur. La puce est quant à elle située sous ces contacts et donc « cachée », c'est à tort que l'on désigne le micromodule comme une « puce » ;
* sans contact : par radiofréquence à courte ou moyenne portée, via une antenne interne dont les spires sont moulées dans l'épaisseur de la carte ;
* par une combinaison des deux précédentes : on parle alors de cartes « combi » ou « dual interface ».

## Carte à puce et systèmes d'exploitation

L’évolution technologique a amené la venue des microprocesseurs dont a bénéficié notamment la carte à puce. Cela lui a permis d’exécuter des tâches plus complexes à l’instar des ordinateurs, lui ouvrant de nouvelles perspectives applicatives et surtout une standardisation avec l'arrivée de système d'exploitation pour carte à puce.

## Fonctionnement

La carte à puce succède :
* aux cartes embossées ;
* aux cartes à codes barres ;
* aux cartes plastiques à pistes magnétiques.
Quatre catégories de carte à puce sont référencées par le Conservatoire National des Arts & Métiers.
Elles se différencient par les moyens de contrôle d'accès et/ou par le mode de communication :
* contrôle d'accès par microprocesseur ou par logique câblée, celle-ci pouvant être élémentaire (moins de 50 portes) ou complexe ;
* communication par contacts et/ou radiofréquences.
La logique à haute intégration est mise en œuvre dans la TV payante, ainsi que dans certaines cartes RFID (multi-application, cryptographie DES, triple DES et RSA).
Les cartes à microprocesseurs, largement les plus répandues de nos jours, sont :
* mono-applicatives, comme les cartes bancaires B0' ou les cartes cryptographiques pour la sécurité informatique exploitant la technologie PKI ;
* multi-applicatives, comme les cartes bancaires Europay Mastercard Visa, ou les cartes SIM des téléphones mobiles.
Actuellement, les cartes à puce comportent le plus souvent un microcontrôleur les rendant actives et permettant des fonctions plus élaborées, en particulier des reconnaissances de clé. Elles comportent principalement une zone mémoire, ainsi que plusieurs dispositifs de calcul destinés (entre autres) à la cryptographie. Ainsi, une fois insérées dans un lecteur, elles se comportent en fait comme un microordinateur capable d'effectuer des traitements d'information.
Un code confidentiel (mot de passe, en anglais Personnal Identification Number) dans la puce, par principe inaccessibles depuis l'extérieur de la carte, est garant de la personnalité, tandis que le chiffrement assure la confidentialité.
Elles sont aujourd'hui particulièrement répandues dans des applications comme les cartes bancaires françaises, les cartes Vitale, mais aussi les cartes SIM (Subscriber Identity Module = Module d'identité d'abonné) utilisées dans les téléphones portables pour l'identification du propriétaire et la sauvegarde d'informations diverses (numéros de téléphone et autres).
Avant d'être remise à la personne qui l'utilisera, une carte à puce est normalement 'personnalisée' électriquement (par l'organisme émetteur) via un encodeur de cartes et un programme informatique (outil de personnalisation), afin d'inscrire dans la puce les informations nécessaires à son utilisation. Par exemple, on inscrira dans une carte bancaire les références bancaires de l'utilisateur, ou dans la carte d'un contrôle d'accès, les autorisations accordées au porteur de la carte. La personnalisation physique de la carte consiste quant à elle à imprimer des données supplémentaires (nom de la personne, photo, etc) sur la carte, par exemple à l'aide d'une imprimante à sublimation, au-dessus d'une pré-impression offset.
On peut considérer à juste titre que les clefs USB, récemment apparues, font partie de la famille des « cartes à puce », en tant qu'objets portatifs dotés d'une mémoire : mais une minorité de ces clefs intègrent une circuiterie protégeant l’accès à la mémoire, contrairement aux cartes à puce proprement dites, dont la caractéristique principale est de protéger les données qu'elles contiennent contre toute intrusion.
Il existe en outre des cartes à puce fonctionnant à distance, par ondes radio. C'est le cas des cartes utilisées dans la norme NFC (ou Cityzi en France). Certaines de ces cartes fonctionnent aussi comme des cartes « classiques » — c'est-à-dire qu'on peut accéder aux données contenues dans la puce à partir d'un lecteur à contacts. Dans ce cas ces cartes sont dites mixtes.
Les cartes à distance (RFID, NFC) possèdent une antenne et un convertisseur de signal associés à la puce. L'antenne perçoit le signal (alternatif) émis à distance par le terminal, et le convertisseur transforme ce signal d'une part en un courant continu qui alimente la puce, d'autre part en un courant alternatif appelé horloge qui sert à synchroniser les échanges de la puce et du terminal dans le temps.
Les cartes de transport Navigo sont un exemple de cartes mixtes.

## Sécurité

La sécurité des cartes à puce repose d'une part sur les techniques matérielles propres, et d'autre part sur la conception d'éléments logiciels spécifiques.

### Sécurité matérielle

Trois familles de vulnérabilités matérielles sont distinguées :

#### Les attaques non invasives

    Les attaques non invasives sont les attaques qui n’entraînent pas la destruction du matériel (c’est-à-dire la carte à puce). Il s'agit ici d'attaques matérielles par exploitation de canaux auxiliaires. Il est par exemple possible d'étudier le temps que met la carte à puce pour traiter une commande particulière, ou la quantité d'énergie qu'elle consomme pour en déduire de l'information sur les données secrètes qu'elle traite.

#### les attaques invasives

    les attaques invasives consistent par exemple à utiliser des acides pour mettre à nu le circuit électronique au cœur de l’activité de la carte à puce. Ainsi, il devient possible, par exemple, d'appliquer des techniques de rétroingénierie ou encore d'installer des sondes pour obtenir une lecture des données manipulées (l'homme de l'art parle de microprobing). Dans ce cas, l'attaque opérée permet effectivement de voler l'information, mais le matériel est détruit.

#### Les attaques semi-invasives

    L'idée est, par exemple, de provoquer délibérément un dysfonctionnement matériel, en perturbant ponctuellement l'alimentation de la carte à puce, ou en utilisant une lumière ultraviolette pour perturber le fonctionnement des transistors. L'homme de l'art parle alors d'une attaque par faute.
En réponse à ces problèmes de sécurité spécifiques, il est possible de distinguer deux sortes de solutions, selon qu'elles reposent sur des procédés entièrement logiciels, ou qu'elles impliquent la conception et l'usage de matériels spécifiques.

### Sécurité logicielle

Dans le contexte des cartes multi-applicatives, le plus simple moyen d’introduire du code malicieux sur une carte est de créer une application impropre et de l’installer sur la carte. Le comportement malveillant de programme permet ensuite d'extraire des données d'autres applications, soit directement en vidant le contenu de la mémoire, soit en dévoyant l'usage de données/objets qu'elles partagent. Différentes techniques matérielles et/ou logicielles peuvent être utilisée pour éviter ce type de problème de sécurité, tel que la vérification de bytecode Java Card, dans le cadre des technologies Java Card.

## Quelques utilisations

* Monétique :
** Carte bancaire : Groupement des Cartes Bancaires CB, nouvelles cartes EMV, etc. ;
** Porte-monnaie électroniques : Octopus à Hong Kong, Moneo en France, Proton en Belgique, Geldkarte en Allemagne, dont la particularité est de servir à la certification de l'âge des clients des distributeurs automatiques de cigarettes.
* Identification :
** Cartes d'identité nationales (eID en Belgique) ;
** E-passeports (août 2006 en France) ;
** Certains badges d’accès à des bâtiments : cartes d'étudiant et/ou de restauration, cartes de lycéen, etc.
* Téléphonie mobile :
** Carte SIM.
* Prépaiement de télécommunications ;
* Secteur santé (par exemple carte Vitale en France, carte SIS en Belgique) ;
* Titres de transport ;
* Sécurité informatique (authentification forte et signature électronique) ; dans ce cas :
** La carte contient un cryptoprocesseur pour la génération des clés et le stockage de la clé privée ;
** La technologie ICP (Infrastructure à clés publiques) est utilisée :
*** Utilisation de la carte à puce pour l'authentification forte au domaine Microsoft (Kerberos PKINIT - Smart Card Logon), applications Web (SSL), VPN ;
*** Signature de documents numérique, d'un flux de données (workflow, etc.).
* Transport routier : les cartes de chronotachygraphe servent de support d'enregistrement des temps de conduite, de travail et de repos et des vitesses sur les véhicules lourds (camions, bus).

## Entreprises dans le domaine de la carte à puce

L'industrie de la carte à puce implique différents acteurs :
* les fondeurs fabriquent le hardware (les puces de silicium) ;
* les encarteurs fabriquent la carte proprement dite en intégrant la puce de silicium dans une carte plastique ;
* les développeurs de système d'exploitation ou d'applets conçoivent les logiciels qui s'exécutent dans la carte à puce elle-même.
Enfin, les fabricants de lecteurs fournissent aux intégrateurs et développeurs d'applications le matériel nécessaire pour s'interfacer avec la carte à puce.

## Marché

Depuis les années 1980, le marché de la carte à puce ne cesse de progresser. En 2011, 6,3 milliards d'unités ont été produites. L'essentiel de la production (75 %) est destiné au marché des télécommunications (dont les cartes SIM pour les téléphones portables), 16 % au paiement (cartes bancaires). On s'attend à une forte croissance de la technologie sans contact (et "dual interface") grâce au dynamisme de NFC.
Quelques données sur le marché français (données Banque de France) :
* On dénombre en 2010, 88,6 millions de cartes à puce à usage bancaire en France (47 millions en 2003) ;
* Le nombre de paiements par carte à puce a dépassé en 2001 celui des règlements par chèque ;
* En 2007, 41,5 % des paiements étaient effectués par carte à puce (25,5 % par chèque).
L'observatoire de la sécurité des paiements de la banque de France produit régulièrement des rapports à ce sujet.

## Normes

Les principaux standards en matière de carte à puce sont le fruit des travaux de l'ISO : la norme ISO/CEI 7816 est découpée en 15 parties, et est complétée par la norme ISO/CEI 14443 pour les communications sans contact.
D'autres technologies apparaissent rapidement, et d'autres organismes de normalisation interviennent. Citons :
* ETSI : pour les téléphones mobiles ;
* EMVCo : consortium bancaire regroupant Visa, MasterCard et JCB ;
* ECMA : pour la communication en champ proche (NFC), depuis normalisée par l'ISO CEI 18092 et CEI 21481.
La capacité des cartes à puce évoluant (1 gigaoctet), des protocoles de communication rapides apparaissent : USB (dont USB-Inter chip) et MMC/SD.
Les besoins de communication sans contact des téléphones mobiles ont pour leur part donné naissance aux protocoles SWP (Single Wire Protocol et NFC-Wi, qui décrivent le lien entre la carte à puce (UICC) et le composant chargé des communications sans contact (contactless front end, CFE).