Brevet FR2805912A1 — publié le 20010907

PROCIEDIE DE COMMANDE D'UNE CARTE A PUCE. La présente invention concerne de manière générale les cartes à puce, et plus particulièrement la commande d'une carte à puce par une séquence d'instructions mémorisée dans un fichier, ou page, stocké dans un serveur distant réseau de télécommunications, par exemple de type INTERNET. Une puce d'une carte à puce est un composant électronique comprenant moins une zone de mémoires et une unité de traitement supportant des fonctions dites natives, qui sont intégrées dans la puce lors de sa fabrication, et un système d'exploitation. réseaux de radiocommunications de type mobile, tel que GSM (Global System Mobile communications) et les réseaux de télécommunications de type NTERNET ont été marqués ces dernières années par des évolutions technologiques très significatives. Dans ces évolutions, la carte à puce joue un rôle important ' en raison de l'intelligence de traitement qu'elle supporte et de la garantie de sécurité qu'elle offre. L'émergence quasi-simultannée des technologies de radiocommunications avec les mobiles et de télécommunications de type INTERNET a vu naître l'apparition d'une solution dite "Protocole d'Accès Sans Fil" (WAP ou "Wireless Access Protocol" en terminologie anglo-saxonne) proposée par des sociétés telles que "Unwired Planet", maintenant renommée "Phone.Com". Cette technologie WAP propose d'accéder via des téléphones mobiles à des serveurs de type NTERNET et à1eurs contenus. Pour la mise en oeuvre de cette technologie, téléphone mobile doit mémoriser un programme, appelé interpréteur (ou "browser` en terminologie anglo-saxonne). Le téléphone accède au serveur INTERNET à travers une passerelle WAP. L'utilisation de la technologie WAP, très prometteuse, est encore limitée par la faible largeur de bande disponible pour chaque usager, qui n'autorise pas un transfert à débit élevé vers le terminal mobile de données mémorisées sur le serveur distant. Ainsi, par exemple, un service de type SMS (Short Message Service) n'autorise qu'un débit très limité pour acceder à des contenus d'informations volumineux. Les technologies la carte à puce ont, parallèlement à l'émergence de technologies, été marquées par deux évolutions importantes : - la définition pour utilisation dans le Standard GSM, tel que défini par #TSI (European Standard Telecommunications Institute), d'une norme (identifiée par référence GSM 1 .14) stipulant un kit de commandes de carte à puce (Subscriber Identity Module), dit SIM ToolKit. Cette norme définit de nombreuses commandes propres à être exécutées par la carte sur requête du terminal mobile- et - l'arrivée des cartes à puce dites "ouvertes". Durant les vingt dernières années en effet, les cartes à puce ont évolué en n'étant au départ que des systèmes dédiés à une application bien particulière pour devenir des "plates-formes" ouvertes, pour lesquelles tous les programmeurs peuvent développés eux-mêmes des applications utilisant un langage commun et standard. A titre d'exemple, le standard Java Card promu par SUN propose un programme "Machine Virtuelle" (VM) offrant une interopérabilité de la carte indépendamment de son unité de traitement et une interface de programmation (API) offrant une interopérabilité de la carte indépendamment de son système d'exploitation. Ainsi, les VM et API fimasquenf' l'unité de traitement et le système d'exploitation quels qu'ils soient, et toute personne peut donc développer une application indépendamment des fonctions natives et système d'exploitation inclus initialement dans la carte. Les spécifications WAP, telles que définies par le WAP Forum, proposent une interface ouverte entre un terminal mobile et une passerelle WAP elle même reliée à un serveur d'un réseau par exemple de type Internet, permettant ainsi interopérabilité entre n'importe quel terminal mobile et n'importe quelle passerelle indépendamment constructeurs de ces terminal mobile et passerelle. Pour cela, il définit série d'instructions, ou commandes, normalisées entre terminal et la passerelle. Une solution naturelle dans la mise en oeuvre des échanges entre une carte à puce et un serveur distant à travers un réseau de radiocommunications avec les mobiles est de se baser sur les concepts du WAP, en reprenant ses commandes standardisées. Il faut alors développer un micro-browser, ou micro-interpréteur, dans la carte propre à supporter ces commandes standardisées. Elle présente l'inconvénient que le micro-browser dans la carte nécessite un espace mémoire important, ressource critique dans une carte à puce. En outre, l'implémentation souffdrait du même inconvénient que celui qui affecte encore aujourd'hui WAP, à savoir le manque de bande passante, lorsque l'on utilise par exemple canal SIVIS. L'invention vise à remédier aux inconvénients précités en fournissant un procédé de commande, à travers un réseau de télécommunications avec les mobiles, d'une carte à puce par une séquence d'instructions de programme d'ordinateur memorisée dans un fichier, ou page, stocké dans un serveur distant afin faire executer par la carte une tâche particulière, ladite carte comprenant un interpréteur pour interpréter ladite séquence, qui se caractérise en que l'interpréteur implémente une correspondance entre chacune d'une pluralité d'instructions et chacune de commandes disponibles prédéfinies entre la carte et le terminal mobile, et en . ce que lorsqu'une instruction est détectée par l'interpréteur comme correspondant à une commande disponible propre à la carte, ledit interpréteur demande l'exécution de ladite commande par ladite carte ou par le terminal sur requête de la carte. Ainsi, lorsqu'une carte produit une requête à destination du serveur, dernier renvoie une séquence d'instructions. Cette séquence est conçue très specifiquement pour l'environnement Sim ToolKit (commandes disponibles pour la commande de la carte par un terminal mobile) et permet de limiter très sensiblement la taille d'espace mémoire nécessaire pour le micro-browser. En effet, toutes les instructions de la séquence qui sont associées directement à des commandes Sim ToolKit respectives ne nécessitent aucun traitement significatif de la part du micro-browser, ce dernier se limitant à renvoyer ces instructions, pour exécution, à des programmes de traitement de commandes ToolKit prééxistants dans la carte. Typiquement, les commandes disponibles prédéfinies entre la carte et le terminal mobile sont telles que définies par le jeu d'outils SIM (SIM ToolKit) de la Recommandation GSM11.14 du Standard défini par l'ETSI, le réseau de radiocommunications avec les mobiles étant reseau GSM.. Avantageusement, la séquence d'instructions reçue par la carte à travers une passerelle qui transcrit chaque instruction fichier en une instruction codée correspondant de sorte à produire un fichier taille plus réduite transmis vers le terminal. Par exemple, ce fichier de taille plus réduite transmis vers le terminal est véhiculé à travers un canai de Service de Message Court. L'invention fournit également une carte à puce pour terminal mobile d'un réseau de radiocommunications avec les mobiles, carte comprenant un interpréteur pour interpréter une séquence d'instructions de programme d'ordinateur mémorisée dans un fichier, ou page, stocké dans un serveur distant afin de faire exécuter par la carte une tâche particulière. La carte est caractérisée en ce que l'interpréteur implémente une correspondance entre chacune d'une pluralité d'instructions et chacune de commandes disponibles prédéfinies entre la carte et le terminal mobile, et en ce que lorsqu'une instruction est détectée par l'interpréteur comme correspondant à une commande disponible propre à la carte, l'interpréteur demande l'exécution de ladite commande par ladite carte ou par le terminal sur requête de la carte. D'autres caractéristiques et avantages de la présente invention apparaîtront plus clairement à la lecture de la description qui suit en référence aux dessins annexés correspondants dans lesquels: - la figure 1 montre une représentation schématique d'un réseau de radiocommunications avec les mobiles, et carte à puce et un serveur distant connecté entre eux à travers ce réseau; et - la figure 2 est un diagramme explicitant le fonctionnement du micro-browser inclus dans la carte à puce. En référence à la Figure 1, une architecture de reseaux pour la mise en oeuvre de l'invention comprend, à titre d'exemple, un terminal mobile 1 recevant une carte à puce de type SIM 4. A travers un réseau type GSM et son service de messagerie associée SMS, le terminal communique avec une passerelle 2. Cette passerelle 2 est elle-même connectée à un serveur distant 3 mémorisant l'information de commande de la carte et un contenu d'informations associées. La Recommandation GSM 11.14 de l'ETSI définit un jeu de commande, que appelle le "SIM ToolKit" entre le terminal 1 et la carte 4. A titre d'exemple commande "Display Text XXX' permet à la carte de commander l'affichage par terminal sur son écran d'un texte XXX. La commande Tower On Card" permet au terminal d'activer la carte, etc ...... En revenant à la Figure 1, la carte 4 sollicite le terminal 1 pour accéder à une page Internet en demandant d'émettre un SIVIS, selon une commande du type "Send SMS 10 89 CC". Le contenu de ce SMS 10 89 AB CC" est alors envoyé par le terminal 1 voie radioélectrique vers la station de base la plus proche du réseau GSM . Le message SMS est reçu par la passerelle 2 à travers le réseau GSM. La passerelle plusieurs fonctions, dont notamment l'authentification du porteur de carte, la gestion des accès, l'ajout de fonctions (telle que la localisation de la . dans le réseau GSM qui est fonction de la cellule dans laquelle le terminal mobile est inscrit) prédéfinies entre la carte et cette passerelle pour l'enrichissement du dialogue avec le serveur 3. La passerelle reçoit ce message SMS et le convertit sous la forme d'un message d'adresse Internet, noté "http://www.tv.stk". Il est à noter que le contenu 10 89 AB CC" envoye dans le message SMS n'implique l'envoi que d'un faible volume de données comparativement à celui requis pour envoyer le message de texte "http://www.tv.stk", la conversion opérée par la passerelle 2 permettant ainsi de tenir compte des capacités limitées du SMS. En réponse à la réception de ce message d'adresse Internet "http://www.tv.stk", le serveur 3 renvoie, selon un protocole de type "requête-réponse" connu l'homme du métier, une page, ou fichier, comprenant une séquence d'instructions. Ce fichier est noté STKIVIL dans la Figure 1 pour "Sim ToolKit Markup Langage". Le langage STKIVIL étant représenté sous un format d'apparence XML, il occupe un volume de données relativement important. Il est à noter que selon caractéristique importante permettant la mise en oeuvre de la présente invention, la séquence d'instructions envoyée par le serveur 3 est écrite selon un langage conçu très spécifiquement pour l'environnement Sim ToolKit. Ainsi, chaque commande SI M ToolKit existante pour être exécutée par la carte ou par le terminal sur requête de la carte, possède un équivalent univoque sous forme d'une instruction dans le langage STKML, permettant la mise en oeuvre l'invention. Pour tenir compte des capacités limitées du service SMS, la passerelle transcrit chaque instruction du fichier STKIVIL en une instruction codée correspondant de sorte à produire un fichier de taille plus réduite. Ce fichier séquences d'instructions transcrites est reçu par le terminal 1 qui le retransmet à carte 4. Comme montré dans la Figure 2, la carte 4 comprend un interpréteur 40 et une pluralité de programmes élémentaires, d'exécution ou de requête d'exécution, notés Pl,...., propres à l'exécution, par la carte ou par le terminal requête de la carte, jeu de commande "SIM ToolKif' entre le terminal 1 et la carte 4. L'interpréteur implémente une correspondance, qui peut être à titre d'exemple une table correspondance ou un branchement conditionnel (Si condition ALORS ..... entre chacune d'une pluralité d'instructions et chacune de commandes SimToolkit disponibles prédéfinies entre la carte et le terminal mobile, Lorsqu'une instruction est détectée par l'interpréteur comme correspondant à une commande disponible propre à la carte, ledit interpréteur demande l'exécution de ladite commande par ladite carte ou par le terminal sur requête de la carte. La correspondance est établie entre instructions et commandes SimToolkit de manière directe ou indirecte. A titre d'exemple, de manière directe, l'interpréteur associe à chaque instruction une commande disponible prédéfinie, et demande à d'autres programmes dans la carte d'exécuter ou de faire exécuter la commande identifiée, en leur transférant un paramètre. A titre d'exemple, de manière indirecte, l'interpréteur associe à chaque instruction un programme, et non pas la commande elle-même, dans la carte susceptible d'exécuter ou de faire exécuter une commande précise, et active ce programme. Dans les éléments qui suivent sont présentés à titre d'exemple non limitatifs deux instructions en langage STKIVIL avec leurs attributs et définitions associées, qui sont respectivement associées aux commandes GET INPUT et SEND DTMF des commandes Sim ToolKit. ou ATTLIST designe la liste des attributs de la variable considérée. Il est à noter que selon l'invention, pour chacune des commandes Sim ToolKit existantes (Display Text, Get Input, Select Item, Provide Local Infâ, Send SMS, Send USSD, Setup Call, Send IDTMF, PowerOn Card, PowerOff Card Perform Card APDU, Play Tone, etc ...... ), une instruction correspondante existe dans le langage STKIVIL. Le résultat obtenu est à opposer à celui issu de la transcription des commandes WAP, pour lesquelles cela est possible, car il alors nécessaire de développer un interpréteur dans la carte requérant plus de volume si l'on souhaite obtenir un niveau de fonctionnalités équivalent à celui obtenu avec la totalité des commandes Sim ToolKit. REVENDICATIONS 1 - Procédé de commande, à travers un réseau de télécommunications avec mobiles, d'une carte à puce (4) par une séquence d'instructions de programme d'ordinateur mémorisée dans un fichier, ou page, stocké dans un serveur distant (3) afin de faire exécuter par la carte (4) une tâche particulière, ladite carte (4) comprenant un interpréteur (40) pour interpréter ladite séquence, caractérisé en ce que ledit interpréteur (40) implémente une correspondance entre chacune d'une pluralité d'instructions et chacune de commandes disponibles prédéfinies entre la carte (4) et le terminal mobile (1), et en ce que lorsqu'une instruction est détectée l'interpréteur (40) comme correspondant à une commande disponible propre à carte (4), ledit interpréteur (40) demande l'exécution de ladite commande ladite carte (4) ou par le terminal (1) sur requête de la carte (4). 2 - Procédé commande d'une carte à puce conforme à la revendication 1, caractérisé en ce que lesdites commandes disponibles prédéfinies entre la carte (4) et le terminal (1) mobile sont telles que définies par le jeu d'outils SIM (SIM ToolKit) de Recommandation GSM11.14 du Standard GSM défini par l'ETSI ledit réseau rad iocommu ni cations avec les mobiles étant un réseau GSM. 3 - Procédé conforme à la revendication 1 ou 2, caractérisé en ce que ladite séquence d'instructions est reçue par la carte (4) à travers une passerelle (2) transcrit chaque instruction du fichier en une instruction codée correspondante de sorte à produire un fichier de taille plus réduite transmis vers le terminal (1). 4 - Procédé conforme à la revendication 3, caractérisé en ce que le fichier taille plus reduite transmis vers le terminal (1) est véhiculé à travers un canai Service Message Court. 5 - Carte a puce (4) pour terminal mobile (1) d'un réseau de radiocommunications avec les mobiles, ladite carte (4) comprenant un interpréteur (40) pour interpréter une séquence d'instructions de programme d'ordinateur mémorisée dans un fichier, ou page, stocké dans un serveur distant (3) afin de faire exécuter par la carte (4) tâche particulière, caractérisée en ce que ledit interpréteur (4) établit correspondance entre chacune d'une pluralité d'instructions et chacune de commandes disponibles prédéfinies entre la carte (4) et le terminal mobile (1), et en ce lorsqu'une instruction est détectée par l'interpréteur (40) comme correspondant à une commande disponible propre à la carte (4), ledit interpréteur (40) demande l'execution de ladite commande par ladite carte ou par le terminal (1) sur requête de carte. 6 - Carte conforme à la revendication 5, caractérisée en ce lesdites commandes disponibles prédéfinies entre la carte (4) et le terminal (1 mobile sont telles que définies par le jeu d'outils SIM (SIM ToolKit) de la Recommandation GSM 11.14 du Standard GSM défini par VETSI, ledit réseau de radiocommunications avec les mobiles étant un réseau GSM.