FR 2591007 A1 19870605 FR 8517778 A 19851202 PROCEDE DE PAIEMENT ELECTRONIQUE A L'AIDE D'UNE CARTE A MEMOIRE La présente invention a pour objet un procédé de paiement électronique à l'aide d'une carte à mémoi- re. Le fonctionnement actuel des systèmes de paiement électronique de petites sommes consiste en l'utilisation de cartes à mémoire dites "porte-je.tons". On sait que la carte à mémoire est un support plastique dont les dimensions sont conformes aux normes ISO 2894 et 3554. Sur ce support est implanté un compo- sant électronique contenant un microprocesseur. Celui- ci contient une mémoire de données de plusieurs centai- nes de bits réalisée en technologie "EPROM". On sait qu'il s'agit Là d'une mémoire à lecture seulement, pro- grammable électriquement une fois (ElectricaLLy Pro- grammable Read Only Memory). Le traitement effectué dans la carte à mémoi- re "porte-jetons" consiste à faire correspondre à cha- que bit d'une zone de la mémoire de données, une unité de paiement dite "jeton". Un terminal point de vente, muni d'un lecteur de cartes, exécute une transaction par "grillage" de bits dans la mémoire de données. Le "grillage" d'un bit consiste à faire passer électrique- ment un élément binaire de la mémoire de l'état binaire "1" correspondant au crédit d'une unité à l'état binai- re "0" correspondant à un crédit nul. La mémoire de données étant réalisée en technologie "EPROM", ce chan- gement d'état est électriquement irréversible. Les défauts de ce système sont multiples: d'une part, iL n'est pas possible de recharger la car- te, et d'autre part, la consommation de bits est éle- vée: le nombre de bits grillés est en effet égal au nombre d'unités à débiter. Le but de l'invention est de remédier à ces inconvénients. A cette fin, la mémoire EPROM est parta- gée en deux zones d'égale capacité. La structure physi- que et logique de L'EPROM permet d'associer à chaque bit un rang. Deux bits sont dits homologues s'ils ont même rang dans les deux zones; ils forment un couple noté (x, y) o x est la valeur binaire (O ou 1) du bit de la première zone, dite "zone de paiement" et o y est la valeur binaire du bit de la deuxième zone, dite "zone de rechargement". Selon l'invention le crédit disponible dans la carte s'exprime en unités, le nombre d'unités disponibles étant égal au nombre de couples (1,1) dont le rang est à la fois supérieur à 1 ou au rang du couple (0,1) de rang le plus élevé, si un tel couple (0,1) existe, et inférieur au rang d'un couple limite déterminé. Selon une première variante, ce couple déter- miné limitant le nombre d'unités disponibles est le dernier couple (1,1) de la mémoire. Autrement dit le crédit disponible est limité par la capacité de la mé- moire. Selon une deuxième variante le couple déter- miné limitant le nombre d'unités disponibles est un couple butée (1,0) obtenu en écrivant un 0 dans la zone de rechargement. Enfin, selon une troisième variante le couple déterminé limitant le nombre d'unités disponibles est, parmi des couples butées (1,0), celui qui a le rang le plus élevé. Selon l'invention, pour effectuer une opéra- tion de débit de la carte de p unités, on grille un bit et un seul dans la zone de paiement selon la procédure suivante: - on recherche Le couple (0,1) de rang r0 le plus élevé, - on recherche le pième couple (1,1) de rang rp supérieur à ro, - on grille le bit de rang r en zone de P paiement si ce rang est inférieur au rang du couple limite, lequel est défini selon l'une des trois varian- tes définies plus haut. Pour effectuer une opération de crédit de la carte, on grille des bits dans la zone de rechargement pour annuler des opérations de débit antérieures et ceci en faisant passer les couples (0,1) à l'état (0,0), ces couples étant ignorés par la suite. Pour limiter le crédit rechargé dans la car- te, on peut faire passer un couple (1,1) à l'état (1,0) - couple butée - sans annuler ou en annulant les cou- ples butées précédents, c'est-à-dire en faisant passer un couple butée (1,0) à L'état (0,0) ignoré par la sui- te. Si les couples butées ne sont pas utilisés, on peut limiter le crédit rechargé par un paiement fictif, en faisant passer un couple (1,1) à l'état (0,1). Par rapport à l'art antérieur (porte-je- tons), la consommation de bits se trouve réduite quand le paiement moyen dépasse deux unités. En effet, un paiement implique le grillage d'un bit en zone de paie- ment, et le réemploi des couples inutilisés implique le grillage du bit homologue en zone de rechargement, soit 2 bits au total. En fait, lors du rechargement la limitation de la somme rechargée conduit à griller des bits sup- plémentaires. En pratique on peut considérer que le nombre de bits grillés par opération est compris entre 2 et 3. Les caractéristiques de l'invention apparaî- tront mieux après la description qui suit, d'un exemple de réalisation de l'invention. Cette description se ré- fère à des dessins annexés sur lesquels: - la figure 1 illustre l'état initial de la mémoire; - ta figure 2 illustre l'écriture d'une butée dans La zone de chargement; - La figure 3 illustre une opération de pre- mier paiement; - La figure 4 ilLustre une opération de deuxième paiement; - la figure 5 montre L'état de La mémoire en fin de première utilisation; - La figure 6 illustre L'opération de déter- mination du montant à recharger dans une carte; - la figure 7 illustre l'opération de mise à (0,0) des couples (0,1) et (1,0) Lors du rechargement; - la figure 8 montre l'état de la mémoire après écriture d'une nouvelle butée (1,0). Dans La description qui suit on se placera dans la variante o Le crédit disponible est Limité par un coupLe butée (1,0) et un seut. L'état initial de la mémoire avec ses zones de paiement ZP et de rechargement ZR est représenté sur La figure 1. Tous Les bits sont à 1. Un bit à 0 dans la zone de rechargement ZR définit une butée BB1 comme représenté sur la figure Z. Une première transaction d'un montant P1 est effectuée par un terminal point de vente dans Lequel est introduite la carte, en comptant, depuis le début de La zone ZP, un nombre de 1 égaL à P1 (ici P1=4). Ce comptage définit le bit à griller BG1. Ce bit est mis à 0 (figure 3). Une deuxième transaction correspondant à un paiement d'un montant P2 est obtenue en grillant le bit BG2 situé à P2 emplacements de BG1 (figure 4). Ces paiements sont possibles puisque le rang du bit mis à 0 est inférieur au rang de La butée BB1. Mais La transaction est impossible dès que Le rang r du bit que L'on devrait griLLer est supérieur au rang du couple de butée. Dans la pratique, La zone de rechargement est protégée. Lorsque la carte est introduite dans un ter- minal point de vente, celui-ci n'a accès qu'à La zone de paiement ZP au moyen d'une première clé et ne peut griller que les bits de cette zone. SeuL L'organisme émetteur de La carte est habilité à griller des bits dans la zone de rechargement ZR. Ces opérations de re- chargement s'effectuent donc en introduisant la carte dans un terminal spécial, qui est un terminal de char- gement. Cette protection est obtenue par l'utilisation d'une clé connue du seul terminal de rechargement. Ce terminal calcule d'abord le montant résiduel MR de La carte. C'est le nombre de couples (1, 1) qui subsiste entre le dernier couple (0, 1) et le couple définissant la butée (1, 0). (Figure 5). Puis il calcule le nouveau montant à recharger: c'est la somme du montant rési- duel MR et de La somme versée SV par Le titulaire de la carte. Le terminal cherche ensuite le bit de butée à griller. Pour cela, il compte, depuis le début des zones, un nombre de couples (1, 1) égal au montant à recharger SV+MR (figure 6). Les couples à l'état (1, 0), (0, 1) et (0, 0) sont ignorés dans ce comptage. Si le nombre de couples à l'état (1, 1) est inférieur au montant à recharger, plus 1, l'opération est impossi- ble. Le rechargement précédent est remis à zéro en faisant passer tous les couples (1, 0) et (0, 1) à l'état (0, 0) (figure 7). Ces couples (0, 0) seront ensuite ignorés dans toutes les opérations ultérieures. Finalement, le terminal grille le bit BB2 qui définit la nouvelle butée (figure 8). A titre d'exemple, on peut utiliser des mé- moires de 50 mots de 32 bits, dont 28 sont utiles (4 bits sont réservés pour le système d'exploitation de La carte). Les tailles des zones de paiement et de rechar- gement sont donc de 50x14=700 bits. Le nombre de bits grillés par paiement étant de 1, le nombre théorique de paiements est de 700. En fait, il est inférieur à ce nombre car les bits grillés pour définir des butées et les bits restant en fin de validité de la carte, sont perdus. De façon plus précise, on peut prendre l'exem- ple d'un rechargement constant minimum de 100 unités et de paiements moyens de 10 unités. Les bits inutilisa- bles car leur nombre ne permet pas un rechargement sont donc au nombre de 100. On ne peut donc effectuer que 545 paiements. D'o une consommation moyenne de 2,56 bits par opération. Le montant global de ces paiements s'élève ainsi à 545x10=5450 unités. Si l'on veut améliorer la précision des paie- ments en multipliant par 2 Le nombre de bits comptés par paiement, soit 20 unités, les rechargements seront de 200 unités. Le nombre de paiements sera alors de 455 d'o une consommation moyenne de 3,07 bits par opéra- tion. Le montant global des paiements sera de 455x20=9100 unités. En conséquence, la précision sur les unités est doublée au détriment du nombre total de paiements diminué de 20%. L'invention apporte des protections spécifi- ques vis-à-vis des agressions possibles de la part d'un porteur de carte essayant de masquer des paiements ou de faire des rechargements illicites. A cet égard, les points suivants doivent être soulignés: - la lecture des zones de paiement et de re- chargement est libre, - l'écriture de O dans la zone de chargement n'est possible que sous présentation d'une cLé: tout passage des couples à l'état (1, 1) et (0,1) à l'état (1,0) ou (0,0) est impossible sans présenter à la carte une cLé détenue par l'organisme émetteur et lui seul, - l'écriture de 0 en zone de paiement a pour conséquence, pour le couple (1,1) qui passe à (0,1): - d'être sans effet sur le montant disponible dans la carte, si elle est faite sur des couples précé- dant le dernier couple à l'état (0,1) ou situés après le couple butée à l'état (1,0), - d'ajouter des paiements fictifs dans la carte si elle est faite sur des couples situés entre le dernier couple à l'état (0,1) et le couple butée à l'état (1,0). Pour le couple butée à l'état (1,0), le pas- sage à l'état (0,0) aura pour conséquence de rendre invalide La carte car au prochain paiement, plus aucune butée n'apparaîtra. En conséquence, une écriture indue en zone de paiement ne peut jamais avoir pour conséquence la créa- tion de monnaie; la carte ne peut être créditée que par des écritures en zone de rechargement sous contrôle de la cLé de l'organisme émetteur. REVENDICATIONS 1. Procédé de paiement électronique utili- sant une carte à mémoire EPROM chargée à l'origine de bits à l'état 1 pouvant être grillés, c'est-à-dire mis à L'état O de façon irréversible. ce procédé étant ca- ractérisé par Le fait que: - La mémoire est divisée en deux zones d'éga- les capacités, une première zone dite zone de paiement et une seconde zone dite zone de rechargement. les bits ayant, dans ces deux zones, un rang déterminé, un bit de vaLeur x dans La première zone étant dit homoLogue d'un bit de valeur y dans la seconde zone, s'ils ont même rang, ces deux bits définissant alors un couple (x, y), des couples (1,1), (1,0), (0,1) et (0,0) pou- vant être ainsi écrits dans La mémoire, - Le crédit disponible dans la carte s'expri- me en unités, Le nombre d'unités disponibles étant égaL au nombre de couples (1.1) dont le rang est supérieur à I ou au rang du couple (0,1) de rang le plus éLevé, lorsqu'un tel couple (0.1) existe, et inférieur au rang d'un couple Limite déterminé. 2. Procédé seLon La revendication 1. caracté- risé par le fait que le couple limite déterminé limi- tant le nombre d'unités disponibles est le dernier cou- pLe (1,1) de La mémoire. 3. Procédé selon La revendication 1, caracté- risé par te fait que te couple déterminé limitant Le nombre d'unités disponibles est un couple butée (1,0) obtenu en écrivant un O dans La zone de rechargement. 4 Procédé seton-La revendication 1, caracté- risé par le fait que le couple déterminé limitant le nombre d'unités disponibles est, parmi des couples bu- tées (1,0). celui qui a le rang le plus élevé. 5. Procédé seLon Les revendications 1 à 4, caractérisé par le fait que, pour effectuer une opéra- tion de débit de la carte de p unités, on grille un bit et un seul dans la zone de paiement selon la procédure suivante: - on recherche le couple (0,1) de rang r le plus élevé, i ème - on recherche le pime couple (1,1) de rang rp supérieur à r0, - on grille le bit de rang r en zone de paiement si ce rang est inférieur au rang du couple limite, sinon l'opération est impossible. 6. Procédé selon la revendication 1, caracté- risé par le fait qu'on effectue une opération de crédit de la carte en grillant des bits dans la zone de re- chargement pour annuler des opérations de débit anté- rieures et ceci en faisant passer les couples (0,1) à l'état (0,0), ces couples étant ignorés par la suite. 7. Procédé selon les revendications 2, 5 et 6, caractérisé par le fait que, lors d'une opération de crédit de la carte, le montant du crédit est ajusté en faisant passer un couple (1,1) à L'état (0,1) (paiement fictif). 8. Procédé selon les revendications 3, 4 et 6, caractérisé par le fait que, lors d'une opération de crédit de la carte, le montant du crédit est ajusté en faisant passer un couple (1,1) à l'état (1,0) pour créer un couple butée. 9. Procédé selon la revendication 8, caracté- risé par le fait que l'on annule un couple butée (1,0) précédent en grillant le bit à 1 de la zone de paiement pour faire passer le couple (1, 0) à l'état (0,0), ce couple étant ignoré par la suite. 10. Procédé selon la revendication 1, carac- térisé par le fait que l'écriture en zone de paiement est effectuée dans des automates de paiement acceptant la carte, et n'est possible que sur présentation d'une première clé connue par tous ces automates de paiement. 11. Procédé seLon La revendication 1, carac- térisé par Le fait que l'écriture en zone de recharge- ment est effectuée dans un automate de rechargement sous contrôle de L'organisme délivrant la carte et n'est possible que sur présentation d'une seconde clé connue par les automates de rechargement agréés par cet organisme.