Ceci est une ancienne révision du document !
Smart cards sous Linux
Présentation
Les Smart cards (carte à puce, carte sans contact…) sont des cartes intelligentes qui embarque un microcontrôleur ou un microprocesseur. Le nombre d'application est illimité.
Les exemples les plus populaire de smartcard sont les cartes de paiement, les cartes vitales, les cartes de transport ou encore les cartes de fidélité distribué en grande surface.
Interface de communication
L'utilisation d'une Smart Card requiert l'installation sur la machine d'un lecteur de carte et une interface de communication.
PC/SC (Personal computer/Smart Card)
Personal computer/Smart Card (ou PC/SC) est une bibliothèque logicielle pour l'accès à des cartes à puce sous Microsoft Windows. Une implémentation libre de PC/SC, appelée PC/SC Lite, est disponible sous GNU/Linux et distribuée avec Mac OS X. La spécification de cette bibliothèque est faite par le PC/SC Workgroup, composé de grands fabricants de carte à puce ou d'ordinateur. Son but est d'assurer une base standard de commandes pour permettre une meilleure interopérabilité entre PC, lecteurs de carte et les cartes à puce elles-mêmes. (Wikipédia)
Installation
La gestion des lecteurs PC/SC n'est pas natif sous Linux, mais peut être très facilement ajouté par l'installation des paquets pcscd,libpcsclite1 qui installe respectivement le démon PC/SC et la bibliothèque de communication :
sudo apt-get install pcscd libpcsclite1
Par la suite suivant votre lecteur, il vous faudra installer le driver PC/SC adéquate. Un certain nombre est déjà fourni dans les dépôts Ubuntu. A vous d'installer celui correspondant à votre périphérique.
$> apt-cache search "PC/SC driver" libacr38u - PC/SC driver for the ACR38U smart card reader libasedrive-serial - PC/SC driver for the Athena ASEDrive IIIe serial smart card reader libasedrive-usb - PC/SC driver for the Athena ASEDrive IIIe USB smart card reader libccid - PC/SC driver for USB CCID smart card readers libgcr410 - PC/SC driver for GemPlus GCR410 serial SmartCard interface libgempc410 - PC/SC driver for the GemPC 410, 412, 413 and 415 smart card readers libgempc430 - PC/SC driver for the GemPC 430, 432, 435 smart card readers pcsc-omnikey - PC/SC driver for Omnikey Cardman Smartcard readers (binary-only)
Le paquet libccid installé par défaut avec pcscd est le driver PC/SC pour le standard CCID. Il permet la reconnaissance d'un grand nombre de lecteurs génériques basés sur ce standard.
Test
Pour vérifier que tout fonctionne, vous pouvez utiliser l'outil pcsc_scan du paquet pcsc-tools.
sudo apt-get install pcsc-tools pcsc_scan
Celui vous listera les lecteurs reconnu et les cartes détectés sur ceux-ci avec quelques informations supplémentaires.