WO2003013100A9 - Procede et dispositif de mise en compatibilite de communication sur reseau de terminaux, par exemple pour permettre un dialogue avec une application sur carte a puce - Google Patents

Procede et dispositif de mise en compatibilite de communication sur reseau de terminaux, par exemple pour permettre un dialogue avec une application sur carte a puce

Info

Publication number
WO2003013100A9
WO2003013100A9 PCT/FR2002/002455 FR0202455W WO03013100A9 WO 2003013100 A9 WO2003013100 A9 WO 2003013100A9 FR 0202455 W FR0202455 W FR 0202455W WO 03013100 A9 WO03013100 A9 WO 03013100A9
Authority
WO
WIPO (PCT)
Prior art keywords
network
messages
card
gateway
formatting
Prior art date
Application number
PCT/FR2002/002455
Other languages
English (en)
Other versions
WO2003013100A2 (fr
WO2003013100A3 (fr
Inventor
Laurent Lagosanto
Jean-Jacques Vandewalle
Original Assignee
Gemplus Card Int
Laurent Lagosanto
Jean-Jacques Vandewalle
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Gemplus Card Int, Laurent Lagosanto, Jean-Jacques Vandewalle filed Critical Gemplus Card Int
Priority to EP02764979.7A priority Critical patent/EP1415454B1/fr
Priority to CN02819392XA priority patent/CN1640091B/zh
Priority to US10/485,469 priority patent/US8799350B2/en
Priority to ES02764979.7T priority patent/ES2606940T3/es
Publication of WO2003013100A2 publication Critical patent/WO2003013100A2/fr
Publication of WO2003013100A3 publication Critical patent/WO2003013100A3/fr
Publication of WO2003013100A9 publication Critical patent/WO2003013100A9/fr

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0853Network architectures or network communication protocols for network security for authentication of entities using an additional device, e.g. smartcard, SIM or a different communication terminal
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/40Network security protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/08Protocols for interworking; Protocol conversion

Definitions

  • the invention relates to communication over a network, for example between a server terminal and an application terminal. It relates more particularly to a method and device for establishing a communication channel on a network when the terminals do not have the same software interface for exchanging messages on the network.
  • a network for example, between the server terminal and an application terminal.
  • a smart card comprising a service application (Applet) written in high level language, in particular an object oriented language, such as Java, C ++, etc.
  • the assembly constituted by the card and the service application forms a card application.
  • This assembly constitutes a server terminal which can participate in a communication with a local client terminal or over a network.
  • FIG. 1 schematically represents the functional elements which intervene during a communication in local mode between a smart card 2 and a client machine 4, the latter possibly being a terminal in a centralized system.
  • a local link LL ensures the bidirectional exchange between the client machine 4 and the card 2 via respective communication interfaces 6 and 8.
  • the local link LL can be a serial or parallel cable between the client machine 4 and the card 2 (or its reader), or a radio link if the card 2 operates in contactless mode.
  • the client machine 4 includes the client application 10 which must establish a dialogue with a service application 12 integrated into the card 2 and hereinafter referred to as "card application".
  • the card application is produced in a form called "Applet”, which is a term used within the framework of the "Java Card” language.
  • the dialogue is carried out by messages in the high level language emitted by the client application 10 of the machine 4.
  • These messages generally comprise processing orders to be carried out on data which are stored in card 2.
  • m debit purse
  • n credit purse
  • O balance (no parameter) (balance of operations).
  • the commands have a syntactic structure of the "flow (sum)" type (for the case of the aforementioned command m.
  • a first software layer constitutes what is called the representative of the card application 14, also known by the Anglo-Saxon term of "proxy".
  • the representative is a layer developed and coded by the developer of the card application 12, which is used to present a software interface allowing communication with this application. It is a point interface from a functional point of view of the card application, that is to say on the "business" side of the application, entirely dedicated to it.
  • the representative 14 is then used to establish the compatibility of the commands of the client application 10 with those recognized by the card application 12. It is therefore necessary to produce the code of the representative as a function of the card application.
  • the double framing of an element in the figures, used in particular to identify the representative 14, indicates the codes to be developed and transmitted to the client machine 4 in order to be able to use the card application 12.
  • This formatting command is transmitted to a downstream layer 16, called the CF card formatting card, which ensures the transformation of the code resulting from this command into a message format adapted to the communication device. Its main function is to structure the message to be sent to the card application.
  • the format produced by the formatting layer 16 will be of the APDU type (from the Anglo-Saxon "application protocol data unit”); if we pass by a wireless protocol, it will conform to an SMS code (from the Anglo-Saxon "short message service”; it may also be a specific format for a card, such as the JC21RMI format (from "Java Card 2.1 RMI”)
  • a communication protocol is used for this purpose, that is to say a transport layer TRcarte, which is. responsible for sending the message.
  • This layer 18 ensures the transport of the message according to a determined protocol, for example: OTA
  • the transport layer 18 TRcarte
  • the first layer on the side of the interface 8 is a dual transport layer 20 TR card “1 which has the function of” unpacking "each message received on the local link LL.
  • the dual layer 20 TRcarte "1 produces a command to" deform "the message” Msg card ", ie” deformate (Msg card) ".
  • This command is received by a deformation format layer 22 CF card “1 , dual with respect to layer 16 CF card, which produces in response the order of transmit the "do Sthg (parameters)" command to a card control driver 24.
  • the pilot 24 essentially acts as a router, its function being to direct the command thus deformatted towards the card application 12 which is intended for it.
  • the "Message card” entity is an exchange format which contains the name of the method (for example "do Sthg"), and which structures the parameters according to the protocol which will be used next.
  • the card message constitutes the entire method call, therefore its name and parameters, which will be structured according to a communication protocol;
  • the representative constitutes a gateway which allows the client application 10 to dialogue as if the card application 12 were present on the client machine; in other words, it "represents" the service application in the sense that the client application interacts with the representative via the same high-level messages. The representative therefore has the same functional interface, at the same level of access, as the service application in the card.
  • FIG. 2 represents a structure similar to that of. FIG. 1, but applied to the case of a communication on a network R, such as the Internet, between a client machine 30 and a server machine 32. More particularly, the communication is established between a client application 10, installed in the client machine 30, and a network server 34, similar to the card application 12 of FIG. 1, installed in the server machine 32. The network server 34 is then ..represented, at the client machine 30, by a representative network server 36, like the card representative 14 in FIG. 1.
  • the commands from the network server representative 36 are processed successively by a network formatting layer 38 CFnet and a network transport layer 40 TRnet, analogous respectively to the layers 16 CFcarte and 18 TRcarte in FIG. 1.
  • the layer 40 TRnet ensures in particular the splitting messages in frames adapted to transport standards on the R network.
  • the dual transport layer 42 TRnet "1 which receives the frames received from the network R and reconstitutes them into messages as they were at the output of the layer 38 CFnet.
  • the layer 42 TRnet "1 is succeeded by the dual layer 44 CFnet " 1 , which is a network deformatting code having the function of transforming the reconstructed messages into high level language, for example in the form "send” do Sthg "" .
  • the commands from the CFnet "1 layer are transmitted to a network command driver 46, which distribute them to the application intended to process them, in this case the network server 34. It is noted that it is always necessary to develop the specific code for the network server representative 36 as a function of the server 34 which it must represent.
  • the use of the network server representative 36 and of the network command driver 14 at the respective ends of the network R allows the client application 10 of the client machine 30 to abstract from the communication protocols, its operation with regard to the communication remaining at the general format level.
  • the representative and the pilot of commands are generic compared to the communication protocol.
  • the card application will be connected to a network server via a local link, and the client application will be connected to the network server via a network connection.
  • the server representative 36 in FIG. 2 here becomes the representative of the card application (Applet), designated by the reference 36 '.
  • the packets are processed successively by the dual layers 20 TRcarte “1 , and 22 CFcarte “ 1 to obtain the order to transmit the command ("do Sthg") to the command driver card 24. The latter finally transmits the "do Sthg" command to the card application 12.
  • the development of a service application and a client application comprises the following steps:
  • the main links in the communication chain between the client application on the client machine 30 and the card application 2 on the terminal 31 include: a network server 34, a representative of the network server 36 ', and a representative 14 of the card application 12 at the terminal 31.
  • Each of these elements 34, 36 ′ and 14 includes computer code which is cumbersome to write and maintain. If the application changes so that it can exploit other messages, it then becomes necessary to intervene separately on the code of each of these three links, the network representative 36 'having to be thus modified for all machines likely to communicate with the client application.
  • This code must also be deployed, that is to say it is necessary to install the card representative 14 and the network server 34 on the respective terminals, to connect these two links 14 and 34, and then to install the representative on the client application. Then, all of these three links must be linked to ensure good communication, in particular between the network server 34 and the card representative 14.
  • the communication may suffer from a significant delay in response time.
  • the links between each software layer involve interfacing problems which add to the aforementioned delays.
  • connection is established with a remote client, a standard network representative, the network, and the card directly connected to the network. There are no longer any intermediate links between the card and the network.
  • the invention proposes, according to a first aspect, a system establishing a communication channel on a link connecting on the one hand a client application on client machine and on the other hand a service application present on a device dependent on a terminal, the client machine comprising a representative of the service application, characterized in that it further comprises: - a formatting module located at the client machine, downstream of said representative, for format the messages of the client application in a form understandable by the service application, and - a gateway located at the terminal, to receive said messages understandable by the communicating device and. pass them to the service application.
  • the communicating device is a smart card, the service application being a card application.
  • the system also comprises means for securing messages operating at the level of the formatting module or upstream of it in order to. allow secure messages from the formatting module to pass in secure form through the gateway and to the communicating device.
  • the link can comprise a network connecting the client machine and the terminal, the gateway being a gateway of the communicating network-device type.
  • the formatting module can be connected to the network via a concatenation of modules successively composed:
  • the gateway being connected to the network via a concatenation of modules successively composed: - a dual module to the transport module connected to the network to retrieve said messages from the network;
  • the formatting module is connected to the network via a transport module intended to directly receive messages from the formatting module and format them to network standards, and that the network gateway-communicating device is connected to the network via a module dual to the module transport to retrieve directly from it said messages and retransmit them directly to said gateway.
  • the client machine and the terminal can be combined on the same physical medium, being connected by an internal link, the formatting module being provided for transmitting directly on the internal link the messages from the client application formatted to the gateway.
  • the invention provides a terminal assembly specifically adapted to the aforementioned system, characterized in that it comprises a gateway of the communicating network-device type suitable for - receiving and processing messages from a client application equally network format delivered by internal link or by network.
  • the invention provides a method of establishing a communication channel on a link connecting on the one hand a client application on client machine and on the other hand a service application, present on a dependent communicating device.
  • a terminal, the client machine comprising a representative of the service application, characterized in that it comprises:
  • a formatting step carried out at the client machine, downstream of the representative, in order to format the messages of the client application in a form understandable by the service application, and
  • the invention provides for the use of a gateway of the network-communicating device type for receiving messages from a client application and transmitted directly to the gateway by an internal link, the messages being formatted as as network messages.
  • FIG. 1, already described is a diagram synoptic ' of the links involved in achieving communication between a client application and a card application via a local link according to a known technique
  • Figure 2, already described is a block diagram of the links involved in achieving communication between a client machine and a server machine via a network, such as the Internet, according to a known technique
  • Figure 3, already described is a block diagram of the links involved in achieving communication between a client application on a client machine and a card application via a network, by simple combination of the means of Figures 1 and 2;
  • FIG. 4 is a block diagram of the links involved in achieving communication between a client application on a client machine and a card application via a network according to a first embodiment of the invention
  • Figure 5 is a diagram similar to that of Figure 4, showing a variant which constitutes a second embodiment of the invention .
  • Figure ⁇ is a diagram similar to that of Figure 4, showing another variant for the case of a direct connection between the machine > client and the card, which constitutes a third embodiment of the invention.
  • FIG. 4 represents the main elements involved in a first embodiment of the invention.
  • a message transmission chain is established between a client application 10 located on a client machine 30 and a card application (Applet) 12 located in a smart card 2 or any other communicating portable device, associated with a terminal 31.
  • the transmission of messages between the terminal 31 and the card 2 is ensured by a local link LL.
  • the client machine 30 is remote and communicates with the terminal 31 via a network R, such as the Internet.
  • a "Network applet” representative 50 is provided to issue appropriate formatting commands from the messages of the client application 10.
  • the representative "Network applet” 50 will produce a format command" format (“do Sthg").
  • the message "do Sthg” is then coded not in the format of the network R, but directly in a format understandable by the card application 12.
  • This layer 16 ′ has the function of creating a message Msg Card, understandable by a dual layer 22 CF card "1 at the level of card 2, which corresponds to the high level command" do Sthg ".
  • the dual layer 22 can then render the command "do Sthg” in response to a command to format the message Msg Card.
  • the layer, ' 16' CFcarte initiates the process of encapsulation of the message by ' requesting that it be integrated in a table format, bytes "byte []", which constitutes an envelope for the message, understandable for the network R, and inside which it can thus be transported as it is through the network R.
  • the layer 16 'CF card will be followed by a set of layers which will allow the transfer of the message on the network R.
  • this arrangement is obtained by an "exchange" operation which acts on the Msg Card message. So, we. obtains at the output of layer 16 'CFcarte the command "exchange (Msg Card)".
  • This "exchange (Msg Card)" command is then transmitted from the layer 16 'CFard to a GTW representative 52 of the gateway 54.
  • the function of this GTW representative 52 is to control the formatting of the messages presented to them in view of their transport on the network.
  • the GTW representative is a software layer developed specifically to represent a GTW network-card gateway 54 located at the terminal 31.
  • the term gateway is also known by the Anglo-Saxon name of "gateway”.
  • the representative of the GTW gateway 52 replaces the network server 34 of FIGS. 2 and 3. It is generic in the sense that it does not have the same interface as the card application (Applet) 12 contained in the map. Unlike the above-mentioned network server 34, it is not necessary for the representative of the GTW gateway 52 to interpret the content of the messages which it transmits. For this, the CFnet layer 38 is used to "encapsulate", ie to insert in an envelope, the message ' (Msg Card) to be made transit by the gateway GTW network-card 54 according to a format of capsule (or envelope) - which is understandable by a generic gateway.
  • the "exchange" operator constitutes with the GTW representative 52 a new interface vis-à-vis the network-card gateway 54 at the terminal 31, as will appear below.
  • the GTW 52 gateway representative transmits to a layer. 38 CFnet network formatting a formatting command of the "format (" exchange (Msg Card) ")" type.
  • the CFnet layer 38 then sends the command in the form of a network message "Msg Network” to a transport layer 40 TRnet.
  • the latter ensures the transmission over the network R of the command in the form of TRnet packets in the format of network messages.
  • the functions of the layers 38 CFnet and 40 TRnet are completely similar to those of the corresponding layers in FIG. 2.
  • the format of the message leaving the layer 40 TRnet is composed of two layers: - an "interior" layer, where we find the card type format, understandable by the card application 12, for example of the type APDU, SMS or Java Card RMI, and
  • an overlay which corresponds to the formatting of the network, for example according to the Internet protocol.
  • the message from . the layer 40 TRnet is successively treated by dual layers 42 TRnet “1 and 44 CFnet “ 1 , which produce the inverse functions of the layers -40 TRnet and 38 CFnet of the client machine 30 respectively.
  • the command "deformate (Msg network)” at the output of layer 42 TRnet " 1 and the command" send ("exchange (Msg Card)") of layer 44 CFnet '1 .
  • the command" send (“exchange (Msg Card) " ) "is received by a network command driver 46, which directs it to the GTW network-card gateway 54 of the terminal.
  • the GTW gateway 54 then sends the message "Msg Card” to a transport layer 18 TR card of the terminal 31. This ensures conversion to the transport format, according to a specific packet division, for transmission on the local link LL to card 2.
  • the message thus transmitted is processed by the dual layers 20 TRcarte “1 and 22 CFcarte “ 1 , which respectively produce the command "deformate (Msg Card) and the command" send ("do Sthg ")".
  • the latter is received by a card command pilot 24 which transmits the "do Sthg" command to the card application (Applet) 12.
  • FIG. 4 The organization according to FIG. 4 is remarkable in that it only requires the development of a single code specific to the card application, namely the "Network applet" representative 50 of this application at the client machine 30 ( arrow F3). unlike the case of figure 3, it is useless to develop, code and manage a specific network server, nor a representative of the card application on the server. This results in a great simplification of the implementation of a network communication between the client application 10 and the card application 12.
  • the implementation of the GTW network-card gateway 54 is easy, since it is not specific to the card 12 application.
  • the GTW network-card gateway 54 is sufficient to be simply specific to established communication protocols, an input protocol and an output protocol, to ensure communication.
  • the network-card GTW gateway 54 is capable of receiving a message according to an Internet protocol for re-transmitting it according to a card protocol.
  • FIG. 5 represents the organization of a second embodiment of the invention, suitable for communication between the client machine 30 and the terminal . 31 according to a mode known by the name "socket".
  • a mode known by the name "socket" mode an exchange format is pre-established between the client and the server, which makes it possible to overcome the GTW 52 network gateway representative and the CFnet layer 38 at the client machine 31, and the dual layer 44 CFnet "1 and of the network control driver 46 at the terminal 31.
  • the configuration and the operating principle of this embodiment are identical to that of FIG. 4.
  • FIG. 6 represents the organization of a third embodiment of the invention, adapted for the case of a client application 10 located on the same physical medium as the terminal comprising the GTW gateway 54.
  • the physical medium 60 integrates an internal and direct link LL 'between the layer CF card 16' and the gateway GTW 54. It is noted that this is a gateway of the internal link-card type.
  • the "exchange" type commands at the output of the CF card layer 16 ′ thus sent directly to the GTW network-card gateway 54 are retransmitted by the latter to the card application 12 by the successive layers 18 to 24, as in the previous cases .
  • the assembly 60 can connect via the same GTW network-card gateway 54 as well to the client application 10 that it integrates as to any other client application connected by network, which provides versatility in the system architecture.
  • FIGS. 4 to 6 also make it possible to manage the message returns (path by dotted arrows) from the card application 12 to the client application 10 by simple reversal of the transformations to the successive layers.

Abstract

Pour établir un canal de communication sur une liaison (R) reliant d'une part une application cliente (10) sur machine cliente (30) et d'autre part une application de service (12) présente sur un dispositif (2) dépendant d'un terminal (31), la machine cliente comportant un représentant (50) de l'application de service, il est prévu en outre : un module de formatage (16') situé au niveau de la machine cliente (30), en aval du représentant (50), destiné à formater les messages de l'application cliente sous une forme (exchange(Msg carte)) compréhensible par l'application (12) de service, et une passerelle (54) située au niveau du terminal (31), destinée à réceptionner les messages compréhensibles par la carte et à les transmettre à l'application (12) de service. Typiquement, le dispositif communicant est une carte à puce (2), l'application de service étant une application carte (12). La liaison (R) est typiquement un réseau, par exemple de type Internet.

Description

PROCEDE ET DISPOSITIF DE MISE EN COMPATIBILITE DE COMMUNICATION SUR RESEAU DE TERMINAUX, PAR EXEMPLE POUR PERMETTRE UN DIALOGUE AVEC UNE APPLICATION
SUR CARTE A PUCE
L'invention concerne la communication sur réseau, par exemple entre un terminal serveur et un terminal application. Elle vise plus particulièrement un procédé et dispositif permettant d'établir un canal de communication sur un réseau alors que les terminaux n'ont pas la même interface logicielle d'échange de messages sur le réseau. Une telle situation se présente, par exemple, lorsque le terminal serveur est matérialisé par une carte à puce ou analogue. Dans ce qui suit, on considérera le cas d'une communication avec une carte à puce comportant une application de service (Applet) écrite en langage de haut niveau, notamment un langage orienté objet, tel que Java, C++, etc. L'ensemble constitué par la carte et l'application de service forme une application sur carte. Cet ensemble constitue un terminal serveur pouvant participer à une communication avec un terminal client local ou sur réseau.
La figure 1 représente schématiquement les éléments fonctionnels qui interviennent lors d'une communication en mode local entre une carte à puce 2 et une machine cliente 4, cette dernière pouvant être un terminal dans un système centralisé. Une liaison locale LL assure l'échange bidirectionnel entre la machine cliente 4 et la carte 2 via des interfaces de communication respectives 6 et 8. La liaison locale LL peut être un câble série ou parallèle entre la machine cliente 4 et la carte 2 (ou son lecteur) , ou encore une liaison hertzienne si la carte 2 fonctionne en mode sans contact. La machine cliente 4 comporte l'application cliente 10 qui doit établir un dialogue avec une application de service 12 intégrée à la carte 2 et désignée ci-après "application carte". Dans l'exemple, l'application carte est réalisée sous une forme dite "Applet", qui est un terme consacré dans le cadre du langage "Java Card". Au niveau des applications cliente et de service, le dialogue s'effectue par des messages dans le langage de haut niveau émis par l'application cliente 10 de la machine 4. Ces messages comprennent généralement des ordres de traitement à effectuer sur des données qui sont stockées au sein de la carte 2. On aura alors, par exemple, pour un porte- monnaie électronique sur carte : m = débit porte- monnaie (paramètre = somme (valeur numérique) , n = crédit porte-monnaie (paramètre = somme (valeur numérique) ; O = balance (pas de paramètre) (bilan des opérations) . A titre illustratif, les commandes ont une structure syntaxique du type "débit (somme) " (pour le cas de la commande m précitée.
Ces commandes ne peuvent pas transiter en tant que tel sur la liaison locale LL, étant donné que celle-ci impose l'utilisation d'un protocole et d'un formatage spécifiques. On installe alors, du côté machine cliente de la liaison locale LL, une succession de couches logicielles entre l'application cliente et 1 ' interface de communication 6.
Partant de l'application cliente 10, une première couche logicielle constitue ce que 1 ' on appelle le représentant de l'application carte 14, aussi connu par le terme anglo-saxon de "proxy". Le représentant est une couche développée et codée par le développeur de l'application carte 12, qui sert à présenter une interface logicielle permettant la communication avec cette application. Il s'agit d'une interface du point de vue fonctionnel de l'application carte, c'est-à-dire du côté "métier" de l'application, entièrement dédiée à celle-ci. Le représentant 14 sert alors à établir la compatibilité des commandes de l'application cliente 10 avec celles reconnues par 1 ' application carte 12. Il est donc nécessaire de produire le code du représentant en fonction de l'application carte.
Le double cadrage d'un élément dans les figures, utilisé notamment pour identifier le représentant 14, indique les codes à développer et à transmettre à la machine cliente 4 afin de pouvoir utiliser 1 ' application carte 12.
Ainsi, pour reprendre l'exemple d'une commande de l'application cliente 10 de structure syntaxique "do Sthg" avec des paramètres, soit "do Sthg (paramètres) " , le représentant produira - à supposer que cette commande soit reconnue par l'application carte 12 - une commande dite de formatage, soit "format (do Sthg (paramètres) ) " . Il est à noter que les paramètres peuvent, le cas échéant, être inexistants, donnant la structure "do SthgO". Dans ce qui suit, les paramètres ne sont pas désignés explicitement. Ainsi, pour reprendre l'exemple de la commande m précitée, sa représentation dans la forme générale sera "do. Sthg (paramètres)".
Cette commande de formatage est transmise à une couche 16 en aval, dite de formatage carte CFcarte, qui assure la transformation du code issu de cette commande en un format de message adapté au dispositif de communication. Elle a notamment pour fonction de structurer le message à envoyer à l'application carte. A titre d'exemple, si la commande est destinée directement à la carte 2, le format produit par la couche de formatage 16 sera du type APDU (de l'anglo- saxon "application protocol data unit") ; si on passe par un protocole sans fil, il sera conforme à un code SMS (de l'anglo-saxon "short message service" ; il peut aussi s'agir d'un format spécifique à une carte, tel que le format JC21RMI (de l'anglo-saxon "Java Card 2.1 RMI" )
Une fois le message structuré, il est prêt à être envoyé sur la liaison locale LL. On utilise à cette fin un protocole de communication, soit une couche 18 de transport TRcarte, qui est . chargé d'émettre le message. Cette couche 18 assure le transport du message selon un protocole déterminé, par exemple : OTA
(de l'anglo-saxon "over the air"), PCMCIA, "Sériai port", etc. La couche de transport 18 TRcarte
"empaquette" ainsi les messages ayant été formatés dans une structure adaptée au transport sur la liaison locale LL. Les messages ainsi empaquetés sont alors transmis à la carte 2, via les interfaces de communication 6 et 8 et la liaison locale LL.
Du côté de la carte 2 , on retrouve les mêmes couches que sur la machine cliente 4 pour réaliser successivement les opérations inverses (dites opérations "duals") pour parvenir, à partir des données transmises depuis la couche de transport 18 TRcarte à la commande de haut niveau, en l'occurrence "do Sthg". Ainsi, au niveau de la carte 2, la première couche du côté de l'interface 8 est une couche de transport dual 20 TRcarte"1 qui a pour fonction de "désempaqueter" chaque message reçu sur la liaison locale LL. Dans le cas du message provenant de la commande "do Sthg", la couche dual 20 TRcarte"1 produit une commande de "déformater" le message "Msg carte", soit "déformât (Msg carte) " .
Cette commande est reçue par une couche de déformatage 22 CFcarte"1, dual vis-à-vis de la couche 16 CFcarte, qui produit en réponse l'ordre de transmettre la commande "do Sthg (paramètres) " à un pilote de commande de carte 24.
Le pilote 24 agit essentiellement comme routeur, sa fonction étant de diriger la commande ainsi dêformatée vers 1 ' application carte 12 qui lui est destinée.
La flèche FI "code spécifique Applet" dans la figure, entre l'application carte 12 et le représentant
14, indique que pour le développement d'une application carte (par exemple une "Applet") , on doit installer le représentant de cette application sur l'application cliente.
Bien entendu, les mêmes traitements des messages sont appliqués, en ordre inversé, pour les retours de l'application carte 12 vers l'application cliente 10, comme le montre les flèches en pointillées.
On note que dans la figure, tout ce qui existe entre les différents rectangles sont des appels à une routine du rectangle situé en aval . L'entité "Message carte" (Msg Carte) est un format d'échange qui contient le nom de la méthode (par exemple "do Sthg") , et qui structure les paramètres selon le protocole qui va être utilisé ensuite . Le message carte constitue tout l'appel de méthode, donc son nom et ses paramètres, lesquels seront structurés selon un protocole de communication;
Quand ce message est envoyé à la couche de transport 18 TRcarte, on passe du protocole APDU au protocole dit TPDU, qui constitue le protocole de transport. Pour envoyer le message, on le décompose en une série de bits et de paquets sur la ligne. Le message est alors effectivement un codage d'une fonction. Quand il passe sur une couche de transport, il se présente sous forme de trames.. On comprend que le représentant constitue une passerelle qui permet à l'application cliente 10 de dialoguer comme si l'application carte 12 était présente sur le la machine cliente ; autrement dit, il "représente" l'application de service en ce sens que l'application cliente interagit avec le représentant via les mêmes messages de haut niveau. Le représentant présente donc la même interface fonctionnelle, au même niveau d'accès, que l'application de service dans la carte. De la sorte, lorsque l'application cliente est appelée à communiquer avec 1 ' application de service dans la carte, cette application cliente n'aura pas a encoder les messages pour les passer à un module de pilotage (connu sous le terme anglo-saxon de "driver") , mais n'aura plutôt qu'à émettre la commande souhaitée. Les couches sont toujours les mêmes, quels que soient ' les dispositifs. Ainsi, pour la communication entre un client et un terminal distant, la stratification des couches reste invariable . Cette communauté des couches est illustrée à la figure 2, qui représente une structure analogue à celle de . la figure 1, mais appliquée au cas d'une communication sur un réseau R, tel qu'Internet, entre une machine cliente 30 et une machine serveur 32. Plus particulièrement., la communication est établie entre une application cliente 10, installée dans la machine cliente 30, et un serveur réseau 34, analogue à l'application carte 12 de la figure 1, installée dans la machine serveur 32. Le serveur réseau 34 est alors ..représenté, au niveau de la machine cliente 30, par un représentant serveur réseau 36, à l'instar du représentant carte 14 de la figure 1.
Dans la figure 2, et celles qui suivent, les interfaces matérielles de communication ne sont pas représentées pour des raisons de simplicité, étant donné que ces moyens sont bien connus .
Les commandes issues du représentant serveur réseau 36 sont traitées successivement par une couche de formatage réseau 38 CFnet et une couche de transport réseau 40 TRnet, analogues respectivement aux couches 16 CFcarte et 18 TRcarte de la figure 1. La couche 40 TRnet assure notamment le découpage des messages en trames adaptées aux normes du transport sur le réseau R.
Du côté de la machine serveur 32, on retrouve la couche de transport dual 42 TRnet"1 qui réceptionne les trames reçues du réseau R et les reconstituent en messages tels qu'ils se trouvaient en sortie de la couche 38 CFnet.
La couche 42 TRnet"1 est succédée par la couche dual 44 CFnet"1, qui est un code de déformatage réseau ayant pour fonction de transformer les messages reconstitués en langage de haut niveau, par exemple sous la forme "envoyer "do Sthg"".
Les commandes issues de la couche CFnet"1 sont transmises à un pilote de commande réseau 46, qui les distribuent vers l'application destinée à les traiter, en l'occurrence le serveur réseau 34. On note qu'il est toujours nécessaire de développer le code spécifique pour le représentant serveur réseau 36 en fonction du serveur. 34 qu'il doit représenter .
L'utilisation du représentant serveur réseau 36 et du pilote commande réseau 14 aux extrémités respectives du réseau R permet à l'application cliente 10 de la machine cliente 30 de s'abstraire des protocoles de communication, son fonctionnement en ce qui concerne la communication demeurant au niveau du format général. Le représentant et le pilote de commande sont génériques par rapport au protocole de communication.
A partir des structures de transmission de messages selon les figures 1 et 2, il est envisageable, par simple concaténation de moyens, de faire communiquer . une application carte avec une application cliente via un réseau R, et ainsi de faire communiquer la carte avec tout terminal distant.
Dans ce cas de figure, l'application carte sera reliée à un serveur réseau via .une liaison locale, et l'application cliente sera reliée au serveur réseau via une connexion réseau.
La mise en oeuvre consiste alors à une concaténation des chaînes de transmission des figures 1 et 2, comme le montre la figure 3. Les éléments de cette figure déjà évoqués dans le cadre de la figure 1 ou 2 portent les mêmes références et ne seront pas décrits à nouveau par souci de concision.
Selon cette concaténation, on retrouve du côté de la machine cliente 30 l'application cliente 10 suivie de ses trois couches : le représentant "Applet réseau."
(appel à la méthode) 36, le code de formatage réseau
(codage de l'appel) 38 CFnet et la couche de transport réseau 40 TRnet. Dans le cas d'espèce, le représentant serveur 36 de la figure 2 devient ici le représentant de l'application carte (Applet), désigné par la référence 36 ' .
Au niveau du terminal 31 associé à la carte 2, en aval du réseau R de la couche de transmission de paquets TRnet, on remonte toutes les couches duals, à savoir successivement : 42 TRnet"1 et 44 CFnet"1 pour transmettre une commande ("do Sthg") au pilote de commande 46, afin qu'elle soit aiguillée vers le serveur réseau 34. Ensuite, la commande "do Sthg" est réexpédiée depuis le serveur réseau 34 vers le représentant de l'application carte 14 au sein du terminal 31. Le représentant émet en réponse la commande "format ("do Sthg") vers la couche 16 CFcarte qui émet alors le message carte (Msg Carte) à la couche 18 de transport 18 TRcarte pour que ce message soit transmis sous forme de paquets sur la liaison locale LL vers la carte 2.
Au niveau de la carte 2, les paquets sont traités successivement par les couches duals 20 TRcarte"1, et 22 CFcarte"1 pour obtenir l'ordre de transmettre la commande ("do Sthg") au pilote de commande carte 24. Ce dernier transmet enfin la commande "do Sthg" à 1 ' application carte 12. En résumé, l'élaboration d'une application de service et d'une application cliente comprend les étapes suivantes :
- écriture d'une application de service,
- écriture d'un représentant pour les terminaux, - réalisation de l'application cliente avec par exemple des interfaces utilisateur (fenêtres, menus, etc.), en communiquant dans un langage de haut niveau avec le représentant de l'application carte.
On constate que les maillons principaux de la chaîne de communication entre l'application cliente sur la machine cliente 30 et l'application carte 2 sur le terminal 31 comprennent : un serveur réseau 34, un représentant du serveur réseau 36', et un représentant 14 de l'application carte 12 au niveau du terminal 31. Chacun de ces éléments 34, 36' et 14 comprend du code informatique qui est lourd à écrire et à entretenir. Si l'application change pour qu'elle puisse exploiter d'autres messages, il devient alors nécessaire d'intervenir séparément sur le code de chacun de ces trois maillons, le représentant réseau 36' devant être ainsi modifié pour toutes les machines susceptibles de communiquer avec l'application cliente.
Une partie de ce code peut être élaboré par des techniques de génération de représentant, mais il n'en demeure pas moins que la mise en place ou la modification d'une application dans un environnement réseau est fastidieuse.
Ce code doit par ailleurs être déployé, c'est-à- dire qu'il est nécessaire d'installer le représentant carte 14 et le serveur réseau 34 sur les terminaux respectifs, de relier ces deux maillons 14 et 34, et ensuite d'installer le représentant sur l'application cliente. Ensuite, on doit effectuer la liaison de l'ensemble de ces trois maillons pour assurer la bonne communication, notamment entre le serveur réseau 34 et le représentant carte 14.
Les difficultés de déploiement sont alors de l'ordre de la gestion et de la maintenance. Les risques d'erreur sont d'autant plus grands que le code de ces maillons est complexe et long à produire, surtout s ' il est écrit manuellement .
Par ailleurs, du fait du nombre important de couches logicielles entre l'application cliente 10 et l'application de service 12, la communication, peut souffrir d'un délai significatif dans le temps de réponse. D'autre part, les liaisons entre chaque couche logicielle impliquent des problèmes d' interfaçage qui s'ajoutent aux délais précités.
Cela se traduit par un délai significatif dans le temps de réponse, puisqu'un traitement est effectué à chaque maillon.
Enfin, cette approche se prête mal à la sécurisation d'un bout à l'autre de la chaîne. En effet, il est alors nécessaire de prévoir une étape de chiffrement et de déchiffrement des messages respectivement en amont et en aval de chaque maillon 36', 34 et 14 pour que les messages puissent être compris par ces derniers .
Il a été récemment proposé dans "Objets mobiles embarqués dans une carte à puce internet, pour le commerce d'objets virtuels multimédia", P. Urien, Bull
R&D, Conférence OCM 2000, Objets, Composants, Modèles
"Passé, Présent, Futur", 18 mai 2000, École des Mines de
Nantes, de résoudre ces problèmes d'accès par réseau à une carte distante en mettant la carte au format du réseau. L'idée est alors qu'au lieu d'avoir un protocole particulier pour communiquer avec la carte, ce qui oblige d'installer un pilote entre le terminal et la carte, la carte est directement accessible comme s'il s'agissait d'un serveur sur le réseau.
Avec cette approche, la liaison s'établit avec un client distant, un représentant réseau standard, le réseau, et la carte directement reliée au réseau. Il n'y a plus de maillons intermédiaires entre la carte et le réseau.
Cependant, il s'avère qu'il est impossible de réaliser une telle carte dans l'état actuel de la technique.
Au vu de ce qui précède, l'invention propose, selon un premier aspect, un système établissant un canal de communication sur une liaison reliant d'une part une application cliente sur machine cliente et d'autre part une application de service présente sur un dispositif dépendant d'un terminal, la machine cliente comportant un représentant de l'application de service, caractérisé en ce.qu'il comprend en outre: - un module de formatage situé au niveau de la machine cliente, en aval dudit représentant, pour formater les messages de l'application cliente sous une forme compréhensible par l'application de service, et - une passerelle située au niveau du terminal, pour réceptionner lesdits messages compréhensibles par le dispositif communiquant et à . les transmettre à l'application de service. Dans un mode de réalisation avantageux, le dispositif communicant est une carte à puce, l'application de service étant une application carte.
Avantageusement, le système comporte en outre des moyens de sécurisation des messages fonctionnant au niveau du module de formatage ou en amont de celui-ci afin de . permettre aux messages sécurisés issus du module de formatage de transiter sous forme sécurisée à travers la passerelle et jusqu'au dispositif communicant . Selon un mode de réalisation, la liaison peut comprendre un réseau reliant la machine cliente et le terminal, la passerelle étant une passerelle du type réseau-dispositif communicant.
Dans ce cas de figure, le module de formatage peut être relié au réseau via une concaténation de modules composée successivement :
- d'un représentant de ladite passerelle, pour recevoir les commandes de formatage du module de formatage et produire en réponse des commandes de formatage de ces commandes selon un format compréhensible par ladite passerelle ;
- d'un module de formatage réseau pour formater lesdites commandes du représentant de la passerelle en messages au format réseau ; et - d'un module de transport pour adapter lesdits messages aux normes du réseau ; la passerelle étant reliée au réseau via une concaténation de modules composée successivement : - d'un module dual au module de transport relié au réseau pour récupérer lesdits messages issus du réseau ;
- d'un module dual au module de formatage réseau pour récupérer les commandes telles qu'issues du représentant de ladite passerelle ; et d'un pilote de commandes réseau pour transmettre les messages provenant du module précédant vers la passerelle. Dans un autre mode de réalisation, on peut prévoir que :
- le module de formatage soit relié au réseau via un module de transport destiné à recevoir directement les messages du module de formatage et les formater aux normes du réseau, et que la passerelle réseau-dispositif communicant soit reliée au réseau via un module dual au module de transport pour récupérer directement de celui-ci lesdits messages et les retransmettre directement à ladite passerelle.
Selon encore un autre mode de réalisation, . la machine cliente et le terminal peuvent être réunis sur un même support physique, étant reliés par une liaison interne, le module de formatage étant prévu pour transmettre directement sur la liaison interne les messages de l'application cliente formatés à la passerelle.
Selon un deuxième autre aspect, l'invention prévoit un ensemble formant terminal spécifiquement adapté au système précité, caractérisé en ce qu'il comprend une passerelle du type réseau-dispositif communicant adaptée pour - recevoir et traiter indifféremment des messages d'une application cliente au format réseau livrés par liaison interne ou par réseau. Selon un troisième aspect, l'invention prévoit un procédé d'établissement d'un canal de communication sur une liaison reliant d'une part une application cliente sur machine cliente et d'autre part une application de service, présente sur un dispositif communicant dépendant d'un terminal, la machine cliente comportant un représentant de l'application de service, caractérisé en ce qu'il comprend :
- une étape de formatage réalisée au niveau de la machine cliente, en aval du représentant, afin de formater les messages de l'application cliente sous une forme compréhensible par l'application de service, et
- la constitution d'une passerelle au niveau du terminal, afin de réceptionner lesdits ,. messages compréhensibles par la carte et les transmettre à l'application de service.
Les caractéristiques optionnelles de l'invention présentées dans le cadre du système (premier aspect) peuvent s'appliquer mutatis utandis au procédé supra selon le second aspect, et ne seront pas répétées par souci de concision.
Selon un quatrième aspect, l'invention prévoit l'utilisation d'une passerelle du type réseau- dispositif communicant pour la réception de messages issus d'une application cliente et transmis directement à la passerelle par une liaison interne, les messages étant formatés en tant que messages réseau.
L'invention et les avantages qui en découlent apparaîtront plus clairement à la lecture des modes de réalisation préférés, donnés uniquement à titre d'exemples non-limitatifs, par référence aux dessins annexés dans lesquels : la figure 1 , déjà décrite, est un schéma synoptique' des maillons intervenant pour réaliser une communication entre une application cliente et une application carte via une liaison locale selon une technique connue ; la figure 2, déjà décrite, est un schéma synoptique des maillons intervenant pour réaliser une communication entre une machine cliente et une machine serveur via un réseau, tel qu'Internet, selon une technique connue ; la figure 3, déjà décrite, est un schéma synoptique des maillons intervenant pour réaliser une communication entre une application cliente sur une machine cliente et une application carte via un réseau, par simple combinaison des moyens des figures 1 et 2 ;
- la figure 4 est un schéma synoptique des maillons intervenant pour réaliser une communication entre une application cliente sur une machine cliente et une application carte via un réseau selon un premier mode de réalisation de l'invention ;
• - la figure 5 est un schéma analogue à celui de la figure 4, représentant une variante qui constitue un deuxième mode de réalisation de l'invention.; et
- la figure β est un schéma analogue à celui de la figure 4, représentant une autre variante pour le cas d'une liaison directe entre la machine> cliente et la carte, qui constitue un troisième mode de réalisation de l'invention.
Dans l'ensemble des figures 4 à 6, les éléments déjà présentés dans le cadre des figures 1 à 3 portent les mêmes références et ne seront pas décrits à nouveau par souci de concision. La figure 4 représente les éléments principaux qui interviennent dans un premier mode de réalisation de l'invention.
Conformément à ce mode, une chaîne de transmission de messages est établie entre une application cliente 10 située sur une machine cliente 30 et une application carte (Applet) 12 située dans une carte à puce 2 ou tout autre dispositif portatif communicant, associé à un terminal 31. La transmission de messages entre le terminal 31 et la carte 2 est assurée par une liaison locale LL. La machine cliente 30 est distante et communique avec le terminal 31 via un réseau R, tel qu'Internet.
La chaîne de transmission sera décrite dans le cadre d'un message, en l'occurrence la. commande "do Sthg", émis depuis l'application cliente 10 vers l'application carte 12.
Au niveau de la machine cliente 30, on prévoit un représentant "Applet réseau" 50 pour émettre des commandes de formatage appropriés à partir des messages de l'application cliente 10. Ainsi, dans le cas du message "do Sthg", le représentant "Applet réseau" 50 produira une commande de formatage "format ("do Sthg").
Conformément à l'invention, le message "do Sthg" est ensuite codé non pas dans le format du réseau R, mais directement dans un format compréhensible- par l'application carte 12. A cette fin, on prévoit en aval du représentant "Applet -réseau" 50 une couche 16' de code de formatage carte CFcarte. Cette couche 16' a pour fonction de créer un message Msg Carte, compréhensible par une couche dual 22 CFcarte"1 au niveau de la carte 2, qui correspond à la commande de haut niveau "do Sthg". La couche dual 22 pourra alors rendre la commande "do Sthg" en réponse à une commande de déformatage du message Msg Carte. Pour assurer le transport du message Msg Carte, la couche, ' 16' CFcarte initialise le processus d' encapsulation du message en' demandant que celui-ci soit intégré dans un format de tableau, d'octets "byte[]", qui constitue une enveloppe pour le message, compréhensible pour lé réseau R, et à l'intérieur de laquelle il pourra ainsi être transporté tel quel à travers le réseau R. A cette fin, la couche 16' CFcarte sera suivie d'un ensemble de couches qui va permettre le transfert du message sur le réseau R. Dans l'exemple, cette disposition est obtenue par une opération "exchange" (échange) qui agit sur le message Msg Carte. Ainsi, on. obtient en sortie de la couche 16' CFcarte la commande "exchange (Msg Carte)".
Cette commande "exchange (Msg Carte)" est ensuite transmise depuis la couche 16' CFcarte vers un représentant GTW 52 de la passerelle 54. La fonction de ce représentant GTW 52 est de commander le formatage des messages qui lui sont présentés en vu de leur transport sur le réseau. Le représentant GTW est une couche logicielle développée spécifiquement pour représenter une passerelle GTW réseau-carte 54 située au niveau du terminal 31. Le terme passerelle est également connu par la dénomination anglo-saxonne de "gateway".
On note que le représentant de la passerelle GTW 52 remplace le serveur de réseau 34 des figures 2 et 3. Il est générique en- ce sens qu'il n'a pas la même interface que l'application carte (Applet) 12 contenue dans la carte. En effet, à la différence du serveur réseau 34 précité, il n'est pas nécessaire au représentant de la passerelle GTW 52 d'interpréter le contenu des messages qu'elle fait transiter. Pour cela, la couche CFnet 38 sert à "encapsuler", soit à insérer dans une enveloppe, le message' (Msg Carte) à faire transiter par la passerelle GTW réseau-carte 54 selon un format de capsule (ou d'enveloppe)- qui est compréhensible par une passerelle générique. Dans ce contexte, l'opérateur "exchange" constitue avec le représentant GTW 52 une nouvelle interface vis-à-vis de la passerelle réseau-carte 54 au niveau du terminal 31, comme il apparaîtra plus loin. Ainsi, le représentant de passerelle GTW 52 émet à destination d'une couche. 38 de formatage réseau CFnet une commande de formatage du type "format ("exchange (Msg Carte)")". La couche CFnet 38 émet alors la commande sous forme de message réseau "Msg Réseau" vers une couche de transport 40 TRnet. Cette dernière assure la transmission sur le réseau R de la commande sous forme de paquets TRnet au format des messages réseau. Les fonctions des couches 38 CFnet et 40 TRnet sont en tout point analogues à celles des couches correspondantes de la figure 2.
On note que le format du message en sortie de la couche 40 TRnet est composé de deux couches : - une couche "intérieure", où l'on retrouve le format de type carte, compréhensible par l'application carte 12, par exemple du type APDU, SMS ou Java Card RMI , et
- une surcouche, qui correspond au formatage du réseau, par exemple selon le protocole Internet.
Conceptuellement, on met le message, en l'occurrence la commande "do Sthg" dans une enveloppe nommée "exchange", laquelle est formatée avec une adresse et véhiculée par la couche de transport 40 TRnet .
De l'autre côté du réseau, au niveau du terminal 31, le message issu de. la couche 40 TRnet est traité successivement par des couches duals 42 TRnet"1 et 44 CFnet"1, qui produisent les fonctions inverses respectivement des couches -40 TRnet et 38 CFnet de la machine cliente 30. Comme décrit dans le cadre de la figure 2, on obtient alors successivement la commande "déformât (Msg réseau) " en sortie de la couche 42 TRnet" 1 et la commande "envoyer ("exchange (Msg Carte)") de la couche 44 CFnet'1. En sortie de la couche CFnet"1, la • commande "envoyer ("exchange (Msg Carte)»)" est réceptionnée par un pilote de commande réseau 46, qui la dirige vers la passerelle GTW réseau-carte 54 du terminal. La passerelle GTW 54 envoie alors le message "Msg Carte" vers une couche de transport 18 TRcarte du terminal 31. Celle-ci assure la conversion au format de transport, selon un découpage par paquet spécifique, pour la transmission sur la liaison locale LL vers la carte 2. Au niveau de la carte, le message ainsi transmis est traité par les couches duals 20 TRcarte"1 et 22 CFcarte"1, qui produisent respectivement la commande "déformât (Msg Carte) et la commande "envoyer ("do Sthg")". Cette dernière est réceptionnée par un pilote de commande carte 24 qui transmet la commande "do Sthg" à l'application carte (Applet) 12.
L'organisation selon la figure 4 est remarquable en ce qu'elle ne nécessite de développer qu'un seul code spécifique à l'application carte, à savoir le représentant "Applet réseau" 50 de cette application au niveau de la machine cliente 30 (flèche F3) . contrairement au cas de la figure 3, il est inutile de développer, de coder et de gérer un serveur réseau spécifique, ni un représentant de l'application carte sur le serveur. Il en résulte une grande simplification de la mise en oeuvre d'une communication sur réseau entre l'application cliente 10 et 1 'application carte 12.
Par ailleurs, la mise en oeuvre de la passerelle GTW réseau-carte 54 est aisée, puisque celle-ci n'est pas spécifique à l'application carte 12. En effet, il suffit à la passerelle GTW réseau-carte 54 d'être spécifique simplement aux protocoles de communication établis, soit un protocole d'entrée et un protocole de sortie, pour assurer la communication. Dans l'exemple, la passerelle GTW réseau-carte 54 est capable de réceptionner un message selon un protocole Internet pour le rë-émettre selon un protocole carte.
La figure 5 représente l'organisation d'un deuxième mode de réalisation de 1 ' invention, adapté à une communication entre la machine cliente 30 et le terminal .31 selon un mode connu par l'appellation "socket". Conformément au mode "socket", un format d'échange est préétabli entre le client et le serveur, ce qui permet de s'affranchir du représentant passerelle réseau GTW 52 et de la couche 38 CFnet au niveau de la machine cliente 31, et de la couche dual 44 CFnet"1 et du pilote de commande réseau 46 au niveau du terminal 31. Hormis la suppression de ces éléments, la configuration et le principe de fonctionnement de ce mode de réalisation sont identiques à celui de la figure 4.
La figure 6 représente l'organisation d'un troisième mode, de réalisation de l'invention, adapté pour le cas d'une application cliente 10 située sur le même support physique que le terminal comportant la passerelle GTW 54.
Selon cette configuration, le support physique 60 intègre une liaison interne et directe LL' entre la couche CFcarte 16 ' et la passerelle GTW 54. On note que celle-ci est une passerelle du type liaison interne- carte. Les commandes de type "exchange" en sortie de la couche CFcarte 16 ' ainsi envoyées directement à la passerelle GTW réseau-carte 54 sont retransmises par cette dernière à l'application carte 12 par les couches successives 18 à 24, comme dans les cas précédents.
En variante, l'ensemble 60 peut se connecter via la même passerelle GTW réseau-carte 54 aussi bien sur l'application cliente 10 qu'il intègre que sur toute autre application cliente reliée par réseau, ce qui confère une polyvalence au niveau de 1 ' architecture système .
Bien entendu, les systèmes de communication des figures 4 à 6 permettent également de gérer les retours de message (chemin par flèches en pointillés) depuis l'application carte 12 vers l'application cliente 10 par simple inversion des transformations aux couches successives.
Dans tous les modes de réalisation, il est aisé de réaliser une sécurité "de bout en bout" entre l'application cliente 10 et l'application carte 12. En effet, puisque la passerelle GTW réseau-carte 54 n'a pas besoin d'interpréter le contenu des messages, il devient possible de sécuriser les messages au niveau de la couche 16 CFcarte de la machine cliente et les maintenir sécurisés jusqu'à la couche dual 22 CFcarte"1 de la carte 2, où ils peuvent être décodés.
L'invention a été décrite dans le cadre d'applications sur carte à puce 2 accédées par une application cliente sur un terminal distant (figures 4 et 5) ou local (figure 6) . Il est cependant clair que les principes de l'invention ont des champs d'application beaucoup plus larges, couvrant l'ensemble du domaine de la mise en compatibilité de systèmes communicants. A titre d'exemples non-limitatifs, 1 ' invention peut être mise en oeuvre en outre avec :
- tout dispositif communicant, portatif ou pas ;
- tout type de protocole de communication sur réseau ou sur liaison locale ; - tout type d'application à chaque extrémité de la chaîne de communication ;
- tout protocole de structuration et de formatage de messages selon les couches logicielles et les langages utilisés ; - un nombre illimité de machines communicantes reliées.

Claims

R E V E N D I C A T I O N S
1. Système établissant un canal de communication sur une liaison (R; LL') reliant d'une part une application cliente (10) sur machine cliente (30) et d'autre part une application de service (12) présente sur un dispositif (2) dépendant d'un terminal (31) , la machine cliente comportant un représentant (50) de l'application de service, caractérisé en ce qu'il comprend en outre: - un module de formatage (16') situé au niveau de la machine cliente (30) , en aval dudit représentant (50), pour formater les messages de l'application cliente sous une forme (exchange (Msg carte)) compréhensible par l'application de service (12), et une passerelle (54) située au niveau du terminal (31) , pour réceptionner lesdits messages compréhensibles par le dispositif communicant et à les transmettre à l'application de service (12).
2. Système selon la revendication 1, caractérisé en ce que le dispositif communicant est une carte à puce (2), l'application de service étant une application carte (12) .
3. Système selon la revendication 1 ou 2 , caractérisé en ce qu'il comporte en outre des moyens de sécurisation des messages fonctionnant au niveau du module de formatage (.16') ou en amont de celui-ci afin de permettre aux messages sécurisés issus du module de formatage de transiter sous forme sécurisée à travers la passerelle (54) et jusqu'au dispositif communicant (2) .
4. Système selon l'une quelconque des revendications 1 à 3, caractérisé en ce que ladite liaison comprend un réseau (R) reliant la machine cliente (30) et le terminal (31) , ladite passerelle (54) étant une passerelle du type réseau-dispositif communicant .
5. Système selon la revendication 4, caractérisé en ce que le module de formatage (16') est relié au réseau (R) via une concaténation de modules composée successivement : d'un représentant (52) de ladite passerelle
(54) , pour recevoir les commandes de formatage
(exchange (Msg carte)) du module de formatage (16') et produire en réponse des commandes (format ("exchange (Msg carte))) de formatage de ces commandes selon un format compréhensible par ladite passerelle (54) ; d'un module de formatage réseau (38) pour formater lesdites commandes du représentant (52) de la passerelle en messages (exchange Msg Réseau) au format réseau ; et d'un module de transport (40) pour adapter lesdits messages (exchange Msg Réseau) aux normes du réseau (R) ; et en ce que . ladite passerelle (54) est reliée au réseau (R) via une concaténation de modules composée, successivement :
- d'un module (42) dual au module de transport (40) relié au réseau (R) pour récupérer lesdits messages (exchange Msg Réseau) issus du réseau ;
- d'un module (44) dual au module de formatage réseau (38) pour récupérer les commandes telles qu'issues du représentant (52) de ladite passerelle
(54) ; et d'un pilote de commandes réseau (46) pour transmettre les messages (exchange (Msg carte) ) provenant du module précédent (44) vers ladite passerelle (54) (figure 4) .
6. Système selon la revendication 4, caractérisé en ce que : le module de formatage (16') est relié au réseau (R) via un module de transport (40) destiné à recevoir directement lesdits messages (exchange (Msg carte) ) du module de formatage et les formater aux normes du réseau (R) , et en ce que la passerelle réseau-dispositif communicant (54) est reliée au réseau (R) via un module (42) dual au module de transport (40) pour récupérer directement de celui-ci lesdits messages (exchange (Msg carte) ) et les retransmettre directement- à ladite passerelle (54) (figure 5) .
7. Système selon l'une quelconque des revendications 1 à 3, caractérisé en ce que ladite machine cliente (30) et ledit terminal (31) , réunis sur un même support physique (60) , sont reliés par une liaison interne (LL'), et en ce que le module de formatage (16') est prévu pour transmettre directement sur ladite liaison interne les messages de l'application cliente formatés (exchange (Msg carte)) à ladite passerelle (54) (figure 6) .
8. Ensemble formant terminal (31; 60) spécifiquement adapté au système selon l'une quelconque des revendications 1 à 7, caractérisé en ce qu'il comprend une passerelle du type réseau-dispositif communicant (54) adaptée pour recevoir et traiter indifféremment des messages d'une application cliente au format réseau livrés par liaison interne (LL1) ou par réseau (R) .
9. Procédé d'établissement d'un canal de communication sur une liaison (R; LL') reliant d'une part une application cliente (10) sur machine cliente
(30) et d'autre part une application de service (12), présente sur un dispositif communicant (2) dépendant d'un terminal (31), la machine cliente comportant un représentant (50) de l'application de service, caractérisé en ce qu'il comprend :
- une étape de formatage (16') réalisée au niveau de la machine cliente (30) , en aval dudit représentant (50), afin de formater les messages de l'application cliente sous une forme . (exchange (Msg carte) ) compréhensible par l'application de service (12), et
- la constitution d'une passerelle (54) au niveau du terminal (31) , afin de réceptionner lesdits messages compréhensibles par la carte, et les transmettre à l'application de service (12).
10. Procédé selon la revendication 9, caractérisé en ce que qu'il est mis en oeuvre avec un dispositif communicant du type carte à puce (2), l'application de service étant une application carte (12) .
11. Procédé selon l'une quelconque des revendications 9 ou 10 caractérisé en ce qu'il comporte en outre une étape de cryptage des messages lors du ou avant le formatage (16') afin de permettre aux messages cryptés issus du module de formatage de transiter sous forme cryptée à travers la passerelle (54) et jusqu'au dispositif communicant (2) .
12. Procédé selon l'une quelconque des revendications 9 à 11, caractérisé en ce que, la machine cliente (30) étant reliée - au terminal (31) par un réseau (R) , l'étape de formatage (16') est suivie, au niveau de la machine cliente (30) , successivement des étapes de :
- représentation (52) de ladite passerelle (54) , pour recevoir des commandes de formatage (exchange (Msg carte)) du module de formatage (16') et produire en réponse des commandes de formatage de ces commandes selon un format compréhensible par ladite passerelle (54) ; formatage des messages issus de ladite représentation (52) de la passerelle (54) en messages (exchange Msg Réseau) au format réseau; et
- d'adaptation- (40) desdits messages (exchange Msg Réseau) aux normes du réseau (R) ; et en ce que les messages reçus du réseau (R) au niveau du terminal (31) sont traités successivement par des étapes de :
- récupération (42) desdits messages (exchange Msg Réseau) à partir des messages issus du réseau ; récupération (44) des commandes telles qu'issues du représentant (52) de ladite passerelle (54) ; et pilotage de commandes réseau (46) pour transmettre les messages (exchange Msg carte) provenant du module précédent (44) vers, ladite passerelle (54) .
13. Procédé selon l'une quelconque des revendications 9 à 12, caractérisé en ce que : l'étape de formatage (16') est suivie directement par une étape d'adaptation (40) desdits messages (exchange Msg Réseau) aux normes du réseau (R) ; et en ce que ces derniers sont traités (42) au niveau du terminal (31) pour récupérer lesdits messages (exchange (Msg carte)) issus de l'étape de formatage et les retransmettre directement à ladite passerelle (54) .
14. Utilisation d'une passerelle du type réseau- dispositif communicant (54) pour la réception de messages issus d'une application cliente (10) et transmis directement à ladite passerelle par une liaison interne (LL'), lesdits messages étant formatés en tant que messages réseau.
PCT/FR2002/002455 2001-08-02 2002-07-11 Procede et dispositif de mise en compatibilite de communication sur reseau de terminaux, par exemple pour permettre un dialogue avec une application sur carte a puce WO2003013100A2 (fr)

Priority Applications (4)

Application Number Priority Date Filing Date Title
EP02764979.7A EP1415454B1 (fr) 2001-08-02 2002-07-11 Procede et dispositif de mise en compatibilite de communication sur reseau de terminaux, par exemple pour permettre un dialogue avec une application sur carte a puce
CN02819392XA CN1640091B (zh) 2001-08-02 2002-07-11 建立可与智能卡应用对话的终端的网络通信兼容性的方法和设备
US10/485,469 US8799350B2 (en) 2001-08-02 2002-07-11 Method and device for establishing network communication compatibility of terminals
ES02764979.7T ES2606940T3 (es) 2001-08-02 2002-07-11 Método y dispositivo para el establecimiento de compatibilidad de una comunicación entre terminales en la red, por ejemplo para permitir el diálogo con una aplicación de tarjeta inteligente

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
FR0110390A FR2828358B1 (fr) 2001-08-02 2001-08-02 Procede et dispositif de mise en compatibilite de communication sur reseau de terminaux, par exemple pour permettre un dialogue avec une application sur une carte a puce
FR01/10390 2001-08-02

Publications (3)

Publication Number Publication Date
WO2003013100A2 WO2003013100A2 (fr) 2003-02-13
WO2003013100A3 WO2003013100A3 (fr) 2003-12-04
WO2003013100A9 true WO2003013100A9 (fr) 2004-02-19

Family

ID=8866236

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/FR2002/002455 WO2003013100A2 (fr) 2001-08-02 2002-07-11 Procede et dispositif de mise en compatibilite de communication sur reseau de terminaux, par exemple pour permettre un dialogue avec une application sur carte a puce

Country Status (6)

Country Link
US (1) US8799350B2 (fr)
EP (1) EP1415454B1 (fr)
CN (1) CN1640091B (fr)
ES (1) ES2606940T3 (fr)
FR (1) FR2828358B1 (fr)
WO (1) WO2003013100A2 (fr)

Families Citing this family (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2828358B1 (fr) * 2001-08-02 2004-01-16 Gemplus Card Int Procede et dispositif de mise en compatibilite de communication sur reseau de terminaux, par exemple pour permettre un dialogue avec une application sur une carte a puce
US6968191B2 (en) * 2001-11-26 2005-11-22 Qualcomm Inc System and method for traffic channel dormancy in wireless communication socket mode
US20040127256A1 (en) * 2002-07-30 2004-07-01 Scott Goldthwaite Mobile device equipped with a contactless smart card reader/writer
DE10310350A1 (de) * 2003-03-10 2004-10-07 Giesecke & Devrient Gmbh Kommunikation zwischen tragbaren Datenträgern
US8095179B2 (en) * 2004-10-14 2012-01-10 Nokia Corporation Proxy smart card applications
EP1969461A1 (fr) * 2005-12-29 2008-09-17 Gemplus Systeme et procede pour le deploiement d'applications web personnalisees
KR100942093B1 (ko) 2007-05-30 2010-02-12 미쓰비시덴키 가부시키가이샤 전기차의 브레이크 제어 장치
FR2940566B1 (fr) * 2008-12-18 2011-03-18 Electricite De France Procede et dispositif de transfert securise de donnees numeriques
EP2336986A1 (fr) * 2009-12-17 2011-06-22 Gemalto SA Procédé de personnalisation d'une application intégrée dans un jeton électronique sécurisé
US9203742B2 (en) * 2010-09-16 2015-12-01 Nec Corporation Network system and frame communication method
JP5344382B2 (ja) 2010-11-02 2013-11-20 日本電気株式会社 ネットワークシステム及びフレーム通信方法
US8769009B2 (en) 2011-02-18 2014-07-01 International Business Machines Corporation Virtual communication techniques
US8825533B2 (en) 2012-02-01 2014-09-02 International Business Machines Corporation Intelligent dialogue amongst competitive user applications
EP3425865B1 (fr) * 2017-07-05 2019-12-18 Siemens Mobility GmbH Procédé et dispositif de transmission unidirectionnelle sans répercussion de données à un serveur d'application à distance
BR112021005174A2 (pt) 2018-10-02 2021-06-15 Capital One Services, Llc sistema de ressincronização de contador, método de ressincronização de um contador em um cartão sem contato, e, cartão sem contato

Family Cites Families (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5742845A (en) * 1995-06-22 1998-04-21 Datascape, Inc. System for extending present open network communication protocols to communicate with non-standard I/O devices directly coupled to an open network
US5889941A (en) * 1996-04-15 1999-03-30 Ubiq Inc. System and apparatus for smart card personalization
CA2293546A1 (fr) * 1997-06-13 1998-12-17 Clayton Simmons Carte a puce, telephone sans fil, systeme et procede d'acces et de communication par internet
US5983273A (en) 1997-09-16 1999-11-09 Webtv Networks, Inc. Method and apparatus for providing physical security for a user account and providing access to the user's environment and preferences
DE19802684A1 (de) 1998-01-24 1998-12-17 Gmeiner Michael Comerzielles Spiel mit Globaler Vernetzungsmöglichkeit, wo nur Spielanteile gewonnen werden, die vom Hersteller in Umlauf gebracht wurden
US20040154027A1 (en) * 1998-10-14 2004-08-05 Jean-Jacques Vandewalle Method and means for managing communications between local and remote objects in an object oriented client server system in which a client application invokes a local object as a proxy for a remote object on the server
US20010039587A1 (en) * 1998-10-23 2001-11-08 Stephen Uhler Method and apparatus for accessing devices on a network
FR2790629A1 (fr) * 1999-02-19 2000-09-08 Bull Cp8 Procede d'activation d'applications localisees dans une carte a puce par un navigateur du type dit "web"
FR2791159B1 (fr) * 1999-03-15 2001-05-04 Bull Cp8 Procede d'acces a un objet a l'aide d'un navigateur de type "web" cooperant avec une carte a puce et architecture pour la mise en oeuvre du procede
FR2803706B1 (fr) * 1999-09-27 2002-03-08 Bull Cp8 Procede et architecture de pilotage a distance d'une station d'utilisateur via un reseau de type internet et leur application a un demonstrateur de carte a puce
FR2800540B1 (fr) * 1999-10-28 2001-11-30 Bull Cp8 Terminal securise muni d'un lecteur de carte a puce destine a communiquer avec un serveur via un reseau de type internet
FR2805059A1 (fr) * 2000-02-10 2001-08-17 Bull Cp8 Procede de chargement d'une piece de logiciel dans une carte a puce, notamment du type dit "applet"
US7191234B2 (en) * 2000-10-13 2007-03-13 Gemplus Deployment of smart card based applications via mobile terminals
US7340748B2 (en) * 2000-12-21 2008-03-04 Gemplus Automatic client proxy configuration for portable services
US6807561B2 (en) * 2000-12-21 2004-10-19 Gemplus Generic communication filters for distributed applications
US7003663B2 (en) * 2000-12-22 2006-02-21 Gemplus Distribution of deployment information for remote applications
US6862614B2 (en) * 2001-02-20 2005-03-01 Gemplus Adaptation of service applications to heterogeneous execution context by means of smart cards
FR2828358B1 (fr) * 2001-08-02 2004-01-16 Gemplus Card Int Procede et dispositif de mise en compatibilite de communication sur reseau de terminaux, par exemple pour permettre un dialogue avec une application sur une carte a puce

Also Published As

Publication number Publication date
US20050021600A1 (en) 2005-01-27
CN1640091A (zh) 2005-07-13
CN1640091B (zh) 2010-12-22
EP1415454A2 (fr) 2004-05-06
EP1415454B1 (fr) 2016-06-15
US8799350B2 (en) 2014-08-05
FR2828358B1 (fr) 2004-01-16
WO2003013100A2 (fr) 2003-02-13
FR2828358A1 (fr) 2003-02-07
ES2606940T3 (es) 2017-03-28
WO2003013100A3 (fr) 2003-12-04

Similar Documents

Publication Publication Date Title
EP1415454B1 (fr) Procede et dispositif de mise en compatibilite de communication sur reseau de terminaux, par exemple pour permettre un dialogue avec une application sur carte a puce
EP1208684B1 (fr) Procede de transmission de flux de donnees a haut debit sur un reseau de type internet entre un serveur et un terminal a carte a puce
WO2001060018A1 (fr) Procede de gestion de transmission de donnees multimedias via internet et carte a puce pour la mise en oeuvre du procede
WO2001060026A1 (fr) Procede d'enregistrement d'un usager sur un serveur d'annuaire d'un reseau de type internet et/ou de localisation d'un usager sur ce reseau, et carte a puce pour la mise en oeuvre du procede
FR2800540A1 (fr) Terminal securise muni d'un lecteur de carte a puce destine a communiquer avec un serveur via un reseau de type internet
EP1188116A1 (fr) Procede de chargement d'une piece de logiciel dans une carte a puce, notamment du type dit "applet"
FR2810841A1 (fr) Procede pour le traitement et la transmission de donnees numeriques sur un reseau de telephonie mobile, notamment a la norme "gsm", et systeme embarque a puce electronique
FR2837585A1 (fr) Installation, passerelle et procede de telechargement d'informations entre des equipements embarques sur un aeronef et des moyens de chargement non-embarques
WO2001024475A2 (fr) Procede et architecture de pilotage a distance d'une station d'utilisateur via un reseau de type internet
WO2009056607A1 (fr) Systeme pour le deploiement de composants logiciels sur des unites de calcul limitees en capacite de traitement
WO2002033866A2 (fr) Protocole de transmission d'une pluralite de flux logiques d'echange multiple de couples de commande/reponse sur un canal physique unique d'echange entre maitre et esclave et systeme de suivi et de controle d'execution d'appliquettes correspondant
EP3135017A1 (fr) Procédés d'échange de données avec un équipement comprenant des moyens de communication radio
EP0615370B1 (fr) Système de communication avec un réseau
WO2011051268A1 (fr) Procédé d'établissement d'une session applicative, dispositif et notification correspondante
WO2002039369A1 (fr) Protocole de communication entre une carte a puce de type pro-active et son terminal d'accueil
EP3888330A1 (fr) Procédé de configuration d'un commutateur ethernet d'un réseau embarqué d'un véhicule automobile
EP3005625B1 (fr) Composant et procede de gestion de communication
EP4027619A1 (fr) Système d extrémité pour un système de communication avionique et système de communication avionique associé
FR2846175A1 (fr) Procede de controle d'acces a un reseau de communication, reseau sans fil, dispositif et programmes d'ordinateurs correspondant
EP3874700A1 (fr) Système de transmission de données
EP2282262A1 (fr) Dispositif communicant, méthode de communication entre ledit dispositif et un réseau, unité d'interface entre ledit dispositif et ledit réseau
WO2008031987A1 (fr) Systeme comprenant une chaine monetique, procede mettant en oeuvre ce systeme, service web et serveur de services web
EP1689158A1 (fr) Procédé de configuration d'un terminal fixe
FR2835372A1 (fr) Systeme et procede de gestion de l'installation d'un module de commande d'un equipement, au sein d'un reseau audiovisuel domestique
FR2835370A1 (fr) Systeme et procede de gestion d'une communication entre un module emetteur et au moins un module destinataire, au sein d'un reseau audiovisuel domestique

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A2

Designated state(s): AE AG AL AM AT AU AZ BA BB BG BR BY BZ CA CH CN CO CR CU CZ DE DK DM DZ EC EE ES FI GB GD GE GH GM HR HU ID IL IN IS JP KE KG KP KR KZ LC LK LR LS LT LU LV MA MD MG MK MN MW MX MZ NO NZ OM PH PL PT RO RU SD SE SG SI SK SL TJ TM TN TR TT TZ UA UG US UZ VN YU ZA ZM ZW

Kind code of ref document: A2

Designated state(s): AE AG AL AM AT AU AZ BA BB BG BY BZ CA CH CN CO CR CU CZ DE DM DZ EC EE ES FI GB GD GE GH HR HU ID IL IN IS JP KE KG KP KR LC LK LR LS LT LU LV MA MD MG MN MW MX MZ NO NZ OM PH PL PT RU SD SE SG SI SK SL TJ TM TN TR TZ UA UG US UZ VN YU ZA ZM

AL Designated countries for regional patents

Kind code of ref document: A2

Designated state(s): GH GM KE LS MW MZ SD SL SZ UG ZM ZW AM AZ BY KG KZ RU TJ TM AT BE BG CH CY CZ DK EE ES FI FR GB GR IE IT LU MC PT SE SK TR BF BJ CF CG CI GA GN GQ GW ML MR NE SN TD TG

Kind code of ref document: A2

Designated state(s): GH GM KE LS MW MZ SD SL SZ TZ UG ZM ZW AM AZ BY KG KZ MD RU TJ TM AT BE BG CH CY CZ DE DK EE ES FI FR GB GR IE IT LU MC NL PT SE SK TR BF BJ CF CG CI CM GA GN GQ GW ML MR NE SN TD TG

121 Ep: the epo has been informed by wipo that ep was designated in this application
DFPE Request for preliminary examination filed prior to expiration of 19th month from priority date (pct application filed before 20040101)
WWE Wipo information: entry into national phase

Ref document number: 2002764979

Country of ref document: EP

COP Corrected version of pamphlet

Free format text: PAGE 19, DESCRIPTION, REPLACED BY CORRECT PAGE 19

WWE Wipo information: entry into national phase

Ref document number: 2002819392X

Country of ref document: CN

WWP Wipo information: published in national office

Ref document number: 2002764979

Country of ref document: EP

REG Reference to national code

Ref country code: DE

Ref legal event code: 8642

WWE Wipo information: entry into national phase

Ref document number: 10485469

Country of ref document: US

NENP Non-entry into the national phase

Ref country code: JP

WWW Wipo information: withdrawn in national office

Country of ref document: JP