FR 2657445 A1 19910726 FR 9000868 A 19900125 PROCEDE DE CHARGEMENT DE PROGRAMMES D'APPLICATION DANS UN LECTEUR DE CARTE A MEMOIRE A MICROPROCESSEUR ET SYSTEME DESTINE A SA MISE EN OEUVRE L'invention se rapporte aux procédés et systèmes utilisant des cartes à mémoire portées par des utilisa- teurs en liaison avec les lecteurs à microprocesseurs, eux-mêmes reliés par téléphone à un centre serveur. De tels systèmes sont utilisables par exemple pour des applications liées à la gestion de comptes clients: chaque client dispose d'un ensemble de données qui lui sont propres,par exemple une identité sous forme de code, un montant maximum d'achats, un code caractéris- tique d'un type de client etc Classiquement ces données, propres au client, sont en mémoire dans la carte à mémoire. Le lecteur de cartes comporte un microprocesseur destiné à effectuer l'opération ou la suite d'opérations demandées dans le cadre d'une application, par exemple une vérification de l'identité du client ou le passage d'une commande etc,à partir d'une part des données en mémoire sur la carte propre au client et lues par le lecteur lorsque nécessaire et, d'autre part, d'un programme d'application correspondant à l'utilisation demandée. Classiquement les programmes d'applications sont stockés dans un serveur central et sont transférés par téléchargement à la mémoire vive du microprocesseur lorsque nécessaire pour l'utilisation demandée, via la ligne téléphonique qui relie le lecteur de cartes au serveur. Comme représenté sur la figure 1, qui illustre un système classique, le serveur S comporte en mémoire tous les programmes d'applications Al,A 2, An Ce serveur est relié aux lecteurs de cartes téléchargeables tels que L par le réseau téléphonique Un lecteur con porte une partie lecture proprement dite des cartes à mémoire, et une partie microprocesseur assurant la gestion de l'application Un tel système connu fonctionne de la manière suivante: la carte à puce CP est introduite dans le lecteur L; le lecteur L se connecte alors au serveur S; le serveur télécharge ensuite le programme d'ap- plication requis dans le lecteur. une fois le téléchargement de l'application ter miné, le lecteur exécute l'application. Un tel système a un inconvénient majeur qui est la lenteur de la procédure de téléchargement de l'appli- cation dans le lecteur du fait du moyen de transmission utilisé: la ligne téléphonique est un support de trans- mission de bas débit ( 75 bauds) De plus la taille mémoire nécessaire dans le serveur pour stocker tous les programmes d'applications est grande. L' invention a pour objet un procédé de chargement de programmes d'applications dans un lecteur de carte à mémoire, à microprocesseur, permettant de remédier à ces inconvénients, le chargement du programme d'application étant beaucoup plus rapide et la taille mémoire né- cessaire dans le serveur moins grande que dans les systèmes classiques Pour cela le stockage des pro- grammes d'application est effectué au préalable dans les cartes à mémoire qui ouvrent droit à ces applications Selon l'invention,un procédé de chargement de pro- grammes d'applications dans un lecteur de carte à mémoire, à microprocesseur, relié par téléphone à un centre serveur est caractérisé en ce qu'il consiste: -dans une phase préalable à mettre en mémoire des programmes d'application dans la mémoire des cartes à mémoire ouvrant droit à ces applications, et à mettre en mémoire dans le serveur gérant ces applications des pointeurs associés à chacun de ces programmes, ces pointeurs étant interprétables par le lecteur pour retrouver le programme d'application correspondant sur la carte et le transférer en mémoire vive du lecteur, -et,dans une phase d'utilisation après introduction de la carte dans le lecteur, déclenchant un appel téléphonique au serveur, à transférer via la ligne téléphonique, le pointeur de l'application requise du serveur au lecteur, le lecteur, après interprétation de ce pointeur, commandant l'interrogation de la carte et le transfert du programme de l'application en mémoire vive du lecteur en vue de son exécution. L'invention a également pour objet le système des tiné à sa mise en oeuvre. L'invention sera mieux comprise et d'autres carac- téristiques apparaîtront à la lecture de la description qui suit en référence aux figures annexées. -La figure 1 est le schéma d'un système à carte à mémoire et lecteur téléchargeable connu décrit cides sus; -la figure 2 est le schéma d'un système carte à mémoire et lecteur téléchargeable selon l'invention; -la figure 3 illustre une première variante du procédé selon l'invention permettant le chargement rapide des programmes d'application; -la figure 4 illustre une seconde variante du pro- cédé selon l'invention. Selon l'invention, le serveur continue à piloter l'ensemble des applications qu'il gère, mais les pro- grammes d'applications correspondant ne sont plus stockés dans leur totalité dans le serveur comme c'était le cas précédemment Ils sont stockés, au moins pour les plus utilisés, dans les cartes à mémoire qui ouvrent droit à ces applications, o ils peuvent être lus au moyen de pointeurs d'application associés Ces pointeurs d'application sont des commandes transmises au lecteur et que ce dernier interprète pour retrouver les programmes d'applications mémorisés dans la carte. Ces pointeurs d'application sont transmis par le serveur au lecteur via la liaison téléphonique, ou encore, si le lecteur dispose d'une zone de mémoire non volatile, lors d'une première connexion le serveur peut demander au lecteur de mémoriser le pointeur d'appli- cation transmis, de sorte que, lors des connexions futures, seule la référence de ce pointeur soit à transmettre via le réseau téléphonique. Le système selon l'invention représenté sur la fi- gure 2 est alors le suivant: le serveur S ne contient plus les programmes d'applications Al,A 2, An comme représenté sur la figure 1 mais seulement des pointeurs d'application et éventuellement les références de ces pointeurs d'application, par exemple Pl et ref Pl correspondant à une application Ai, P 2 et ref P 2 cor- respondant à A 2 etc, P 5 correspondant à A 5, P 6 correspondant à A 6 etc. Le serveur est relié aux lecteurs tels que L par le réseau téléphonique Le lecteur est susceptible de lire une carte à mémoire, CP, comportant dans sa mémoire d'une part les données propres au titulaire de la carte, comme précédemment, et d'autre partles programmes d'application susceptibles d'être exécutés en liaison avec cette carte, ou au moins les plus couramment utilisés. Le procédé de chargement rapide de programmes d'ap- plications dans le lecteur à microprocesseur susceptible de les exécuter est alors le suivant comme illustré par la figure 3: Etape 1 La carte à mémoire CP est introduite dans le lecteur L; Etape 2 Le lecteur se connecte alors au serveur; Etape 3 Un pointeur d'application est téléchargé par le serveur dans le lecteur, par exemple le pointeur Pl correspondant à un programme Ai de vérification d'identité du titulaire; Etape 4 Le pointeur d'application, qui est une commande, est alors interprété par le lecteur L; c'est par exemple un ordre de lecture d'une partie de mémoire de la carte mémoire; Etape 5 Le lecteur recherche le programme d'application, Ai, correspondant mémorisé dans la carte; Etape 6 Le programme d'application Al contenu dans cette partie de mémoire de la carte est alors chargé depuis la carte vers le lecteur, et ce chargement est rapide; Etape 7 Le lecteur exécute alors l'application. Si le lecteur dispose en outre d'une zone mémoire non volatile M de petite capacité, 8 K Octets par exemple, ce qui n'augmente pas sensiblement le coût du lecteur,le procédé de chargement peut être encore accéléré en mémorisant dans le serveur, en plus des pointeurs d'applications tels que Pi, P 2 les codes de référence associés: Lors de la première connexion du lecteur au ser- veur, le pointeur du programme d'application requis est transféré et mis en mémoire de façon définitive dans le lecteur dans la zone mémoire non volatile M o il est susceptible d'être retrouvé ultérieurement par le code référence. Comme illustré par la figure 4, lors d'une conne- xion ultérieure requérant la même application, issue de ce même lecteur, le pointeur d'application correspondant n'est plus transmis: seule la référence permettant de le retrouver dans la mémoire du lecteur est transmise via la ligne téléphonique Puis comme dans la première variante, l'interprétation du pointeur permet de trouver la zone mémoire de la carte contenant le programme d'application correspondant qui est alors chargé en mémoire vive du microprocesseur du lecteur en vue d'être exécuté. Les pointeurs mis en mémoire dans la mémoire non volatile du lecteur peuvent provenir de centres serveurs différents par exemple P 4 sur la figure 4, si ce lecteur est relié via le réseau téléphonique à un ou plusieurs serveurs. Bien entendu, ces deux variantes ne sont pas exclusives et peuvent être mises en oeuvre conjointement dans un même système Par exemple sur la figure 4,le pointeur P 3 qui n'a pas été mis en mémoire dans le lecteur devrait, si l'application correspondante A 3 est requise,être téléchargé dans le lecteur Le procédé de chargement rapide de programmes d'application peut également coexister avec le procédé classique de téléchargement du serveur au lecteur, lorsque nécessaire, pour des applications mises en oeuvre plus rarement ou pour des applications nouvelles qui n'ont pu être mémorisées dans les cartes, le système ayant bien sûr pour ces applications l'inconvénient de la durée du téléchargement, comme les systèmes anté- rieurs. REVENDICATIONS 1 Procédé de chargement de programmes d'applica- tions dans un lecteur de carte à mémoire, le lecteur comportant un microprocesseur et étant relié par télé- phone à un centre serveur caractérisé en ce qu'il consiste: dans une phase préalable à mettre en mémoire des programmes d'application dans les mémoires des cartes à mémoire ouvrant droit à ces applications, et à mettre en mémoire dans le serveur gérant ces applications des pointeurs associés à chacun de ces programmes, ces pointeurs étant interprétables par des lecteurs pour retrouver le programme d'application correspondant sur une carte et le transférer en mémoire vive du lecteur, -et,dans une phase d'utilisation après introduction de la carte dans le lecteur, déclenchant un appel téléphonique au serveur, à transférer via la ligne téléphonique, le pointeur de l'application requise du serveur au lecteur, le lecteur, après interprétation de ce pointeur commandant l'interrogation de la carte et le transfert du programme de l'application en mémoire vive du lecteur en vue de son exécution. 2.Procédé selon la revendication 1, caractérisé en ce que des codes de référence associés aux pointeurs d'application sont mémorisés dans le serveur et en ce que, sur demande du serveur, les pointeurs sont mémo- risés dans une mémoire non volatile du lecteur lors de leur premier transfert vers ce lecteur et sont repéra- bles dans le lecteur par leurs codes de référence, et en ce que lors des utilisations ultérieures de la même application par le lecteur, seul le code de référence du pointeur d'application correspondant est transféré du serveur au lecteur via la ligne téléphonique, ce code référence désignant la zone mémoire du lecteur contenant le pointeur correspondant à interpréter par le lecteur pour commander le chargement du programme d'application de la carte mémoire à la mémoire vive du lecteur en vue de son exécution. 3.Procédé selon la revendication 2, caractérisé en ce que, en plus de pointeurs associés à des programmes d'application mis en mémoire dans les cartes à mémoire, et de codes références associés à ces pointeurs, le serveur comporte des programmes d'applications non mémorisés dans les cartes à mémoire et transférés au lecteur, lorsqu'il y a lieu via la ligne téléphonique. 4 Système destiné à la mise en oeuvre du procédé selon l'une des revendications précédentes, caractérisé en ce qu'il comporte: -au moins un centre serveur (S), -au moins un lecteur (L) à microprocesseur pour la lecture de cartes à mémoire et l'exécution d'appli- cations, comportant un interpréteur, -un ensemble de cartes à mémoire (CP) comportant chacune une zone mémoire pour des programmes d'applications auxquels elles ouvrent droit, en plus de la zone mémoire de données propres au porteur. 5.Système selon la revendication 4, caractérisé en ce que le lecteur comporte en plus d'une mémoire vive associée au microprocesseur, une zone mémoire non volatile pour la mise en mémoire éventuelle des poin- teurs d'application après leur transfert du serveur au lecteur. 6.Système selon la revendication 5, caractérisé en ce que la zone mémoire non volatile du lecteur est partagée entre des pointeurs en provenance de centres serveurs différents.