FR 2731818 A1 19960920 FR 9503155 A 19950317 LECTEUR PORTATIF POUR CARTE A PUCE L'invention concerne les cartes à puces et leurs lecteurs. Dans leur utilisation habituelle, les cartes à puces sont insérées dans un lecteur placé à poste fixe : chez un commerçant comme terminal de paiement (ou de contrôle de validité du moyen de paiement) ou dans un distributeur de biens ou de services (distributeur de billets, cabine téléphonique, etc.) ou encore à un poste de contrôle d'accès. Mais de nouvelles applications des cartes à puces nécessiteront des lecteurs portatifs. Par exemple il a déjà été envisagé d'utiliser des lecteurs portatifs pour des applications de porte-monnaie électronique toute personne pourrait posséder non seulement une carte à puce chargée d'une valeur monétaire décrémentable au fur et à mesure de l'utilisation, mais aussi un lecteur de carte permettant d'effectuer des transactions entre deux cartes. La présente invention a pour objet un nouveau type de lecteur de carte portatif, pouvant avoir plusieurs fonctions principales qui peuvent être - connaissance du contenu de la carte, tout au moins d'un contenu dont l'accès est autorisé, par exemple le solde de la valeur monétaire de la carte; - lecture du contenu de la carte et mémorisation, dans le lecteur, des contenus successifs de la carte après chaque opération (contenus que la carte ne pourrait mémoriser vu sa faible capacité de mémoire, ou du fait qu'elle ne comporte pas un logiciel apte à le faire); - dialogue avec un lecteur principal (c'est-à-dire en pratique un lecteur non portatif, à poste fixe, relié ou non à un centre de gestion). L'originalité principale de ce lecteur portatif réside dans la manière dont peut être réalisé ce dialogue avec un autre lecteur : selon l'invention, le lecteur portatif réalise en effet une fonction d'émulation d'une carte à puce; dans le mode émulation, le lecteur comporte une partie saillante agencée comme une carte à puce, partie qui peut être introduite directement dans un lecteur de carte à puce classique (du type qui n'avale pas complètement la carte) qu'on peut appeler "lecteur principal". Ainsi introduit dans le lecteur principal, le lecteur portatif peut dialoguer avec le lecteur principal comme s'il était une carte à puce introduite dans ce lecteur principal; il peut fournir des informations au lecteur principal ou en recevoir des informations. Pour cela, le lecteur portatif est de préférence composé de deux parties distinctes - le lecteur proprement dit, avec une fente d'insertion de carte et des contacts électriques agencés pour pouvoir se connecter aux contacts d'une carte insérée dans la fente, - une carte d'interface pouvant être introduite dans la fente et comportant une partie saillante en forme de carte à puce, dépassant à l'extérieur de cette fente et pouvant être introduite dans un autre lecteur. Par conséquent, selon un aspect général, l'invention propose un lecteur de carte à puce comportant une fente d'insertion de carte pour recevoir une carte à puce et échanger des informations avec elle, et une partie agencée comme une carte à puce et pouvant être introduite dans un autre lecteur de carte pour permettre l'échange d'informations entre les deux lecteurs. Et de préférence la partie agencée comme une carte à puce est une première partie d'une carte d'interface amovible dont une deuxième partie est insérée dans la fente d'insertion, la première partie et la deuxième partie comportant chacune des contacts à des positions normalisées par rapport aux bords de la carte, chaque contact d'une partie étant relié électriquement à un contact respectif correspondant de l'autre partie. Les contacts de l'un des ensembles sont à l'extérieur du lecteur lorsque les contacts de l'autre sont en place à l'intérieur de la fente d'insertion. La carte d'interface a de préférence des ~dimensions normalisées de carte à puce, à l'exception de la longueur qui est plus grande afin qu'une extrémité de la carte puisse être insérée dans le lecteur portatif pendant que simultanément une autre extrémité est insérée dans un autre lecteur. Le lecteur comporte de préférence un microprocesseur et des programmes exécutables par ce microprocesseur, les programmes comportant des premiers programmes permettant le fonctionnement autonome en mode lecteur, dans lequel le lecteur portatif est martre et une carte insérée dans le lecteur est esclave, et des deuxièmes programmes permettant un fonctionnement en mode dit "mode-émulation", dans lequel le lecteur est esclave et simule le fonctionnement d'une carte à puce insérable dans un autre lecteur, maître. D'autres caractéristiques et avantages de l'invention apparaîtront à la lecture de la description détaillée qui suit et qui est faite en référence aux dessins annexés dans lesquels: - la figure 1 représente une vue générale du lecteur portatif selon l'invention; - la figure 2 représente un organigramme de fonctionnement du lecteur pour le passage d'un mode de fonctionnement à l'autre. Le lecteur selon l'invention est représenté à la figure 1. I1 comporte deux parties 10 et 20. La première partie 10 constitue à elle seule un lecteur autonome comportant les éléments nécessaires et suffisants pour lire le contenu d'une carte (dans la mesure des autorisations données lors de la fabrication de la carte : certaines zones contenant des données confidentielles peuvent rester inaccessibles). La partie 10 comporte notamment un logement 12 pour une pile ou une batterie 14, des circuits électroniques à microprocesseur et mémoires, non représentés, une fente 16 d'insertion de carte à puce, des contacts électriques (non visibles) à l'intérieur de la fente, pour la connexion électrique avec une carte à puce insérée à fond dans la fente, ces contacts étant reliés aux circuits électroniques du lecteur.La partie 10 peut également contenir d'autres éléments facultatifs tels qu'un moyen de détection de l'insertion ou du retrait d'une carte, des moyens de verrouillage d'une carte introduite dans la fente, un élément 18 d'affichage d'informations fournies par le lecteur, éventuellement un clavier permettant un dialogue hommemachine, ou des touches et poussoirs de commande 15. Les circuits électroniques de la partie 10 peuvent comprendre une horloge donnant le temps réel et fournissant des signaux rythmant le fonctionnement du microprocesseur. Un organe sonore ("buzzer") 17 peut également être prévu pour signaler des types de fonctionnement ou de dysfonctionnement spécifiques. L'autre partie 20 du lecteur portatif est une carte d'interface plane, ayant les mêmes dimensions qu'une carte à puce pouvant être insérée dans le lecteur, à l'exception de la longueur qui est plus grande, de sorte que la carte d'interface déborde largement à l'extérieur du lecteur lorsqu'elle est introduite dans la fente d'insertion 16 à la place d'une carte à puce. La carte d'interface 20 comporte deux ensembles de contacts à des positions normalisées de la carte (norme ISO 7816 à ce jour). L'un des ensembles 22 vient en contact avec les contacts internes du lecteur lorsque la carte d'interface est introduite dans le lecteur. L'autre ensemble 24 est alors situé sur la partie saillante de la carte d'interface, à l'extérieur du lecteur, et à une position relative (par rapport aux bords de la carte) telle que la partie saillante simule une carte à puce classique et peut être introduite dans un lecteur de carte (du type qui ne nécessite pas l'introduction complète de la carte). Les contacts de la carte d'interface sont désignés par Cl à C8 pour l'ensemble 24 et par C'1 à C'8 pour l'autre ensemble 22. Les contacts sont reliés deux à deux (C1 relié à C'1, C2 à C'2, etc.) par des connexions conductrices non visibles, de préférence noyées dans la matière plastique constituant la carte d'interface 20. Le fonctionnement du lecteur se fait selon deux modes. Dans le premier mode, ou "mode-lecteur" la carte d'interface 20 n'est pas utilisée. Le lecteur peut recevoir une carte à puce 30; les circuits électroniques du lecteur, alimentés par la batterie 14, sont conçus pour fournir le protocole de signaux électriques nécessaires au dialogue avec la carte. Les programmes (P1) stockés en mémoire non volatile (mémoire morte ou mémoire réinscriptible) comportent des instructions nécessaires à ce dialogue, comme dans un lecteur classique. De préférence, lorsqu'une carte est introduite dans le lecteur, un programme automatique de dialogue se déroule. Ce programme peut comporter par exemple une lecture systématique du dernier contenu de la carte à puce et une mise en mémoire non volatile de ce contenu dans le lecteur (sans effacement des contenus précédemment enregistrés).Ceci permet de garder une information sur les transactions précédemment effectuées à l'aide de la carte. Pour exécuter automatiquement ce programme au moment de l'insertion d'une carte on prévoira que le lecteur est équipé d'un détecteur d'insertion de carte non représenté (contact électrique fermé par l'insertion de la carte). On peut prévoir aussi que l'extraction de la carte déclenche automatiquement un programme approprié dans le lecteur : ce programme peut par exemple simplement mémoriser le fait que la carte est sortie. Ce type de programme peut être utile lorsque la carte ne doit être utilisée que de manière limitée : le stockage d'une information relative à l'extraction de la carte permet ensuite de vérifier les utilisations de la carte. Le lecteur peut servir de logement permanent pour le transport d'une carte à puce. En effet, le lecteur est plat et léger et peut être transporté dans une poche de son propriétaire. I1 peut alors servir de logement protecteur pour une carte à puce possédée par le titulaire. Le déversement du nouveau contenu de la carte se fait ainsi chaque fois que le propriétaire la remet dans son étui-lecteur. Dans ce mode dit "mode-lecteur", la communication entre la carte et le lecteur peut être exécutée en partie sous contrôle des boutons ou touches (15) présentes sur le lecteur, et des données peuvent être affichées sur l'élément d'affichage 18. On peut ainsi par exemple afficher le dernier contenu de la carte, mais aussi retrouver les contenus précédents mémorisés dans le lecteur. L'autre mode de fonctionnement du lecteur est le "mode-emulation". La carte d'interface 20 est insérée dans le lecteur à la place d'une carte à puce standard. Cette insertion peut déclencher le déroulement d'autres programmes internes exécutables (P2), différents des programmes (P1) exécutables du mode-lecteur. En effet, le mode émulation sert non plus à un dialogue entre le lecteur portatif et la carte où le lecteur est maître et la carte esclave, mais à un dialogue entre le lecteur portatif (qui devient esclave) et un autre lecteur maître. Un système de verrouillage est de préférence prévu pour rendre la carte d'interface 20 solidaire du lecteur portatif 10. Une touche de verrouillage peut être prévue à cet effet parmi les touches 15. Un détecteur de présence de carte d'interface peut être prévu dans le lecteur portatif. Ce peut être un contacteur mis dans un premier état par la présence de la carte d'interface et dans un deuxième état en l'absence de la carte. Ce détecteur ne serait pas activé par une carte à puce standard telle que la carte 30. On peut prévoir aussi que le déroulement des programmes du lecteur portatif est déclenché par l'activation d'une touche par l'utilisateur, ou encore par une horloge périodique interne qui "réveille" périodiquement le microprocesseur pour lui faire exécuter un programme de reconnaissance de la situation présente (carte d'interface présente ou absente, carte à puce présente ou absente, etc.) et les programmes découlant de cette reconnaissance. En mode-lecteur, le lecteur est alimenté par sa pile ou batterie propre et il fonctionne sur son horloge interne. En mode-émulation, il est alimenté par le lecteur maître et reçoit l'alimentation et l'horloge de ce dernier. On peut d'ailleurs prévoir que le lecteur portatif (esclave) comporte soit un détecteur de niveau de tension (apte à mesurer la tension présente sur un contact, par exemple C1, réservé normalement à l'alimentation d'une carte à puce) soit un détecteur de fréquence lui permettant de savoir s'il doit fonctionner en mode émulation de carte ou non. Dans le premier cas, le détecteur de tension peut être une ligne d'un port du microprocesseur (c'est à dire une liaison avec le microprocesseur) relié sur le contact C1 lui-même relié à la masse à travers une résistance. En mode lecteur, le détecteur détecte une tension de 0 volts. En mode émulation il en détecte une de 5 volts quand le lecteur maître fournit une tension de 5 volts. Dans le deuxième cas, le mode d'émulation peut être réveillé par un dispositif de fronts d'horloge, c'est à dire qu'un circuit de veille active le microprocesseur pour passer en module émulation. L'organigramme de la figure 2 rappelle le principe de double mode de fonctionnement du lecteur selon l'invention. Les applications de ce lecteur sont par exemple les suivantes Portefeuille électronique : En mode-lecteur, le lecteur de carte à puce peut contenir la carte et la protéger pendant son transport. Il peut aussi jouer le rôle de gardien en prévenant son propriétaire de l'absence de la carte : le buzzer 17 peut être activé systématiquement si la carte n'est pas dans le lecteur alors que le propriétaire n'a pas effectué une opération qu'il doit faire en retirant la carte (par exemple enfoncement d'une touche spécifique). Outil de question : Le lecteur garde une image des transactions effectuées par la carte, en particulier pour le domaine bancaire, évitant la nécessité d'imprimer des tickets. Outil de consultation : si le lecteur est muni d'un afficheur et d'un clavier, il permet à l'utilisateur de consulter sa carte à puce à tout moment. Ceci est utile en particulier pour les applications de porte-monnaie électronique. Le lecteur lui-même peut être consulté comme une carte à puce, à l'aide d'un lecteur de bureau, notamment pour avoir un historique des transactions. Outil de collecte d'information : Dans certaines applications, les terminaux de transaction ne sont pas raccordés à un serveur central qui centralise toutes les transactions effectuées (terminaux dits "off-line" par opposition aux terminaux "on-line"). I1 est alors nécessaire de venir physiquement, quand la mémoire du terminal est pleine, collecter les informations. Le plus simple est de faire cette collecte via le connecteur de carte à puce du terminal. Comme une carte à puce ne dispose pas de suffisamment de mémoire pour collecter toutes les informations utiles, le lecteur selon l'invention, fonctionnant en mode-émulation avec la carte d'interface 20 et muni d'une mémoire suffisante, est bien adapté pour cette collecte d'informations. Dans des applications grand public comme la santé par exemple, des informations comme l'adresse du porteur sont libres en accès lecture dans la carte à puce. Le lecteur selon l'invention permet de collecter par exemple les adresses de chaque personne rencontrée. Il fonctionne alors en mode lecteur. REVENDICATIONS 1. Lecteur de carte à puce comportant une fente (16) d'insertion de carte pour recevoir une carte à puce (30) et échanger des informations avec elle, et une partie (20) agencée comme une carte à puce et pouvant être introduite dans un autre lecteur de carte pour échanger des informations avec lui. 2. Lecteur de carte selon la revendication 1, caractérisé en ce que la partie agencée comme une carte est une première partie d'une carte d'interface amovible (20) dont une deuxième partie est insérée dans la fente d'insertion, la première partie et la deuxième partie comportant chacune des contacts (22, 24) à des positions normalisées par rapport aux bords de la carte, chaque contact d'une partie étant relié électriquement à un contact respectif correspondant de l'autre partie. 3. Lecteur de carte selon la revendication 2, caractérisé en ce que la carte d'interface amovible a des dimensions normalisées de carte à puce, à l'exception de la longueur qui est plus grande afin qu'une extrémité de la carte puisse être insérée dans le lecteur et simultanément une autre extrémité dans un autre lecteur. 4. Lecteur de carte selon l'une des revendications précédentes, caractérisé en ce qu'il comporte un microprocesseur et des programmes exécutables par ce microprocesseur, les programmes comprenant des premiers programmes (P1) permettant le fonctionnement autonome en mode lecteur dans lequel le lecteur est maître et une carte insérée dans le lecteur est esclave, et des deuxièmes programmes (P2) permettant un fonctionnement en mode dit "modeémulation", dans lequel le lecteur est esclave et simule le fonctionnement d'une carte à puce.