EP1169839A1 - Method for registering a user on an internet-type network directory server and/or for locating a user on said network, and smart card therefor - Google Patents

Method for registering a user on an internet-type network directory server and/or for locating a user on said network, and smart card therefor

Info

Publication number
EP1169839A1
EP1169839A1 EP01907762A EP01907762A EP1169839A1 EP 1169839 A1 EP1169839 A1 EP 1169839A1 EP 01907762 A EP01907762 A EP 01907762A EP 01907762 A EP01907762 A EP 01907762A EP 1169839 A1 EP1169839 A1 EP 1169839A1
Authority
EP
European Patent Office
Prior art keywords
smart card
software
data
user
type
Prior art date
Legal status (The legal status 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 status listed.)
Withdrawn
Application number
EP01907762A
Other languages
German (de)
French (fr)
Inventor
Pascal Urien
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
CP8 Technologies SA
Original Assignee
Bull CP8 SA
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 Bull CP8 SA filed Critical Bull CP8 SA
Publication of EP1169839A1 publication Critical patent/EP1169839A1/en
Withdrawn legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K19/00Record carriers for use with machines and with at least a part designed to carry digital markings
    • G06K19/06Record carriers for use with machines and with at least a part designed to carry digital markings characterised by the kind of the digital marking, e.g. shape, nature, code
    • G06K19/067Record carriers with conductive marks, printed circuits or semiconductor circuit elements, e.g. credit or identity cards also with resonating or responding marks without active components
    • G06K19/07Record carriers with conductive marks, printed circuits or semiconductor circuit elements, e.g. credit or identity cards also with resonating or responding marks without active components with integrated circuit chips
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/45Network directories; Name-to-address mapping
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/2866Architectures; Arrangements
    • H04L67/30Profiles
    • H04L67/306User profiles
    • 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/16Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
    • 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/16Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
    • H04L69/161Implementation details of TCP/IP or UDP/IP stack architecture; Specification of modified or new header fields
    • H04L69/162Implementation details of TCP/IP or UDP/IP stack architecture; Specification of modified or new header fields involving adaptations of sockets based mechanisms
    • 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
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols

Definitions

  • the invention relates to a method of registering a user on a directory server of a network, in particular of the Internet type and / or of locating a user on such a network, using smart cards connected. terminals equipped with a smart card reader.
  • the invention also relates to a smart card for implementing this method.
  • Internet network In the context of the invention, the term “Internet network” must be understood in its most general sense. It concerns, in addition to the Internet itself, corporate or similar private networks, of the so-called “intranet” type, and networks extending them outwards, of the so-called “extranet” type, and generally any network in which data exchanges are carried out according to an Internet type protocol. In what follows such a network will be called generically "Internet network”.
  • terminal should be understood in a general sense.
  • the aforementioned terminal can in particular be constituted by a personal computer operating under various operating systems, such as WINDOWS or UNIX (both being registered trademarks). It can also consist of a workstation, a laptop or a so-called dedicated card terminal.
  • dedicated Internet terminals having only a minimum of own IT resources, or even no permanent storage means, of the hard disk type.
  • OSI Open System Interconnection
  • ISO Open System Interconnection
  • a given layer offers its services to the layer immediately above it and requires other services from the layer which is immediately below it, via appropriate interfaces.
  • Layers communicate using primitives. They can also communicate with layers of the same level. In some architectures, several layers may be nonexistent.
  • Internet user uses Internet terminals which have a fixed “IP” address, or variable when using an Internet service provider, generally known by the acronym "ISP” (for "Internet Service Provider).
  • ISP Internet Service Provider
  • a first drawback is constituted by the fact that an "IP" address is not associated with an Internet user, but with a computer system connected to the Internet. Even if the computer system has a fixed address, there is no a priori correspondence between an "IP” address and a natural person.
  • the user connects to so-called “IRC” servers (for "Internet Relay Chat”).
  • IRC Internet Relay Chat
  • These servers associate an identifier of the Internet user, known as "UserlD”, with his "IP” address.
  • the identifier is generally constituted by its e-mail address, or "e-mail” according to English terminology, but any pseudonym can also be used.
  • the servers “IRC” will be called more generally “directory servers", which will simply be called “SA”.
  • One of the first constraints encountered is therefore the location of an Internet user on the Internet, that is to say the establishment of a correspondence between a fixed identifier and an "IP" address.
  • the location of an Internet user on the Internet that is to say the establishment of the aforementioned correspondence, presupposes that he has been previously registered in the directory server "SA".
  • the address of an Internet user on the Internet therefore consists of the pair: "Address SA” - "UserlD”.
  • "subscriber” means a “physical” entity. By extension, it can be a
  • a user indicates his location on the Internet by a voluntary act by supplying the server (directory) with his current "IP” address using a registration protocol which will be called below " PE ".
  • Subscriber Profile is generally used to denote all the information which is supplied to the directory server "SA" when the subscriber (internet user) is registered, and for example: - l address of the "Directory Server"("SA”); the subscriber identifier ("UserlD”); subscribers (identified by their "UserlD”) with which the user accepts to communicate or to whom he wishes to notify his location in the network; and the information it accepts to make public on the directory server (for example: name, nationality, contacts sought, etc.). ;
  • IP intellectual property
  • SA directory server
  • PL location protocol
  • the subscriber profile "PA” is, by nature, specific to the subscriber, but may also depend on the characteristics of the directory server, in particular on the type and nature of the information which must be supplied to it or that he can accept.
  • the "PL” protocol is, like the protocol
  • PE of the so-called owner type, since it addresses a directory server which is a priori non-standardized or which meets universally recognized standards.
  • the terminal used by any subscriber is also specific, in the sense that, if this subscriber wishes to change terminal, he must find on the new terminal used, at least the software or software associated with the "PL protocol ", admitting that it has carried out a preliminary phase of registration on the first terminal, by appealing to the "PE” protocol and by providing its "PA” profile to the "SA” directory server. Indeed, the presence of the "PL” protocol will be necessary to address the directory server and have access to the data recorded in it, in particular the "IP” addresses of the correspondents sought and their "SA” profiles.
  • a smart card-based application system generally has the following main components: a smart card; a host system constituting the aforementioned terminal; - a communication network, namely the Internet network in the preferred application; and an application server connected to the Internet.
  • FIG. 1A schematically illustrates an example of architecture of this type.
  • the terminal for example a personal computer, includes a smart card reader 3. This reader 3 may or may not be physically integrated into the terminal 1.
  • the smart card 2 has an integrated circuit 20 whose input-output connections are flush with the surface of its support to authorize a supply of electrical energy and communications with the terminal 1.
  • the latter comprises access circuits 11 to the Internet network RI. These circuits can be constituted by a modem to connect to a switched telephone line or to a higher speed communication channel: integrated services digital network ("ISDN”), cable or satellite links, etc.
  • ISDN integrated services digital network
  • the circuits 11 allow connection to the Internet RI network, directly or via an Internet service provider ("Internet Service Provider" or "ISP", according to English terminology).
  • ISP Internet Service Provider
  • Terminal 1 naturally includes all the circuits and organs necessary for its proper functioning, and which have not been shown for the purpose of simplifying the drawing: central unit, random access memory and fixed memory, mass memory with magnetic disk, floppy drive and / or CédéRom, etc.
  • the terminal 1 is also connected to conventional peripherals, integrated or not, such as a display screen 5, a keyboard 6a and a mouse 6b, etc.
  • the terminal 1 can be put in communication with servers or all computer systems connected to the RI network, of which only one, 4, is illustrated in FIG. 1 A.
  • the access circuits 11 put the terminal 1 in communication with the servers 4 thanks to a particular software 10, called "WEB” browser, or “browser” according to English terminology. This allows access to various applications or data files distributed over the entire RI network, generally in a "client-server” mode.
  • communications on networks are carried out in accordance with protocols meeting standards comprising several superimposed software layers.
  • communications are carried out according to protocols specific to this type of communications, which will be detailed below, but which also include several software layers.
  • the communication protocol is chosen according to the application more particularly targeted: interrogation of "WEB” pages, file transfers, electronic mail (e-mel, or “e-mail” according to Anglo-Saxon terminology), forums or “news”, etc.
  • FIG. 1 C The logical architecture of the system comprising a terminal, a smart card reader and a smart card is represented diagrammatically in FIG. 1 C. It is described by the ISO 7816 standard, which itself comprises several sub-assemblies:
  • FIG. 1B on the terminal side 1, only the layers meeting the ISO 7816-3 standard, referenced 101, and a "APDU" order manager (ISO 7816-4 standard), referenced 102, have been represented.
  • the layers corresponding to ISO 7816-3 are referenced 200 and the "ADPU” order manager (ISO 7816-4 standard) is referenced 201.
  • the applications are referenced A- ⁇ ,. .., Aj, ..., An; n being the maximum number of applications present on the smart card 2.
  • An application, Aj, present in the smart card 2 dialogues with the terminal 1 by means of a set of orders.
  • This game typically presents writing orders and reading orders.
  • the order format is known by the English abbreviation of "APDU” (for "Application Protocol Data Unit”). It is defined by the aforementioned ISO 7816-4 standard.
  • a command “APDU” is noted “APDU.command” and a response “APDU” is noted “APDU.response”.
  • terminal 1 only dialogs with one application at a time.
  • a new “APDU SELECT” has the effect of abandoning the current application and choosing another one.
  • the “APDU” manager software sub-assembly 201 makes it possible to choose a particular application A ⁇ in the smart card 2, to store the application thus chosen, and to transmit and / or receive “APDUs” to and from this application. . In summary of what has just been described, the selection of an application
  • the invention aims to overcome the drawbacks of the methods and devices of the known art, and some of which have just been recalled, while meeting the needs which are felt.
  • the applications necessary for the implementation of the recording (“PE”) and location (“PL”) protocols, as well as the data characterizing the subscriber profile (“ PA ") are files stored, in whole or in part, in memories of a smart card, the executable type files being standard applications of the aforementioned" GCA "type.
  • the smart card behaves like a server / client of the "WEB" type for the terminal associated with it.
  • a specific communication software layer is provided in the smart card and its counterpart in the terminal.
  • the term “specific” should be understood as specific to the process of the invention. Indeed, these layers of communications, called specific, are trivialized whatever the application considered. In particular, they are independent of the applications necessary for the implementation of the "PE” and “PL” protocols. They only intervene in the two-way data exchange process between the smart card and the terminal, on the one hand, and the smart card and the network, on the other hand.
  • the specific communication software layers notably comprise software components, called “intelligent agents", allowing in particular protocol conversions.
  • the intelligent agents will be referred to hereinafter more simply as “agents”.
  • agents paired in the respective specific communication layers associated with the terminal and the smart card.
  • sessions are established between paired agents.
  • the method of the invention makes it possible to activate applications of conventional type, that is to say of the aforementioned "CGA” type, located in a smart card, without having to modify them in any way.
  • one or more particular intelligent agents known as script translators are provided, which receive requests from a browser and translate them into "APDU" orders understandable by the "CGA” type application. Therefore, a function similar to that known elsewhere under the name "CGI” is implemented in the smart card in conventional "WEB” servers. This function makes it possible to implement an application in the smart card by an Internet protocol of the "HTTP" type.
  • the main object of the invention is therefore a method of putting a first user into contact with at least one directory server, with a view to registering and / or locating at least one second user on a network in particular.
  • connection being effected by means of a terminal provided with a smart card reader and at least one piece of software called recording and / or location software, said terminal being connected to each of said directory servers via said Internet type network and communicating with said smart card according to a first determined protocol, characterized in that at least one of said pieces of software is stored in said smart card; in that this smart card comprising a first piece of software, forming a specific communication protocol layer, and said terminal comprising a second piece of software, forming a specific communication protocol layer, said first and second pieces of software further comprise at least one pair of first paired software entities, each of said entities cooperating with each other so as to allow the establishment of a bidirectional data exchange session between at least said terminal and said smart card, and / or said Internet-type network, so that said smart card offers the functionality of a "WEB" client / server; in that said smart card comprises at least a second software entity cooperating with said second specific piece of software so that said smart card offers a so-called "CGI" gateway interface functionality
  • the invention also relates to a smart card for the implementation of this method.
  • FIGS. 1A and 1B illustrate the hardware and logic architectures, respectively, of a example of a smart card-based application system connected to an Internet network according to known art
  • FIG. 2 schematically illustrates an example of application system based on smart card according to the invention, the latter acting as client / server "WEB", according to one aspect of the invention
  • Figure 3 is a state diagram of a session between software entities called intelligent agents, according to one aspect of the invention
  • FIG. 4 ilii stre in a simplified manner the logical architecture of a system according to the invention in which the smart card comprises intelligent agents
  • FIG. 5 illustrates in a simplified way the logical architecture of a system according to another aspect of the invention according to which the smart card comprises intelligent agents translating scripts, so as to implement a so-called "CGI"function
  • FIG. 6A schematically illustrates a first step in the phase of registering an Internet user on a directory server
  • - Figures 6B and 6C illustrate examples of "HTLM" forms usable for this recording phase
  • FIG. 6D schematically illustrates the main steps of the registration phase of a user on a directory server
  • FIG. 6E schematically illustrates the main steps of the registration phase of an Internet user with several directory servers
  • FIG. 7 schematically illustrates the main steps of the phase of locating a user on the Internet by interrogating a directory server
  • FIG. 8 schematically illustrates a smart card architecture according to the invention having a portable multi-directory database functionality.
  • FIG. 2 schematically illustrates an example of a smart card-based application system according to a first aspect of the invention, enabling the latter to act as a client / server "WEB.
  • the terminal 1 comprises circuits 11 for access to the RI network, consisting for example of a modem. These circuits group together the lower software layers, Ci and C2, which correspond to the "physical" and “data link” layers. Also shown are the upper layers, C3 and C4, which correspond to the "network addressing"("IP", in the case of the Internet) and "transport"("TCP") layers.
  • the upper application layer (“http”, “ftp”, "e-mail”, etc.) has not been shown.
  • the interface between the lower layers, Ci and C2, and the upper layers, C3 and C4, is constituted by a software layer generally called "low layer driver".
  • the upper layers, C3 and C4, rely on this interface and are implemented by means of specific function libraries or network libraries 14, with which they correspond.
  • TCP / IP is implemented by means of libraries known as “sockets”.
  • This organization allows a browser 10 to make requests to a server 4, for consulting "WEB” pages (“HTTP” protocol), for transferring files (“FTP” protocol) or sending electronic mail ( "e-mail” protocol), in a completely classic way in itself.
  • HTTP HyperText Transfer Protocol
  • FTP Transfer Protocol
  • e-mail electronic mail
  • the terminal 1 also includes a card reader 3, integrated or not.
  • the card reader 30 also includes two lower layers, CC1 (physical layer) and CC2 (data link layer), playing a role similar to layers Ci and C2.
  • the software interfaces with the layers CC1 and CC2 are described, for example, by the specification "PC / SC" ("part 6, service provider").
  • the layers themselves, CC1 and CC2 are in particular described by ISO standards 7816-1 to 7816-4, as has been recalled.
  • An additional software layer 16 forms the interface between the application layers (not shown) and the lower layers, CC1 and CC2.
  • the main function assigned to this layer 16 is a multiplexing / demultiplexing function.
  • the communications with the smart card 2a take place according to a paradigm similar to that used for the manipulation of files in an operating system of the "UNIX" type (registered trademark): OPEN ("OPEN”), READ (“READ "), WRITE, CLOSE, etc.
  • OPEN OPEN
  • READ READ
  • WRITE WRITE
  • CLOSE CLOSE
  • CCai physical layer
  • CCa2 data link layer
  • the specific layer 13 interfaces with the "low layer drivers” 15, with the libraries 14 of the network layers, C3 and C4, and with the protocol layers of the card reader 3, that is to say the layers lower, CC1 and CC2, via the multiplexing layer 16.
  • the specific layer 13 allows the transfer of network packets to and from the smart card 2a. In addition, it adapts existing applications such as the Internet browser 10, e-mail, etc., for uses implementing the smart card 2a.
  • the specific layers, 13 and 23a are subdivided into three main software elements: a module, 130 or 230a, for transferring blocks of information between layers 13 and 23a, via the conventional layers CC1, CC2, CCai and CCa2; one or more pieces of software, called "intelligent agents", 132 or 232a, which perform, for example, protocol conversion functions; and a specific configuration management module, 131 and 231a, respectively; module which can be likened to a particular intelligent agent.
  • agents intelligent agents
  • CCa2 ensure the exchange between the smart card 2a and the terminal 1.
  • the ISO 7816-3 protocol will preferably be used, in block mode.
  • each protocol layer is associated with a certain number of primitives which allow the exchange of data between layers of the same level and from one layer to another.
  • the primitives associated with the layer of level two are of the type "data request"(" ⁇ ata.request”) and “data sending" by card ⁇ "Data.response”), as well as “data confirmation” ⁇ "Data.confirm”), etc.
  • the layers 13 and 23a are responsible for the dialogue between the smart card 2a and the host, that is to say the terminal 1.
  • These layers allow the exchange of information between a user (not shown) of terminal 1 and the smart card 2a, for example via drop-down menus in the form of hypertext in "HTML" format. They also allow the setting up of a configuration suitable for the transmission and / or reception of data packets.
  • the layers include three separate entities.
  • the first layer, 130 or 230a is essentially constituted by a software multiplexer. It allows the exchange of information between the smart card 2a and the host terminal 1, in the form of protocol data units. It plays a role similar to that of a data packet switch. These units are sent or received via the level two layer (data link layer).
  • This particular communication protocol makes it possible to put at least one pair of "agents" into communication.
  • the first agent of each pair, 132 is located in layer 13, on the terminal side 1, the second, 232a, is located in layer 23a, on the smart card side 2a.
  • a link between two "agents" is associated with a session, which can be called "S-Agent".
  • a session is a two-way data exchange between these two agents. If one or other of the layers, 13 and 23a, comprises several agents, the agents of the same layer can also establish sessions with each other and / or with the modules 131 and 231a, which constitute particular agents.
  • an agent is an autonomous software entity which can perform all or part of the functions of the layers of levels three and four, depending on the configuration implemented by the terminal 1. Agents are associated with particular properties or attributes. To fix the ideas, and by way of nonlimiting example, the following six properties are associated with the agents:
  • agent There are two main categories of agents: "server” type agents, which are identified by a fixed reference, and type agents
  • client which are identified by a variable reference, which can be described as ephemeral, delivered by the configuration management module, 131 or
  • the agents communicate with each other using an entity called “protocol data units” or “pdu” (for "protocol data unit”, according to English terminology) constituting a destination reference and a source reference.
  • pdu for "protocol data unit”, according to English terminology
  • pdu SmartTP pdu
  • Smart Card chip card
  • a “SmartTP pdu”, or more simply “pdu” below, includes a source reference, a destination reference, a set of bits constituting flags or “flags” which specify the nature of the "pdu”, and data optional: - the flag “OPEN” (open) is positioned to indicate the opening of a session; - the "CLOSE” flag indicates the end of a session; and
  • the "SmartTP” entity checks the existence of the destination agent and switches a packet to it.
  • An agent session "S-Agent” has three remarkable states, namely: - a disconnected state: no session is opened with another agent
  • a session is opened with another agent, an "S-Agent" session being identified by a pair of references;
  • a new instance of a client agent is created (chip card or terminal side), this agent being identified by a temporary pseudo-unique reference;
  • the client agent issues a "pdu" to a server agent (whose reference is known elsewhere) with the "OPEN” flag set and the client agent goes into the connected or blocked state depending on the value of the "BLOCK 'flag; and - the server agent receives the" pdu "with the" OPEN "flag and goes to the connected state
  • the mechanism for closing a session is as follows: - an agent issues a "pdu” with the "CLOSE” flag set (and which possibly includes data; and - the other agent receives a "pdu” with the "CLOSE” flag set (and which possibly includes data) and the "S-Agent" session goes to the disconnected state.
  • FIG. 3 schematically illustrates the state diagram of the "S-Agent" sessions, as they have just been recalled.
  • Layers 130 and 230a manage tables (not shown) which contain the list of agents present, on the host terminal side 1 and smart card 2a.
  • the agents make it possible to exchange data (of hypertext, for example), but also to trigger network transactions, authorizing communications between the smart card 2a and a remote server 4 (FIG. 2).
  • the configuration management modules, 131 and 231a can be compared to specific agents.
  • the module 131 on the host terminal side 1, manages in particular information relating to the configuration of this terminal (operating modes), list of the other agents present, etc.
  • the module 231a, on the smart card side 2a has similar functions. These two agents can be put in communication with each other to establish a session. In practical terms, the smart card 2a is advantageously
  • FIG. 4 illustrates in a simplified manner the logical architecture of a system according to the invention of the type shown in FIG. 2, but described in more detail.
  • the smart card 2a includes several agents, including only two have been represented: an agent of the type not precisely defined 232a ⁇ and an agent 232a2, of the so-called "WEB" type.
  • the logic stack comprises, the lower protocol layers, referenced 200a, meeting ISO standards 7816-3 (FIG. 2: CCai and CCa2), the "APDU" command manager 201 ai, and the packet multiplexer 230a, the latter being interface to agents, in particular the "WEB" agent 231 a2.
  • the first stack comprises the organs 11 (FIG. 2: Ci and C2) for accessing the network (OSI standards 1 and 2) and the "TCP / IP" protocol layers (FIG. 2: C3 and C4), referenced 100. These last layers are interfaced with the "WEB" browser 10.
  • the other stack includes the lower protocol layers, referenced 101, meeting ISO 7816-3 standards ( Figure 2: C-
  • the latter which will be assumed to be "network type" can also communicate, on the one hand with the browser 10, via the "TCP / IP” layers 101, on the other hand with the Internet network RI, via these same "TCP / IP” layers 101 and member 11, for access to the RI network.
  • the “APDU” order manager 201a also interfaces with one or more application-level layers, which will simply be called applications. These applications, A, ..., A t , ..., A n , are, as indicated, applications of the conventional type.
  • the client / server function "WEB”, provided by the smart card 2a can be performed by the combination of the agent "WEB" 232a ⁇ in the smart card and the network agent 132 in the terminal 1, and by the implementation of sessions between agents, as described.
  • the smart card 2a therefore clearly presents the client / server functionality "WEB".
  • any conventional application, A- ⁇ to A n of the type "CGA” above, can be activated through this client / server "WEB", either by the browser "WEB” 10 present in the terminal 1, or by a remote browser 4, located at any point of the Internet network RI, through the implementation of sessions between agents.
  • the applications, A- ⁇ to A n do not need to be repeated and are implemented as they are.
  • all or part of the applications A- ⁇ to An may consist of applications associated with one or more "PE” protocol (s) and / or one or more "PL” protocol (s), and loaded into a memory of the smart card 2a.
  • Data representing one or more "PA” profiles can also be stored in the smart card 2a.
  • the client / server functionality "WEB" offered by the smart card 2a is not sufficient for an application to be able to run. It is necessary to add an additional functionality to it.
  • the server function "WEB"
  • WEB offered by the smart card 2a includes a mechanism similar to the so-called “CGI” function (for "Common Gateway Interface” or “gateway interface”) installed in conventional "WEB” servers.
  • CGI Common Gateway Interface
  • CGI is a specification for implementing, from a “WEB” server, applications written for the "UNIX” (registered trademark), "DOS”, or "WINDOWS” (registered trademark) operating systems.
  • UNIX registered trademark
  • DOS registered trademark
  • WINDOWS registered trademark
  • an "HTTP" request for a "URL” address of the type: "http://www.host.com/cgi-bin/xxx.cgi” (2), in which "host” refers to a host system (usually remote), is interpreted by a "WEB” server as execution of a command script, of the "CGI” type named "xxx” and present in the "cgi- bin” directory of this host system.
  • CGI command script
  • a script is a series of instructions from the operating system of the host system, the final result of which is transmitted to the "WEB" browser issuing the above request.
  • Different languages can be used to write this script, for example the language "PERL" (registered trademark).
  • the request is usually displayed on a computer screen in the form of a form included in a "HTLM” page.
  • the "HTLM” language allows you to translate a form into a "URL” address.
  • the form includes one or more fields, mandatory or not, which are filled in by a user using the usual input methods: keyboard for text, mouse for check boxes or so-called “radio” buttons, etc.
  • the content of the form (as well as possibly so-called “hidden” information and instructions) is sent to the "WEB” server.
  • the "HTLM” code on the page describes the physical structure of the form (frame, graphics, color, and any other attribute), as well as the structure of the data fields to be entered (name, length, type of data, etc.).
  • Transmission can take place in two main types of formats.
  • a first format uses the so-called "POST” method and a second uses the so-called "GET” method.
  • Format type information is present in the code of the form page.
  • Script translating agents or abbreviated as "ATS”.
  • the script is then interpreted by one of the intelligent agents.
  • This translation can be carried out in different ways: a / by the "WEB” agent 232a ⁇ itself, which in this case is provided with a double capacity; b / by a single script agent capable of translating all the scripts present in the smart card 2a; c / by a dedicated script agent which will be called “ATSD” below (one agent per script); or d / by an agent "APDU" 2010a of the order manager "APDU”
  • the "APDU” agent 2010a is a component of the "APDU” order management layer 201a.
  • the latter is a layer capable of centralizing all the "APDU” orders sent and / or received by the system, of selecting applications from A to A n , but also of offering an interface of the intelligent agent type. It is therefore capable, according to one of the characteristics of the invention, of communicating with all the intelligent agents (via sessions), whether these agents are located in the terminal 1 or the smart card 2a. In case c / above, a session is opened between the agent
  • FIG. 5 illustrates an example of architecture for which the translating agents are of the "ATSD" type. They are referenced ATS, to ATS n and associated with the applications A to A n .
  • the selected application being assumed .s .; be the application A and the session is established between the "WEB" agent 232a ⁇ and the ATS agent.
  • a script translator agent generates a sequence of "APDU” orders.
  • a session is opened between the translating agent, for example the ATS agent t , and the "APDU” agent 2101a.
  • the orders are then issued to the "APDU” agent 2101a.
  • the "APDU” order manager 210a selects the "CGA” A / application and transmits to it the "APDU” orders, translated and therefore conventional orders, which it is able to understand. This application is therefore correctly activated, without having to modify or rewrite it.
  • the responses of the application A t are transmitted to the "APDU” order manager 210a, to the "APDU” agent 2010a, then again to the ATS agent ⁇ (and more generally to the translator agent of script).
  • the method according to the invention uses the two characteristics which have just been mentioned: operation of the smart card as a "WEB” server / client, including a "CGI” function.
  • operation of the smart card as a "WEB” server / client, including a "CGI” function.
  • the first phase concerns the registration of a subscriber profile in a particular directory server which will be referred to as SA, below.
  • the smart card 2a is addressed by the browser 10 of the terminal 1, via the layers 13 and
  • This recovery is carried out by consulting a corresponding page whose URL is typically of the following form: http://127.0.0.1: 8080 / download.html (3), in which http://127.0.0.1: 8080 is the actual loopback URL, as defined by the relation (1 ), and "download.html” the "HTML" page to obtain.
  • This request implements a session between intelligent agents as it has been described with reference to FIGS. 2 to 4, according to a first aspect of the invention.
  • the smart card 2a then plays the role of a "WEB" server.
  • the smart card 2a sends the "download.html” form during a second step, always by opening sessions between paired intelligent agents, according to the method of the invention.
  • the form obtained can be displayed on a screen 5 via the browser 10 and is referenced P in FIG. 6A which schematically illustrates this process.
  • This form constitutes a home page for the Internet user wishing to register on a directory server.
  • the smart card then behaves like a "WEB" server.
  • the P page can usually include different graphic or text elements, as well as interactive control elements ("radio" type button, check boxes, data entry areas, etc.) .
  • radio radio type button, check boxes, data entry areas, etc.
  • Form P includes various text areas, under the unique reference Z t . These zones typically display the name “xxx” of the directory server (SA U ), the proposed action “registration” and various aids (for example “click here”). Since it was assumed that the data from subscriber profile PA U were recorded in the smart card 2a, it suffices to provide a send button B s . The fact for the Internet user to click on this button using a mouse ( Figure 1A: 6b) or to press the "enter” key on a keyboard ( Figure 1A: 6a), triggers the sending from the form to the smart card 2a.
  • FIG. 6C illustrates a possible example of a form, referenced P 2 . It comprises a first fixed text zone Z n , similar to that of FIG. 6B (Z,) and one or more data entry zone (s), under the unique reference Z ⁇ . Is provided as previously sending a ⁇ s button, but advantageously also a button B tidal re-initialization of the form P 2, which erases the data entered in error.
  • the zone (s) for entering data Z ⁇ can (be) of the type known as "TEXTAREA" in "HTML” language and present a facility called "lift" for the scrolling display of long texts
  • HTML "HTML" code necessary to program such a form is well known in itself and is within the reach of those skilled in the art. There is no need to detail it again. We can however indicate that it contains in particular a line of code in "HTML" language which typically takes the form:
  • the data entered is passed as parameters to the smart card 2a, in the form of an "HTTP" request.
  • FIG. 6D schematically illustrates the overall process of the registration phase of an Internet user on a directory server SA U , constituted by one of the servers 4 (FIGS. 2 or 4).
  • the unique reference S WEB groups together various modules of FIG. 5 allowing the smart card 2a to offer the combined functionalities of client / WEB server and "CGI" gateway.
  • the application A e allowing the implementation of the recording protocol "PE” was associated with a dedicated script translator agent At e ;. it is a configuration conforming to that illustrated in figure 5.
  • the translation of the scripts can be carried out in other ways (by the agent "WEB" 232a ! (figure 5 ), etc.
  • the application A e makes an "HTTP" request by opening sessions between pairs of intelligent agents, in particular involving an agent of the "network” type (FIG. 5: 132).
  • the request is transmitted to the directory server SA U , with passing parameters
  • the parameters consist in particular of the subscriber profile data PA U , so as to allow its recording in the directory
  • the address "URL" of the directory server is obtained from the subscriber profile SA U recorded in the smart card 2a or from the data entered in the form re P 2 .
  • the registration process is completed at this stage. It may however include one or more additional steps.
  • One of these steps may consist in sending an acknowledgment of receipt by the directory, in the form of an "HTTP" request addressing the smart card 2a.
  • the acknowledgment may include information indicating that the registration has been completed satisfactorily, or on the contrary an error code. In the latter case, the registration process must be repeated.
  • the server may request the sending of missing data or the re-transmission of incorrect or corrupted data.
  • the registration request can also be rejected, in particular if the subscription validity limit is exceeded.
  • the data associated with the subscriber profiles can be stored in the smart card 2a, or, on the contrary, supplied, piecemeal , by the internet user according to a method similar to that which has been described with regard to FIG. 6C, by entering in an appropriate form, q is the maximum number of subscriber profiles available. Note that q is not necessarily equal to n. Indeed, a given directory server, which will be arbitrarily referred to as SA, can accept several distinct occurrences of the same subscriber (Internet user), on the one hand. On the other hand, several subscriber servers, although distinct, can accept the same subscriber profile and possibly share a common registration protocol.
  • the smart card 2a stores four distinct subscriber profiles, PA A to PA D , each of the profiles making it possible to register on a single directory server, ie SA A to SA D .
  • a form, or home page, referenced P 3 allowing this recording, can be presented as illustrated diagrammatically by FIG. 6E. he comprises a first header text area Z te similar to the text area Z f in FIG. 6B, possibly supplemented by graphic areas. It includes four additional text zones, Z tA to Z tD , associated with the four directory servers, SA A to SA D ..
  • the form allows you to select one or more, or even all.
  • a send button B s is provided , making it possible to transmit the content of the form to the smart card 2a.
  • the parameters passed to the smart card2a must make it possible to select one or more subscriber profiles, PA A to PA D , and to derive one or more "URL” addresses.
  • the actions requested, by the parameters passed to the smart card 2a are typically of the type: îsa ⁇ enr + pa, (5), with "sa,” the name of the directory server of arbitrary index / among the n possible, "enr” the required registration action proper and "pa,” the subscriber profile to be used among the possible qs.
  • One or more "HTTP" requests are made and transmitted to the directory servers concerned, SA A to SA D (FIG. 6E) and in the general case SA A to SA n , if there are n selected directory servers.
  • a second phase of the method according to the invention that is to say the location, on the Internet, of an Internet user associated with any identifier can take place very similarly to the registration phase. To do this, it is necessary to query one or more directory server (s). It is also necessary to have at least one specific "PL" protocol for locating this Internet user. Finally, if there are several searchable directory servers, SA to SA n , it is generally also necessary, as in the case of registration, to have several separate location protocols.
  • the localization process takes place in a very similar way to that of the registration of the Internet user on one or more SA, directory servers.
  • a subscriber profile PA S is no longer explicitly required. It suffices to provide the smart card 2a with the identifier of the Internet user sought and the address of the directory server SA, or at least parameters allowing the application associated with one of the location protocols. to determine this "URL" address.
  • a subscriber profile PA t can however be used to automatically derive therefrom the "URL" address of the directory server SA, with the help of which a web user wishes to locate another web user.
  • the identifier of the Internet user sought may be their e-mail address, an address which typically takes the following form: pseudo@fournisseur.com (6), with "pseudo” the user name e-mail address of the Internet user or more generally a pseudonym, and "supplier.com” the name and suffix of the Internet service provider ", .com” can be replaced as appropriate by various suffixes: ".fr", “. net “, etc.).
  • FIG. 7 illustrates the main stages of the phase of locating an internet user by interrogating a SA directory, In a first step, the smart card 2a is addressed by the browser 10 of the terminal 1, via the layers 13 and 23a.
  • a command of type "GET” for example, a loading form from the smart card 2a in the form of a home page referenced F.
  • This home page can take different aspects, similar in particular to those described with reference to FIGS. 6C or 6E.
  • the Internet user selects one or more directory servers and provides identification data of the Internet user sought.
  • FIG. 7 it has been assumed that a single directory server SA is interrogable.
  • the page is transmitted in the form of an "HTTP" request to the smart card 2a and is interpreted by a script translator agent At, associated with an application / A, for implementing the "PL" protocol.
  • HTTP HyperText Transfer Protocol
  • This server searches its database for an "IP" address corresponding to the identification data received. If successful, ie if the requesting Internet user is actually registered, if this Internet user has the right to obtain this address and if the data received is correct, the data retransmitted includes the "IP" address of the Internet user sought, which makes it possible to locate it.
  • the recording protocols, the location protocols and the subscriber profiles bear the unique references, PE X , PL y and PA Z , respectively, with x the number of recording protocols, y the number of location protocols and z the number of distinct subscriber profiles.
  • This set makes it possible to establish connections with n separate directory servers, either to register an internet user carrying the smart card 2a, or to locate an internet user on the Internet RI network.
  • the use of a smart card 2a allows robust authentication of its owner, during the recording phase and / or the location phase. Indeed, it is possible to store security data in the smart card 2a which remains the property of its owner. Such security data can consist of encryption keys.
  • the smart card can communicate directly with the Internet, by the implementation of sessions between intelligent agents, this data does not have to be transmitted to an external device, this would be terminal 1.
  • the processing operations relating to security are carried out directly by the smart card 2a. This way of proceeding therefore offers a much higher degree of security than the simple use of so-called secure software layers of recent "WEB” browsers, known under the English abbreviation "SSL” (for "Secure Socket Layer”).
  • SSL Secure Socket Layer
  • the actual authentication can be carried out using the so-called certificate technique, in association with the aforementioned encryption keys stored in the smart card.
  • This procedure may require additional transactions between the smart card 2a and the directory server (s) concerned, using “HTTP” requests passing through the Internet network RI.
  • HTTP HyperText Transfer Protocol
  • the smart card allows an Internet user to register on one or more directory servers and / or to locate an Internet user on the Internet, also through one or more directories.
  • the smart card has the combined functionality of a "WEB" client / server and a "CGI" gateway, this arrangement allows direct communications between the smart card and the directory server (s). It therefore authorizes the storage of specific software necessary for the implementation of recording and / or localization protocols, which allows great mobility.
  • One or more subscriber profiles can also be stored in the smart card. The internet user is no longer required to use terminals configured specifically for the aforementioned protocols.
  • the smart card is transformed into a portable multi-directory database.
  • the method according to the invention is entirely compatible with the existing one.
  • the Internet user sought is not required to have registered on one or more directory servers by making use of the method according to the invention.
  • the transmissions on the Internet network are carried out according to the protocols in force and the communications between the terminal and the smart card use the aforementioned standardized protocol "ISO".
  • ISO standardized protocol
  • the use of a smart card allows secure transactions and, in particular, "robust" authentication.
  • the invention is not limited to only the examples of embodiments explicitly described, in particular in relation to FIGS. 2 to 8.
  • the two series of proprietary software need not be " PE “and” PL "are stored in the smart card, although this arrangement is particularly advantageous.
  • the recording phase (s), in one or more directory servers which can be carried out once and for all, or at least being a priori less frequent (s) than the phases of localization, one could be satisfied to store in the smart card only the specific applications associated with this last operation.
  • subscriber profiles "PA” in the smart card the data can be provided in real time when the subscriber is registered in a particular directory server). It is also possible to save only part of the subscriber profiles, profiles which can be provided automatically.
  • the invention also relates to a method of connecting a first user with at least one directory server, with a view to registering and / or locating at least one second user on a network, in particular of the Internet type.
  • said connection being effected by means of a terminal provided with a smart card reader and at least one piece of software called recording and / or localization software, the terminal and the card chip comprising information processing means and information storage means, said terminal being connected to each of said directory servers via said Internet-type network and communicating with said smart card according to a first determined protocol, characterized in that at least one of said pieces of software (A e , A,) is stored in said smart card (2a); in that this smart card (2a) comprising a first piece of software (23a), forming a specific communication protocol layer, and said terminal (1) comprising a second piece of software (13), forming a communication protocol layer specific, said first and second pieces of software (13, 23a) further comprise at least one pair of first paired software entities (132, 232a), each of said
  • the invention also relates to a smart card comprising information processing means and information storage means and intended to cooperate with a terminal provided with a smart card reader, for connecting a first user with at least one directory server, for the purpose of registering and / or locating at least one second user on a network, in particular of the Internet type, using recording and / or determined location, characterized in that said smart card (2a) stores, in the information storage means, at least one piece of software (A e ,
  • this smart card (2a) comprises, in the information storage means, a piece of software (23a), forming a communication protocol layer specific, further comprising at least a first autonomous software entity (S, of the so-called type client and a second autonomous software entity (S 2 ), of the so-called server type, said entities (S 2 , S 2 ) cooperating, by means of information processing, so that said smart card (2a) offers the functionality of a client / server of the "WEB" type and to allow said connection of a first user with at least one directory server
  • said smart card (2a) comprises, in the information storage means, at least one second software entity (AT e , AT,) cooperating, thanks to the information processing means, with said specific piece of software (23a), so that said smart card (2a) offers a gateway interface functionality called "CGI” allowing the execution of said pieces of software ⁇ A ⁇ , Aj) associated with said determined recording and localization protocols.
  • CGI gateway interface functionality

Abstract

The invention concerns a method for registering a user on the directory and/or locating a cybernaut on an Internet-type network (RI), by interrogating a directory server (SAi), so as to determine an IP address associated with said cybernaut. The method consists in using a smart card (2a) storing applications (Al) each associated with a registering and/or locating protocol (PL). Subscriber profiles can be stored in the smart card (2a). Several different protocols can be stored, transforming the smart card (2a) into a multiple-directory database. The card (2a) is provided with WEB client/server and CGI functional capabilities, so as to be able to initiate transmissions in accordance with Internet protocols between directory server (SAi) and the smart card (2a), and activate the applications (Al) stored therein, for the process of registering and/or locating protocols (PL). The invention also concerns the related card.

Description

Procédé d'enregi strement d'un usager sur un serveur d'annuaire d'un réseau de type Internet et/ou de localisation d'un usager sur ce réseau, et carte à puce pour la mise en œuvre du procédé Method for registering a user on a directory server of an Internet type network and / or for locating a user on this network, and smart card for implementing the method
L'invention concerne un procédé d'enregistrement d'un usager sur un serveur d'annuaire d'un réseau notamment de type Internet et/ou de localisation d'un usager sur un tel réseau, à l'aide de cartes à puce connectées à des terminaux munis d'un lecteur de carte à puce.The invention relates to a method of registering a user on a directory server of a network, in particular of the Internet type and / or of locating a user on such a network, using smart cards connected. terminals equipped with a smart card reader.
L'invention concerne également une carte à puce pour la mise en œuvre de ce procédé.The invention also relates to a smart card for implementing this method.
Dans le cadre de l'invention, le terme "réseau Internet" doit être compris dans son sens le plus général. Il concerne, outre le réseau Internet proprement dit, les réseaux privés d'entreprise ou similaires, du type dit "intranet", et les réseaux les prolongeant vers l'extérieur, du type dit "extranet", et de façon générale tout réseau dans lequel les échanges de données s'effectuent selon un protocole du type Internet. Dans ce qui suit un tel réseau sera appelé de façon générique "réseau Internet".In the context of the invention, the term "Internet network" must be understood in its most general sense. It concerns, in addition to the Internet itself, corporate or similar private networks, of the so-called "intranet" type, and networks extending them outwards, of the so-called "extranet" type, and generally any network in which data exchanges are carried out according to an Internet type protocol. In what follows such a network will be called generically "Internet network".
De même, le terme "terminal" doit être compris dans un sens général. Le terminal précité peut être notamment constitué par un ordinateur personnel fonctionnant sous divers systèmes d'exploitation, tels WINDOWS ou UNIX (tous deux étant des marques déposées). Il peut être aussi constitué par une station de travail, un ordinateur portable ou un terminal de carte dit dédié. Dans le cadre plus particulier de l'invention, il existe également des terminaux dédiés Internet, ne possédant qu'un minimum de ressources informatiques propres, voire aucun moyens de stockage permanent, de type disque dur.Likewise, the term "terminal" should be understood in a general sense. The aforementioned terminal can in particular be constituted by a personal computer operating under various operating systems, such as WINDOWS or UNIX (both being registered trademarks). It can also consist of a workstation, a laptop or a so-called dedicated card terminal. In the more particular context of the invention, there are also dedicated Internet terminals, having only a minimum of own IT resources, or even no permanent storage means, of the hard disk type.
Il apparaît tout d'abord utile de rappeler brièvement les caractéristiques principales des protocoles de communication sur les réseaux. L'architecture des réseaux de communication est décrite par diverses couches. A titre d'exemple, le standard "OSI" ("Open System Interconnection"), défini par I' "ISO", comporte sept couches qui vont des couches dites basses (par exemple la couche dite "physique" qui concerne le support de transmission physique) aux couches dites hautes (par exemple la couche dite "d'application"), en passant par des couches intermédiaires, notamment la couche dite de "transport". Une couche donnée offre ses services à la couche qui lui est immédiatement supérieure et requiert de la couche qui lui immédiatement inférieure d'autres services, via des interfaces appropriées. Les couches communiquent à l'aide de primitives. Elles peuvent également communiquer avec des couches de même niveau. Dans certaines architectures, plusieurs couches peuvent être inexistantes.It first appears useful to briefly recall the main characteristics of communication protocols on networks. The architecture of communication networks is described by various layers. For example, the standard "OSI"("Open System Interconnection "), defined by" ISO ", comprises seven layers which go from the so-called low layers (for example the so-called" physical "layer which relates to the physical transmission medium) to the so-called high layers (for example the so-called" d 'application "), passing through intermediate layers, in particular the so-called" transport "layer. A given layer offers its services to the layer immediately above it and requires other services from the layer which is immediately below it, via appropriate interfaces. Layers communicate using primitives. They can also communicate with layers of the same level. In some architectures, several layers may be nonexistent.
Dans un environnement de type Internet, les couches sont au nombre de cinq, et de façon plus précise, en allant de la couche supérieure à la couche inférieure : la couche dite d'application ("http", "ftp", "e-mail", etc.), la couche dite de transport ("TCP"), la couche dite d'adressage de réseau ("IP"), la couche dite de liens de données ("PPP", "Slip", etc.) et la couche dite physique.In an Internet-type environment, there are five layers, and more precisely, going from the upper layer to the lower layer: the so-called application layer ("http", "ftp", "e- mail ", etc.), the so-called transport layer (" TCP "), the so-called network addressing layer (" IP "), the so-called data link layer (" PPP "," Slip ", etc.) ) and the so-called physical layer.
Dans l'art connu, un usager, que l'on appellera ci-après "internaute", utilise des terminaux Internet qui possèdent une adresse "IP" fixe, ou variable lorsque l'on a recours à un prestataire de service Internet, généralement connu sous le sigle anglo-saxon "ISP" (pour "Internet Service Provider).In the known art, a user, who will be called hereinafter "Internet user", uses Internet terminals which have a fixed "IP" address, or variable when using an Internet service provider, generally known by the acronym "ISP" (for "Internet Service Provider).
Un premier inconvénient est constitué par le fait qu'une adresse "IP" n'est pas associée à un internaute, mais à un système informatique connecté au réseau Internet. Même dans le cas où le système informatique est doté d'une adresse fixe, il n'existe pas de correspondance a priori entre une adresse "IP" et une personne physique. Pour établir une telle relation l'internaute se connecte à des serveurs dits "IRC" (pour "Internet Relay Chat"). Ces serveurs associent à un identifiant de l'internaute, dit "UserlD", son adresse "IP". L'identifiant est généralement constitué par son adresse courrier e-mel, ou "e-mail" selon la terminologie anglo-saxonne, mais un pseudonyme quelconque peut également être utilisé. Ci-après, les serveurs "IRC" seront dénommés de façon plus générale "serveurs d'annuaires", que l'on appellera simplement "SA".A first drawback is constituted by the fact that an "IP" address is not associated with an Internet user, but with a computer system connected to the Internet. Even if the computer system has a fixed address, there is no a priori correspondence between an "IP" address and a natural person. To establish such a relationship, the user connects to so-called "IRC" servers (for "Internet Relay Chat"). These servers associate an identifier of the Internet user, known as "UserlD", with his "IP" address. The identifier is generally constituted by its e-mail address, or "e-mail" according to English terminology, but any pseudonym can also be used. Below, the servers "IRC" will be called more generally "directory servers", which will simply be called "SA".
Cette association n'est généralement pas authentifiée de telle sorte que le service (généralement gratuit) puisse être utilisé de la manière la plus commode possible. Cette disposition n'est cependant pas exempte d'inconvénients, en particulier pour des applications dites "sensibles".This association is generally not authenticated so that the service (generally free) can be used in the most convenient way possible. This arrangement is not, however, free from drawbacks, in particular for so-called "sensitive" applications.
Une des premières contraintes rencontrées est donc la localisation d'un internaute dans le réseau Internet, c'est à dire l'établissement d'une correspondance entre un identifiant fixe et une adresse "IP". Cependant la localisation d'un internaute sur le réseau Internet, c'est-à-dire l'établissement de la correspondance précitée, présuppose que celui-ci ait été au préalable enregistré dans le serveur d'annuaire "SA".One of the first constraints encountered is therefore the location of an Internet user on the Internet, that is to say the establishment of a correspondence between a fixed identifier and an "IP" address. However, the location of an Internet user on the Internet, that is to say the establishment of the aforementioned correspondence, presupposes that he has been previously registered in the directory server "SA".
L'adresse d'un internaute dans le réseau Internet est donc constituée du couple : "Adresse SA" - "UserlD". De façon usuelle, par "abonné", on entend une entité "physique". Par extension, il peut s'agir d'uneThe address of an Internet user on the Internet therefore consists of the pair: "Address SA" - "UserlD". Usually, "subscriber" means a "physical" entity. By extension, it can be a
"fonction". Cependant, ci-après, on donnera à "abonné" son sens commun, sans que cela soit limitatif en quoi que ce soit de la portée de l'invention."function". However, below, "subscriber" will be given his or her common sense, without this being in any way limiting the scope of the invention.
De façon pratique, un internaute indique sa localisation dans le réseau Internet par un acte volontaire en fournissant au serveur (annuaire) son adresse "IP" actuelle à l'aide d'un protocole d'enregistrement que l'on appellera ci-après "PE".In practical terms, a user indicates his location on the Internet by a voluntary act by supplying the server (directory) with his current "IP" address using a registration protocol which will be called below " PE ".
Cette opération implique que le terminal possède un logiciel spécifique (ou application) délivré par le fournisseur du service, et personnalisé avec un profil d'abonné particulier, que l'on appellera "PA" ci- après. Ce profil "PA" permet d'identifier de façon plus complète un abonnéThis operation implies that the terminal has specific software (or application) delivered by the service provider, and personalized with a particular subscriber profile, which will be called "PA" below. This "PA" profile allows a more complete identification of a subscriber
(ou internaute), en sus de son identifiant de base "UserlD".(or Internet user), in addition to its basic identifier "UserlD".
On désigne généralement par "Profil d'Abonné" ("PA") l'ensemble des informations qui sont fournies au serveur d'annuaire "SA" lors de l'enregistrement de l'abonné (internaute), et par exemple : - l'adresse du "Serveur d'Annuaire" ("SA") ; l'identifiant de l'abonné ("UserlD") ; les abonnés (identifiés par leurs "UserlD") avec lesquels l'utilisateur accepte d'entrer en communication ou auxquels il désire notifier sa localisation dans le réseau ; et les informations qu'il accepte de rendre publiques sur le serveur d'annuaire (par exemple : nom, nationalité, contacts recherchés, etc.). ;The term "Subscriber Profile"("PA") is generally used to denote all the information which is supplied to the directory server "SA" when the subscriber (internet user) is registered, and for example: - l address of the "Directory Server"("SA"); the subscriber identifier ("UserlD"); subscribers (identified by their "UserlD") with which the user accepts to communicate or to whom he wishes to notify his location in the network; and the information it accepts to make public on the directory server (for example: name, nationality, contacts sought, etc.). ;
Pour joindre un correspondant à travers le réseau Internet, ce correspondant étant dûment enregistré, il est nécessaire de connaître son adresse "IP". Cette information est obtenue à l'aide d'un serveur d'annuaire ("SA") et d'un protocole de localisation ("PL").To reach a correspondent through the Internet, this correspondent being duly registered, it is necessary to know their "IP" address. This information is obtained using a directory server ("SA") and a location protocol ("PL").
On doit noter que le profil d'abonné "PA" est, par nature, spécifique à l'abonné, mais peut dépendre aussi des caractéristiques du serveur d'annuaire, notamment du type et de la nature des informations qui doivent lui être fournies ou qu'il peut accepter. On doit noter enfin que le protocole "PL" est, comme le protocoleIt should be noted that the subscriber profile "PA" is, by nature, specific to the subscriber, but may also depend on the characteristics of the directory server, in particular on the type and nature of the information which must be supplied to it or that he can accept. Finally, it should be noted that the "PL" protocol is, like the protocol
"PE", de type dit propriétaire, puisqu'il adresse un serveur d'annuaire a priori non standardisé ou répondant à des normes universellement reconnues."PE", of the so-called owner type, since it addresses a directory server which is a priori non-standardized or which meets universally recognized standards.
Ces deux caractéristiques constituent des inconvénients supplémentaires. En résumé de ce qui vient d'être rappelé, pour qu'un premier internaute puisse localiser d'autres internautes et puisse être localisé par ceux-ci, il est nécessaire que le terminal qu'il utilise stocke des logiciels spécifiques permettant de mettre en œuvre les protocoles "PE" et "PL". Il peut également être nécessaire qu'il stocke des données afférentes à son profil d'abonné "PA". Cette remarque s'applique de façon similaire aux terminaux des autres internautes.These two characteristics constitute additional disadvantages. In summary of what has just been recalled, for a first Internet user to be able to locate other Internet users and to be located by them, it is necessary that the terminal that he uses stores specific software making it possible to set up implements the "PE" and "PL" protocols. It may also be necessary for it to store data relating to its subscriber profile "PA". This remark applies similarly to the terminals of other Internet users.
En d'autres termes, le terminal utilisé par un abonné quelconque est également spécifique, en ce sens que, si cet abonné désire changer de terminal, il doit retrouver sur le nouveau terminal utilisé, au moins le ou les logiciels associés au protocole "PL", en admettant qu'il ait procédé à une phase préliminaire d'enregistrement sur le premier terminal, en faisant appel au protocole "PE" et en fournissant son profil "PA" au serveur d'annuaire "SA". En effet, la présence du protocole "PL" sera nécessaire pour adresser le serveur d'annuaire et avoir accès aux données enregistrées dans celui-ci, notamment les adresses "IP" des correspondants recherchés et leurs profils "SA".In other words, the terminal used by any subscriber is also specific, in the sense that, if this subscriber wishes to change terminal, he must find on the new terminal used, at least the software or software associated with the "PL protocol ", admitting that it has carried out a preliminary phase of registration on the first terminal, by appealing to the "PE" protocol and by providing its "PA" profile to the "SA" directory server. Indeed, the presence of the "PL" protocol will be necessary to address the directory server and have access to the data recorded in it, in particular the "IP" addresses of the correspondents sought and their "SA" profiles.
Il serait donc intéressant d'utiliser des terminaux banalisés pour effectuer les opérations d'enregistrement et, surtout, de localisation d'internautes sur le réseau Internet, ce qui permettrait d'accéder de façon commode au concept appelé "nomadisme". Les logiciels associés aux protocoles précités, "PE" et "PL" ne nécessitent pas habituellement de disposer d'une grande quantité de mémoire. Il en est de même des données de profil "PA". On pourrait donc penser les enregistrer dans les circuits de mémoire d'une carte à puce, ce que permet la technologie actuelle. Cependant, on se heurte à une double difficulté technique, comme il va l'être montré ci-après, ce qui interdit toute communication directe entre le réseau Internet et une carte à puce.It would therefore be interesting to use standard terminals to carry out the operations of recording and, above all, locating Internet users on the Internet, which would allow convenient access to the concept called "nomadism". The software associated with the aforementioned protocols, "PE" and "PL" does not usually require a large amount of memory. The same applies to "PA" profile data. One could therefore think of recording them in the memory circuits of a smart card, which allows current technology. However, there is a double technical difficulty, as will be shown below, which prohibits any direct communication between the Internet and a smart card.
On va tout d'abord rappeler brièvement l'architecture générale d'un système d'application à base de carte à puce, relié à un réseau Internet, par référence aux figures 1 A et 1 B.We will first of all briefly recall the general architecture of a smart card-based application system, connected to an Internet network, with reference to FIGS. 1A and 1B.
Un système d'application à base de carte à puce comporte généralement les éléments principaux suivants : une carte à puce ; un système hôte constituant le terminal précité ; - un réseau de communication, à savoir le réseau Internet dans l'application préférée ; et un serveur d'application connecté au réseau Internet.A smart card-based application system generally has the following main components: a smart card; a host system constituting the aforementioned terminal; - a communication network, namely the Internet network in the preferred application; and an application server connected to the Internet.
La figure 1A illustre schématiquement un exemple d'architecture de ce type. Le terminal 1 , par exemple un ordinateur individuel, comporte un lecteur 3 de carte à puce 2. Ce lecteur 3 peut être ou non physiquement intégré dans le terminal 1. La carte à puce 2 comporte un circuit intégré 20 dont des connexions d'entrées-sorties affleurent en surface de son support pour autoriser une alimentation en énergie électrique et des communications avec le terminal 1. Ce dernier comprend des circuits d'accès 11 au réseau Internet RI. Ces circuits peuvent être constitués par un modem pour se connecter à une ligne téléphonique commutée ou à une voie de communication à plus haut débit : réseau numérique à intégration de services ("RNIS"), câble ou liaisons par satellite, etc. Les circuits 11 permettent de se connecter au réseau Internet RI, directement ou via un prestataire de services Internet ("Internet Service Provider" ou "ISP", selon la terminologie anglo-saxonne). On peut également avoir recours à un système intermédiaire tel qu'un "proxy" ou un système d'isolation dit "firewall" ("pare- feu" ou encore appelé "garde barrière").FIG. 1A schematically illustrates an example of architecture of this type. The terminal 1, for example a personal computer, includes a smart card reader 3. This reader 3 may or may not be physically integrated into the terminal 1. The smart card 2 has an integrated circuit 20 whose input-output connections are flush with the surface of its support to authorize a supply of electrical energy and communications with the terminal 1. The latter comprises access circuits 11 to the Internet network RI. These circuits can be constituted by a modem to connect to a switched telephone line or to a higher speed communication channel: integrated services digital network ("ISDN"), cable or satellite links, etc. The circuits 11 allow connection to the Internet RI network, directly or via an Internet service provider ("Internet Service Provider" or "ISP", according to English terminology). One can also have recourse to an intermediate system such as a "proxy" or an isolation system called "firewall"("firewall" or also called "barrier guard").
Le terminal 1 comprend naturellement tous les circuits et organes nécessaires à son bon fonctionnement, et qui n'ont pas été représentés dans un but de simplification du dessin : unité centrale, mémoires vive et fixe, mémoire de masse à disque magnétique, lecteur de disquette et/ou de CédéRom, etc.Terminal 1 naturally includes all the circuits and organs necessary for its proper functioning, and which have not been shown for the purpose of simplifying the drawing: central unit, random access memory and fixed memory, mass memory with magnetic disk, floppy drive and / or CédéRom, etc.
Habituellement, le terminal 1 est aussi relié à des périphériques classiques, intégrés ou non, tels un écran de visualisation 5, un clavier 6a et une souris 6b, etc.Usually, the terminal 1 is also connected to conventional peripherals, integrated or not, such as a display screen 5, a keyboard 6a and a mouse 6b, etc.
Le terminal 1 peut être mis en communication avec des serveurs ou tous systèmes informatiques connectés au réseau RI, dont un seul, 4, est illustré sur la figure 1 A. Les circuits d'accès 11 mettent le terminal 1 en communication avec les serveurs 4 grâce à un logiciel particulier 10, appelé navigateur "WEB", ou "browser" selon la terminologie anglo-saxonne. Celui- ci permet d'accéder à diverses applications ou fichiers de données répartis sur l'ensemble du réseau RI, généralement selon un mode "client-serveur".The terminal 1 can be put in communication with servers or all computer systems connected to the RI network, of which only one, 4, is illustrated in FIG. 1 A. The access circuits 11 put the terminal 1 in communication with the servers 4 thanks to a particular software 10, called "WEB" browser, or "browser" according to English terminology. This allows access to various applications or data files distributed over the entire RI network, generally in a "client-server" mode.
Habituellement, les communications sur les réseaux s'effectuent conformément à des protocoles répondant à des standards comprenant plusieurs couches logicielles superposées. Dans le cas d'un réseau RI de type Internet, les communications s'effectuent selon des protocoles spécifiques à ce type de communications, qui seront détaillés ci-après, mais qui comprennent également plusieurs couches logicielles. Le protocole de communication est choisi en fonction de l'application plus particulièrement visée : interrogation de pages "WEB", transferts de fichiers, courrier électronique (e-mel, ou "e-mail" selon la terminologie anglo-saxonne), forums ou "news", etc.Usually, communications on networks are carried out in accordance with protocols meeting standards comprising several superimposed software layers. In the case of an Internet-type IR network, communications are carried out according to protocols specific to this type of communications, which will be detailed below, but which also include several software layers. The communication protocol is chosen according to the application more particularly targeted: interrogation of "WEB" pages, file transfers, electronic mail (e-mel, or "e-mail" according to Anglo-Saxon terminology), forums or "news", etc.
L'architecture logique du système comprenant un terminal, un lecteur de carte à puce et une carte à puce, est représentée schématiquement par la figure 1 C. Elle est décrite par la norme ISO 7816, qui elle-même comportent plusieurs sous-ensembles :The logical architecture of the system comprising a terminal, a smart card reader and a smart card is represented diagrammatically in FIG. 1 C. It is described by the ISO 7816 standard, which itself comprises several sub-assemblies:
ISO 7816-1 et 7816-2, en ce qui concerne les dimensions et le marquage des cartes ;ISO 7816-1 and 7816-2, with regard to the dimensions and marking of cards;
ISO 7816-3, en ce qui concerne le transfert de données entre le terminal et la carte à puce ; et - ISO 7816-4, en ce qui concerne la structure du jeu d'ordres et le format des commandes.ISO 7816-3, with regard to the transfer of data between the terminal and the smart card; and - ISO 7816-4, with regard to the structure of the command set and the format of the commands.
Sur la figure 1 B, du côté terminal 1 , on n'a représenté que les couches répondant à la norme ISO 7816-3, référencées 101 , et un gestionnaire d'ordres "APDU" (norme ISO 7816-4), référencé 102. Du côté carte à puce 2, les couches répondant à la norme ISO 7816-3 sont référencées 200 et le gestionnaire d'ordres "ADPU" (norme ISO 7816-4) est référencé 201. Les applications sont référencées A-\ , ..., Aj, ..., An ; n étant le nombre maximum d'applications présentes sur la carte à puce 2.In FIG. 1B, on the terminal side 1, only the layers meeting the ISO 7816-3 standard, referenced 101, and a "APDU" order manager (ISO 7816-4 standard), referenced 102, have been represented. On the smart card 2 side, the layers corresponding to ISO 7816-3 are referenced 200 and the "ADPU" order manager (ISO 7816-4 standard) is referenced 201. The applications are referenced A- \,. .., Aj, ..., An; n being the maximum number of applications present on the smart card 2.
Une application, Aj, présente dans la carte à puce 2, dialogue avec le terminal 1 au moyen d'un jeu d'ordres. Ce jeu présente typiquement des ordres d'écriture et des ordres de lecture. Le format des ordres est connu sous l'abréviation anglo-saxonne de "APDU" (pour "Application Protocol Data Unit"). Il est défini par la norme ISO 7816-4 précitée. Une "APDU" de commande est notée "APDU.command" et une "APDU" de réponse est notée "APDU.response". Les "APDU" sont échangées entre le lecteur de carte et la carte à puce au moyen d'un protocole spécifié par la norme ISO 7816-3 précitée (par exemple en mode caractère : T=0 ; ou en mode bloc : T=1 ).An application, Aj, present in the smart card 2, dialogues with the terminal 1 by means of a set of orders. This game typically presents writing orders and reading orders. The order format is known by the English abbreviation of "APDU" (for "Application Protocol Data Unit"). It is defined by the aforementioned ISO 7816-4 standard. A command "APDU" is noted "APDU.command" and a response "APDU" is noted "APDU.response". The "APDU" are exchanged between the reader card and smart card using a protocol specified by the above-mentioned ISO 7816-3 standard (for example in character mode: T = 0; or in block mode: T = 1).
Lorsque la carte à puce 2 inclut plusieurs applications distinctes, comme illustré sur la figure 1 B, on parle de carte multi-applicative.When the smart card 2 includes several distinct applications, as illustrated in FIG. 1B, we speak of a multi-application card.
Cependant, le terminal 1 ne dialogue qu'avec une seule application à la fois.However, terminal 1 only dialogs with one application at a time.
La sélection d'une application particulière Aj est obtenue à l'aide d'une "APDU" du type sélection ("SELECT"). Une fois ce choix effectué, lesThe selection of a particular Aj application is obtained using an "APDU" of the selection type ("SELECT"). Once this choice has been made, the
"APDU" qui le suivent sont acheminés vers cette application. Une "APDU SELECT" nouvelle a pour effet d'abandonner l'application en cours et d'en choisir une autre. Le sous-ensemble logiciel gestionnaire des "APDU" 201 permet de choisir une application particulière A\ dans la carte à puce 2, de mémoriser l'application ainsi choisie, et de transmettre et/ou recevoir des "APDU" vers et depuis cette application. En résumé de ce qui vient d'être décrit, la sélection d'une application"APDUs" that follow are routed to this application. A new "APDU SELECT" has the effect of abandoning the current application and choosing another one. The “APDU” manager software sub-assembly 201 makes it possible to choose a particular application A \ in the smart card 2, to store the application thus chosen, and to transmit and / or receive “APDUs” to and from this application. . In summary of what has just been described, the selection of an application
Aj et le dialogue avec celle-ci s'effectuent par échanges d'ordres "APDU". On suppose que les applications Aj sont des applications conventionnelles, que l'on appellera ci-après "GCA" (pour "Generic Card Application" ou application de carte générique). Ces rappels étant effectués, il est à noter que la carte à puce 2 ne peut communiquer directement avec les navigateurs standards du commerce 10, sauf à modifier le code de ces derniers.Aj and the dialogue with it are carried out by exchanges of "APDU" orders. It is assumed that the Aj applications are conventional applications, which will be called hereinafter "GCA" (for "Generic Card Application"). These reminders being made, it should be noted that the smart card 2 cannot communicate directly with standard commercial browsers 10, unless the code of the latter is modified.
En outre, et surtout, les cartes à puce actuelles, qui par ailleurs sont conformes aux standards et normes rappelés ci-dessus, ont une configuration matérielle et logicielle qui ne permet pas non plus de communiquer directement avec le réseau Internet. En particulier, elles ne peuvent recevoir et transmettre des paquets de données, selon l'un ou l'autre des protocoles utilisés sur ce type de réseau. Il est donc nécessaire de prévoir une pièce de logiciel additionnelle, implantée dans le terminal 1 , généralement sous la forme de ce qui est appelé un "plug-in", selon la terminologie anglo-saxonne. Cette pièce de logiciel, qui porte la référence 12 sur la figure 1A, effectue I interface entre le navigateur 10 et la carte 2, plus précisément les circuits élecrroniques 20 de cette carte 2.In addition, and above all, current smart cards, which moreover comply with the standards and norms recalled above, have a hardware and software configuration which also does not allow direct communication with the Internet. In particular, they cannot receive and transmit data packets, according to one or the other of the protocols used on this type of network. It is therefore necessary to provide an additional piece of software, located in terminal 1, generally in the form of what is called a "plug-in", according to the Anglo-Saxon terminology. This piece of software, which bears the reference 12 in FIG. 1A, performs the interface between the browser 10 and the card 2, more precisely the electronic circuits 20 of this card 2.
L'invention vise à pallier les inconvénients des procédés et dispositifs de l'art connu, et dont certains viennent d'être rappelés, tout en répondant aux besoins qui se font sentir.The invention aims to overcome the drawbacks of the methods and devices of the known art, and some of which have just been recalled, while meeting the needs which are felt.
Selon un mode de réalisation avantageux de l'invention, les applications nécessaires à la mise en œuvre des protocoles d'enregistrement ("PE") et de localisation ("PL"), ainsi que les données caractérisant le profil d'abonné ("PA") sont des fichiers stockés, en tout ou partie, dans des mémoires d'une carte à puce, les fichiers de type exécutable étant des applications standards du type "GCA" précité.According to an advantageous embodiment of the invention, the applications necessary for the implementation of the recording ("PE") and location ("PL") protocols, as well as the data characterizing the subscriber profile (" PA ") are files stored, in whole or in part, in memories of a smart card, the executable type files being standard applications of the aforementioned" GCA "type.
Selon l'invention, la carte à puce se comporte comme un serveur/client de type "WEB" pour le terminal qui lui est associé. Pour ce faire, on prévoit une couche de logiciel de communication spécifique dans la carte à puce et son pendant dans le terminal. Le terme "spécifique" doit être entendu comme spécifique au procédé de l'invention. En effet, ces couches de communications, dites spécifiques, sont banalisées quelle que soit l'application considérée. En particulier, elles sont indépendantes des applications nécessaires à la mise en œuvre des protocoles "PE" et "PL". Elles n'interviennent que dans le processus d'échanges de données bidirectionnels entre la carte à puce et le terminal, d'une part, et la carte à puce et le réseau, d'autre part.According to the invention, the smart card behaves like a server / client of the "WEB" type for the terminal associated with it. To do this, a specific communication software layer is provided in the smart card and its counterpart in the terminal. The term "specific" should be understood as specific to the process of the invention. Indeed, these layers of communications, called specific, are trivialized whatever the application considered. In particular, they are independent of the applications necessary for the implementation of the "PE" and "PL" protocols. They only intervene in the two-way data exchange process between the smart card and the terminal, on the one hand, and the smart card and the network, on the other hand.
Les couches logicielles de communication spécifiques comprennent notamment des composants logiciels, dits "agents intelligents", permettant en particulier des conversions de protocoles. Les agents intelligents seront appelés ci-après plus simplement "agents". Il existe des agents appareillés dans les couches de communication spécifiques respectives associées au terminal et à la carte à puce. Selon le procédé de l'invention, il s'établit des sessions entre agents appareillés. Avantageusement, le procédé de l'invention rend possible l'activation d'applications de type conventionnel, c'est-à-dire du type "CGA" précité, localisées dans une carte à puce, sans devoir les modifier en quoi que ce soit. Pour ce faire, on prévoit un ou plusieurs agents intelligents particuliers dits traducteurs de script, qui reçoivent des requêtes d'un navigateur et les traduisent en ordres "APDU" compréhensibles par l'application de type "CGA". De ce fait, on implante dans la carte à puce une fonction similaire à celle connue par ailleurs sous la dénomination "CGI" dans les serveurs "WEB" classiques. Cette fonction permet de mettre en œuvre une application dans la carte à puce par un protocole Internet de type "HTTP".The specific communication software layers notably comprise software components, called "intelligent agents", allowing in particular protocol conversions. The intelligent agents will be referred to hereinafter more simply as "agents". There are agents paired in the respective specific communication layers associated with the terminal and the smart card. According to the method of the invention, sessions are established between paired agents. Advantageously, the method of the invention makes it possible to activate applications of conventional type, that is to say of the aforementioned "CGA" type, located in a smart card, without having to modify them in any way. . To do this, one or more particular intelligent agents known as script translators are provided, which receive requests from a browser and translate them into "APDU" orders understandable by the "CGA" type application. Therefore, a function similar to that known elsewhere under the name "CGI" is implemented in the smart card in conventional "WEB" servers. This function makes it possible to implement an application in the smart card by an Internet protocol of the "HTTP" type.
Ces diverses dispositions permettent à la carte à puce, et plus précisément aux applications présentent dans celle-ci, de communiquer directement avec un serveur éloigné connecté au réseau Internet par la mise en œuvre de protocoles de type Internet. La fonctionnalité "CGI" offerte par la carte à puce permet pour sa part l'accession aux applications associées aux protocoles "PE" et "PL" et leur exécution, sans nécessiter la présence d'applications de type propriétaire dans le terminal. Seul un navigateur, avantageusement de type standard du commerce, est nécessaire.These various arrangements allow the smart card, and more precisely the applications present therein, to communicate directly with a remote server connected to the Internet by implementing Internet-type protocols. The "CGI" functionality offered by the smart card allows access to the applications associated with the "PE" and "PL" protocols and their execution, without requiring the presence of proprietary type applications in the terminal. Only a browser, advantageously of the standard commercial type, is necessary.
Dans une variante préférée de réalisation de l'invention, on stocke dans la carte à puce plusieurs jeux composés d'applications associées à des protocoles "PE" et "PL" et/ou de profils d'abonnés "PA" distincts.In a preferred embodiment of the invention, there are stored in the smart card several sets composed of applications associated with "PE" and "PL" protocols and / or distinct "PA" subscriber profiles.
Cette disposition avantageuse permet, d'une part, d'enregistrer plusieurs profils d'abonné "PA" distincts ou plusieurs occurrences distinctes d'un même profil d'abonné "PA" sur un même serveur d'annuaire "SA", et de localiser ces entités en les associant à des adresses "IP" uniques. Elle permet, d'autre part, de pouvoir adresser plusieurs serveurs d'annuaire "SA", avec un même et/ou plusieurs profils d'abonnés "PA" distincts. La carte à puce présente alors une fonctionnalité de base de données multi-annuaire. L'invention a donc pour objet principal un procédé de mise en relation d'un premier usager avec au moins un serveur d'annuaire, en vue de son enregistrement et/ou de la localisation d'au moins un deuxième usager sur un réseau notamment de type Internet, ladite mise en relation s'effectuant par l'intermédiaire d'un terminal muni d'un lecteur de carte à puce et d'au moins une pièce de logiciel dite d'enregistrement et/ou de localisation, ledit terminal étant connecté à chacun desdits serveurs d'annuaire via ledit réseau de type Internet et communiquant avec ladite carte à puce selon un premier protocole déterminé, caractérisé en ce qu'au moins l'une desdites pièces de logiciel est stockée dans ladite carte à puce ; en ce que cette carte à puce comprenant une première pièce de logiciel, formant une couche protocolaire de communication spécifique, et ledit terminal comprenant une seconde pièce de logiciel, formant une couche protocolaire de communication spécifique, lesdites première et seconde pièces de logiciel comprennent en outre au moins une paire de premières entités logicielles appariées, chacune desdites entités coopérant l'une avec l'autre de manière à permettre l'établissement d'une session d'échanges de données bidirectionnels entre au moins ledit terminal et ladite carte à puce, et/ou ledit réseau de type Internet, de manière à ce que ladite carte à puce offre la fonctionnalité d'un client/serveur "WEB" ; en ce que ladite carte à puce comprend au moins une deuxième entité logicielle coopérant avec ladite seconde pièce de logiciel spécifique pour que ladite carte à puce offre une fonctionnalité d'interface passerelle dite "CGI" : et en ce qu'il comprend au moins les étapes suivantes : 1/ ouverture d'une première séquence d'échanges de données entre au moins ledit terminal et ladite carte à puce, pour la transmission d'une requête pour que ledit navigateur de type "WEB" récupère des données permettant de sélectionner et d'activer une desdites pièces de logiciel propriétaire, en vue de la sélection d'un desdits serveurs d'annuaire ; 2/ ouverture d'une deuxième séquence d'échanges de données entre ladite carte à puce et ledit terminal pour lui transmettre lesdites données ; 3/ ouverture d'une troisième séquence d'échanges de données entre ledit terminal et ladite carte à puce pour transmettre des données de sélection et des paramètres optionnels, lesdites données et lesdits paramètres optionnels comportant une référence à une desdites pièces de logiciel d'enregistrement et/ou de localisation ; 4/ mise en œuvre de ladite fonctionnalité "CGI" et exécution de ladite pièce de logiciel d'enregistrement et/ou de localisation ; etThis advantageous arrangement makes it possible, on the one hand, to register several distinct "PA" subscriber profiles or several distinct occurrences of the same "PA" subscriber profile on the same "SA" directory server, and locate these entities by associating them with unique "IP" addresses. It also makes it possible to be able to address several "SA" directory servers, with the same and / or several distinct "PA" subscriber profiles. The smart card then presents a multi-directory database functionality. The main object of the invention is therefore a method of putting a first user into contact with at least one directory server, with a view to registering and / or locating at least one second user on a network in particular. of the Internet type, said connection being effected by means of a terminal provided with a smart card reader and at least one piece of software called recording and / or location software, said terminal being connected to each of said directory servers via said Internet type network and communicating with said smart card according to a first determined protocol, characterized in that at least one of said pieces of software is stored in said smart card; in that this smart card comprising a first piece of software, forming a specific communication protocol layer, and said terminal comprising a second piece of software, forming a specific communication protocol layer, said first and second pieces of software further comprise at least one pair of first paired software entities, each of said entities cooperating with each other so as to allow the establishment of a bidirectional data exchange session between at least said terminal and said smart card, and / or said Internet-type network, so that said smart card offers the functionality of a "WEB" client / server; in that said smart card comprises at least a second software entity cooperating with said second specific piece of software so that said smart card offers a so-called "CGI" gateway interface functionality: and in that it comprises at least the following steps: 1 / opening of a first sequence of data exchanges between at least said terminal and said smart card, for the transmission of a request for said browser of type "WEB" to recover data making it possible to select and activate one of said pieces of proprietary software, with a view to selecting one of said directory servers; 2 / opening of a second sequence of data exchanges between said smart card and said terminal to transmit said data to it; 3 / opening of a third sequence of data exchanges between said terminal and said smart card to transmit selection data and optional parameters, said data and said optional parameters comprising a reference to one of said pieces of recording software and / or location; 4 / implementation of said "CGI" functionality and execution of said piece of recording and / or localization software; and
5/ en résultat de ladite exécution, ouverture d'une quatrième séquence d'échanges de données entre ladite carte à puce et un desdits serveurs d'annuaire, sélectionné par lesdites données de sélection, de manière à transmettre une requête pour la réalisation d'une opération déterminée d'enregistrement ou de localisation.5 / as a result of said execution, opening of a fourth sequence of data exchanges between said smart card and one of said directory servers, selected by said selection data, so as to transmit a request for carrying out a specific registration or localization operation.
L'invention a également pour objet une carte à puce pour la mise en œuvre de ce procédé.The invention also relates to a smart card for the implementation of this method.
Un mode préféré, mais non limitatif, de réalisation de l'invention va maintenant être décrit de façon plus détaillée en se référant aux dessins annexés, parmi lesquels : les figures 1A et 1 B illustrent les architectures matérielle et logique, respectivement, d'un exemple de système d'application à base de carte à puce connecté à un réseau Internet selon l'art connuA preferred, but not limiting, embodiment of the invention will now be described in more detail with reference to the accompanying drawings, among which: FIGS. 1A and 1B illustrate the hardware and logic architectures, respectively, of a example of a smart card-based application system connected to an Internet network according to known art
- la figure 2 illustre schématiquement un exemple de système d'application à base de carte à puce selon l'invention, cette dernière agissant en tant que client/serveur "WEB", selon un aspect de l'invention ; la figure 3 est un diagramme d'états d'une session entre des entités logicielles dites agents intelligents, selon un aspect de l'invention ; la figure 4 ilii stre de façon simplifiée l'architecture logique d'un système selon l'invention dans lequel la carte à puce comprend des agents intelligents ; la figure 5 illustre de façon simplifiée l'architecture logique d'un système selon un autre aspect de l'invention selon lequel la carte à puce comprend des agents intelligents traducteurs de scripts, de manière à implanter une fonction dite "CGI" ; la figure 6A illustre schématiquement une première étape de la phase d'enregistrement d'un internaute sur un serveur d'annuaire ; - les figures 6B et 6C illustrent des exemples de formulaires "HTLM" utilisables pour cette phase d'enregistrement ;- Figure 2 schematically illustrates an example of application system based on smart card according to the invention, the latter acting as client / server "WEB", according to one aspect of the invention; Figure 3 is a state diagram of a session between software entities called intelligent agents, according to one aspect of the invention; FIG. 4 ilii stre in a simplified manner the logical architecture of a system according to the invention in which the smart card comprises intelligent agents; FIG. 5 illustrates in a simplified way the logical architecture of a system according to another aspect of the invention according to which the smart card comprises intelligent agents translating scripts, so as to implement a so-called "CGI"function; FIG. 6A schematically illustrates a first step in the phase of registering an Internet user on a directory server; - Figures 6B and 6C illustrate examples of "HTLM" forms usable for this recording phase;
- la figure 6D illustre schématiquement les principales étapes de la phase d'enregistrement d'un internaute sur un serveur d'annuaire ; la figure 6E illustre schématiquement les principales étapes de la phase d'enregistrement d'un internaute plusieurs serveurs d'annuaire ;- Figure 6D schematically illustrates the main steps of the registration phase of a user on a directory server; FIG. 6E schematically illustrates the main steps of the registration phase of an Internet user with several directory servers;
- la figure 7 illustre schématiquement les principales étapes de la phase de localisation d'un internaute sur le réseau Internet par interrogation d'un serveur d'annuaire ; et - la figure 8 illustre schématiquement une architecture à carte à puce selon l'invention présentant une fonctionnalité de base de données multi-annuaire portable.- Figure 7 schematically illustrates the main steps of the phase of locating a user on the Internet by interrogating a directory server; and - Figure 8 schematically illustrates a smart card architecture according to the invention having a portable multi-directory database functionality.
La figure 2 illustre schématiquement un exemple de système d'application à base de carte à puce selon un premier aspect de l'invention, permettant à cette dernière d'agir en tant que client/serveur "WEB.FIG. 2 schematically illustrates an example of a smart card-based application system according to a first aspect of the invention, enabling the latter to act as a client / server "WEB.
A l'exception de couches logicielles de protocole de communication spécifiques, référencées 13 et 23a, respectivement implantées dans le terminal 1 et la carte à puce 2a, les autres éléments, matériels ou logiciels, sont communs à l'art connu, notamment à ce qui a été décrit en regard des figures 1 A et 1 B, et il n'y a pas lieu de les re-décrire de façon détaillée. Le terminal 1 comprend des circuits 1 1 d'accès au réseau RI, constitués par exemple d'un modem. Ces circuits regroupent les couches logicielles inférieures, Ci et C2, qui correspondent aux couches "physique" et de "lien de données". On a également représenté les couches supérieures, C3 et C4, qui correspondent aux couches "d'adressage de réseau" ("IP", dans le cas d'Internet) et de "transport" ("TCP"). La couche supérieure d'application ("http", "ftp", "e-mail", etc.) n'a pas été représentée.With the exception of specific communication protocol software layers, referenced 13 and 23a, respectively located in the terminal 1 and the smart card 2a, the other elements, hardware or software, are common to the known art, in particular this which has been described with reference to FIGS. 1 A and 1 B, and there is no need to re-describe them in detail. The terminal 1 comprises circuits 11 for access to the RI network, consisting for example of a modem. These circuits group together the lower software layers, Ci and C2, which correspond to the "physical" and "data link" layers. Also shown are the upper layers, C3 and C4, which correspond to the "network addressing"("IP", in the case of the Internet) and "transport"("TCP") layers. The upper application layer ("http", "ftp", "e-mail", etc.) has not been shown.
L'interface entre les couches inférieures, Ci et C2, et les couches supérieures, C3 et C4, est constituée par une couche logicielle généralement appelée "driver couches basses". Les couches supérieures, C3 et C4, s'appuient sur cette interface et sont mises en œuvre par l'intermédiaire de bibliothèques de fonctions spécifiques ou bibliothèques réseau 14, avec lesquelles elles correspondent. Dans le cas du réseau Internet, "TCP/IP" est mis en œuvre au moyen de bibliothèques dites de "sockets".The interface between the lower layers, Ci and C2, and the upper layers, C3 and C4, is constituted by a software layer generally called "low layer driver". The upper layers, C3 and C4, rely on this interface and are implemented by means of specific function libraries or network libraries 14, with which they correspond. In the case of the Internet, "TCP / IP" is implemented by means of libraries known as "sockets".
Cette organisation permet à un navigateur 10 de poser des requêtes vers un serveur 4, pour la consultation de pages "WEB" (protocole "HTTP"), pour le transfert de fichiers (protocole "FTP") ou l'envoi de courrier électronique (protocole "e-mail"), ce de façon tout à fait classique en soi.This organization allows a browser 10 to make requests to a server 4, for consulting "WEB" pages ("HTTP" protocol), for transferring files ("FTP" protocol) or sending electronic mail ( "e-mail" protocol), in a completely classic way in itself.
Le terminal 1 comprend également un lecteur de carte 3, intégré ou non. Pour communiquer avec la carte à puce 2a, le lecteur de carte 30 englobe également deux couches basses, CC1 (couche physique) et CC2 (couche de lien de données), jouant un rôle similaire aux couches Ci et C2. Les interfaces logicielles avec les couches CC1 et CC2 sont décrites, par exemple, par la spécification "PC/SC" ("part 6, service provider"). Les couches elles-mêmes, CC1 et CC2, sont notamment décrites par les normes ISO 7816-1 à 7816-4, comme il a été rappelé.The terminal 1 also includes a card reader 3, integrated or not. To communicate with the smart card 2a, the card reader 30 also includes two lower layers, CC1 (physical layer) and CC2 (data link layer), playing a role similar to layers Ci and C2. The software interfaces with the layers CC1 and CC2 are described, for example, by the specification "PC / SC" ("part 6, service provider"). The layers themselves, CC1 and CC2, are in particular described by ISO standards 7816-1 to 7816-4, as has been recalled.
Une couche logicielle supplémentaire 16 forme interface entre les couches applicatives (non représentées) et les couches inférieures, CC1 et CC2. La fonction principale dévolue à cette couche 16 est une fonction de multiplexage/démultiplexage.An additional software layer 16 forms the interface between the application layers (not shown) and the lower layers, CC1 and CC2. The main function assigned to this layer 16 is a multiplexing / demultiplexing function.
Les communications avec la carte à puce 2a s'effectuent selon un paradigme similaire à celui utilisé pour la manipulation de fichiers dans un système d'exploitation du type "UNIX" (marque déposée) : OUVRIR ("OPEN"), LIRE ("READ"), ECRIRE ("WRITE"), FERMER ("CLOSE"), etc.The communications with the smart card 2a take place according to a paradigm similar to that used for the manipulation of files in an operating system of the "UNIX" type (registered trademark): OPEN ("OPEN"), READ ("READ "), WRITE, CLOSE, etc.
Du côté de la carte à puce 2a, on retrouve une organisation similaire, à savoir la présence de deux couches basses, référencées CCai (couche physique) et CCa2 (couche de lien de données), ainsi qu'une couche d'interface 26a, tout à fait similaire à la couche 16.On the side of the smart card 2a, there is a similar organization, namely the presence of two low layers, referenced CCai (physical layer) and CCa2 (data link layer), as well as an interface layer 26a, quite similar to layer 16.
Selon l'invention, on prévoit, de part et d'autre, c'est-à-dire dans le terminal 1 et dans la carte à puce 2a, deux couches de protocoles spécifiques : 13 et 23a, respectivement.According to the invention, provision is made, on either side, that is to say in the terminal 1 and in the smart card 2a, two layers of specific protocols: 13 and 23a, respectively.
Dans le terminal 1 , la couche spécifique 13 s'interface aux "drivers couches basses" 15, aux bibliothèques 14 des couches réseau, C3 et C4, et aux couches protocolaires du lecteur de carte 3, c'est-à-dire les couches inférieures, CC1 et CC2, via la couche de multiplexage 16. La couche spécifique 13 permet le transfert de paquets réseaux de et vers la carte à puce 2a. En outre, elle adapte les applications existantes telles le navigateur Internet 10, le courrier électronique, etc., pour des utilisations mettant en œuvre la carte à puce 2a.In terminal 1, the specific layer 13 interfaces with the "low layer drivers" 15, with the libraries 14 of the network layers, C3 and C4, and with the protocol layers of the card reader 3, that is to say the layers lower, CC1 and CC2, via the multiplexing layer 16. The specific layer 13 allows the transfer of network packets to and from the smart card 2a. In addition, it adapts existing applications such as the Internet browser 10, e-mail, etc., for uses implementing the smart card 2a.
Du côté de la carte à puce 2a, on retrouve une organisation tout à fait similaire constituée par une instance supplémentaire de la couche spécifique, référencée 23a, pendant de la couche 13. De façon plus précise, les couches spécifiques, 13 et 23a, sont subdivisées en trois éléments logiciels principaux : un module, 130 ou 230a, de transfert de blocs d'informations entre les couches 13 et 23a, via les couches conventionnelles CC1 , CC2, CCai et CCa2 ; une ou plusieurs pièces de logiciel, dites "agents intelligents", 132 ou 232a, qui réalisent, par exemple, des fonctions de conversion de protocoles ; et un module de gestion de la configuration spécifique, 131 et 231a, respectivement ; module qui peut être assimilé à un agent intelligent particulier.On the side of the smart card 2a, there is a completely similar organization constituted by an additional instance of the specific layer, referenced 23a, pendant from the layer 13. More specifically, the specific layers, 13 and 23a, are subdivided into three main software elements: a module, 130 or 230a, for transferring blocks of information between layers 13 and 23a, via the conventional layers CC1, CC2, CCai and CCa2; one or more pieces of software, called "intelligent agents", 132 or 232a, which perform, for example, protocol conversion functions; and a specific configuration management module, 131 and 231a, respectively; module which can be likened to a particular intelligent agent.
Pour simplifier, on appellera ci-après les agents intelligents, "agents", comme il a été précédemment indiqué.For simplicity, intelligent agents will hereinafter be called "agents", as has been previously indicated.
On retrouve donc, dans le terminal 1 et la carte à puce 2a, une pile protocolaire de communication entre les deux entités.There is therefore, in the terminal 1 and the smart card 2a, a protocol communication stack between the two entities.
Les couches de niveau deux (couches de lien de données), CC2 etLevel two layers (data link layers), CC2 and
CCa2, assurent l'échange entre la carte à puce 2a et le terminal 1. Ces couches sont responsables de la détection et l'éventuelle correction d'erreurs de transmission. Différents protocoles sont utilisables, et à titre d'exemples non exhaustifs les suivants :CCa2, ensure the exchange between the smart card 2a and the terminal 1. These layers are responsible for the detection and possible correction of transmission errors. Different protocols can be used, and as non-exhaustive examples the following:
- la recommandation ETSI GSM 11.11 ;- the ETSI GSM 11.11 recommendation;
- le protocole défini par la norme ISO 7816-3, en mode caractère- the protocol defined by the ISO 7816-3 standard, in character mode
T=0 ; le protocole défini par la norme ISO 7816-3, en mode bloc T=1T = 0; the protocol defined by standard ISO 7816-3, in block mode T = 1
- ou le protocole défini par la norme ISO 3309, en mode trame "HDLC" (pour "High-Level Data Link Control procédure" ou procédure de commande de liaison à haut niveau).- or the protocol defined by ISO standard 3309, in "HDLC" frame mode (for "High-Level Data Link Control procedure" or high-level link control procedure).
Dans le cadre de l'invention, on utilisera de préférence le protocole ISO 7816-3, en mode bloc.Within the framework of the invention, the ISO 7816-3 protocol will preferably be used, in block mode.
De façon connue en soi, à chaque couche de protocole, il est associé un certain nombre de primitives qui permettent les échanges de données entre couches de même niveau et d'une couche à l'autre. A titre d'exemple, les primitives associées à la couche de niveau deux sont du type "demande de données" ("ϋata.request") et "envoi de données" par la carte {"Data.response"), ainsi que "confirmation de données" {"Data.confirm"), etc. De façon plus spécifique, les couches 13 et 23a sont chargées du dialogue entre la carte à puce 2a et l'hôte, c'est-à-dire le terminal 1. Ces couches permettent l'échange d'informations entre un utilisateur (non représenté) du terminal 1 et la carte à puce 2a, par exemple via des menus déroulants sous la forme d'hypertexte au format "HTML". Elles permettent aussi la mise en place d'une configuration adaptée pour l'émission et/ou la réception de paquets de données. Comme il a été indiqué ci-dessus, les couches comprennent trois entités distinctes.In a manner known per se, each protocol layer is associated with a certain number of primitives which allow the exchange of data between layers of the same level and from one layer to another. For example, the primitives associated with the layer of level two are of the type "data request"("ϋata.request") and "data sending" by card {"Data.response"), as well as "data confirmation"{"Data.confirm"), etc. More specifically, the layers 13 and 23a are responsible for the dialogue between the smart card 2a and the host, that is to say the terminal 1. These layers allow the exchange of information between a user (not shown) of terminal 1 and the smart card 2a, for example via drop-down menus in the form of hypertext in "HTML" format. They also allow the setting up of a configuration suitable for the transmission and / or reception of data packets. As noted above, the layers include three separate entities.
La première couche, 130 ou 230a, est essentiellement constituée par un multiplexeur logiciel. Elle permet l'échange d'informations entre la carte à puce 2a et le terminal hôte 1 , sous la forme d'unités de données de protocole. Elle joue un rôle similaire à celui d'un commutateur de paquets de données. Ces unités sont émises ou reçues via la couche de niveau deux (couche de liens de données). Ce protocole particulier de communication permet de mettre en communications au moins une paire d' "agents". Le premier agent de chaque paire, 132, est situé dans la couche 13, côté terminal 1 , le second, 232a, est situé dans la couche 23a, côté carte à puce 2a. Une liaison entre deux "agents" est associée à une session, que l'on pourra appeler "S-Agent". Une session est un échange de données bidirectionnel entre ces deux agents. Si l'une ou l'autre des couches, 13 et 23a, comporte plusieurs agents, les agents d'une même couche peuvent aussi établir de sessions entre eux et/ou avec les modules 131 et 231a, qui constituent des agents particuliers.The first layer, 130 or 230a, is essentially constituted by a software multiplexer. It allows the exchange of information between the smart card 2a and the host terminal 1, in the form of protocol data units. It plays a role similar to that of a data packet switch. These units are sent or received via the level two layer (data link layer). This particular communication protocol makes it possible to put at least one pair of "agents" into communication. The first agent of each pair, 132, is located in layer 13, on the terminal side 1, the second, 232a, is located in layer 23a, on the smart card side 2a. A link between two "agents" is associated with a session, which can be called "S-Agent". A session is a two-way data exchange between these two agents. If one or other of the layers, 13 and 23a, comprises several agents, the agents of the same layer can also establish sessions with each other and / or with the modules 131 and 231a, which constitute particular agents.
De façon plus précise, un agent est une entité logicielle autonome qui peut réaliser tout ou partie de fonctions des couches de niveau trois et quatre, en fonction de la configuration mise en œuvre par le terminal 1. Les agents sont associés à des propriétés ou attributs particuliers. Pour fixer les idées, et à titre d'exemple non limitatif, les six propriétés suivantes sont associées aux agents :More specifically, an agent is an autonomous software entity which can perform all or part of the functions of the layers of levels three and four, depending on the configuration implemented by the terminal 1. Agents are associated with particular properties or attributes. To fix the ideas, and by way of nonlimiting example, the following six properties are associated with the agents:
"hôte" : agent localisé dans le terminal ; - "carte" : agent localisé dans la carte à puce ;"host": agent located in the terminal; - "card": agent located in the smart card;
"local" : agent ne communiquant pas avec le réseau ; "réseau" : agent communiquant avec le réseau (côté terminal) ; "client" : agent qui initialise une session ; "serveur" : agent qui reçoit une demande de session. Un agent particulier est identifié par une référence, par exemple un nombre entier de 16 bits (c'est-à-dire compris entre 0 et 65535). Le bit de poids fort (b15 = 1 ) indique si la référence est locale (communications locales à la carte à puce ou au terminal) ou distante (b15 = 0)."local": agent not communicating with the network; "network": agent communicating with the network (terminal side); "client": agent who initiates a session; "server": agent who receives a session request. A particular agent is identified by a reference, for example an integer of 16 bits (that is to say between 0 and 65535). The most significant bit (b15 = 1) indicates whether the reference is local (local communications to the smart card or to the terminal) or remote (b15 = 0).
Il existe deux grandes catégories d'agents : les agents de type "serveur", qui sont identifiés par une référence fixe, et les agents de typeThere are two main categories of agents: "server" type agents, which are identified by a fixed reference, and type agents
"client", qui sont identifiés par une référence variable, que l'on peut qualifier d'éphémère, délivrée par le module de gestion de configuration, 131 ou"client", which are identified by a variable reference, which can be described as ephemeral, delivered by the configuration management module, 131 or
231 a.231 a.
Les agents communiquent entre eux à l'aide d'entité dites "unités de donnée de protocole" ou "pdu" (pour "protocol data unit", selon la terminologie anglo-saxonne) constituant une référence de destination et une référence de source. On pourrait également appeler cette "pdu" particulière "SmartTP pdu", en référence au terme anglais "Smart Card" (carte à puce) couramment utilisé. Les "pdu" utilisent notamment les références définies ci- dessus.The agents communicate with each other using an entity called "protocol data units" or "pdu" (for "protocol data unit", according to English terminology) constituting a destination reference and a source reference. We could also call this particular "pdu" "SmartTP pdu", with reference to the English term "Smart Card" (chip card) commonly used. The "pdu" use in particular the references defined above.
Une "SmartTP pdu", ou plus simplement "pdu" ci-après, comporte une référence source, une référence de destination, un ensemble de bits constituant des drapeaux ou "flags" qui précisent la nature de la "pdu", et des données optionnelles : - le drapeau "OPEN" (ouvert) est positionné pour indiquer l'ouverture d'une session ; - le drapeau "CLOSE" (fermé) indique la fermeture d'une session ; etA "SmartTP pdu", or more simply "pdu" below, includes a source reference, a destination reference, a set of bits constituting flags or "flags" which specify the nature of the "pdu", and data optional: - the flag "OPEN" (open) is positioned to indicate the opening of a session; - the "CLOSE" flag indicates the end of a session; and
- Le drapeau "BLOCK" (verrouillé) indique que l'agent est en attente d'une réponse de son correspondant et suspend toute activité. On appellera jeton une "pdu" qui ne comporte pas de données.- The "BLOCK" flag indicates that the agent is waiting for a reply from his correspondent and suspends all activity. We will call token a "pdu" which does not contain data.
L'entité "SmartTP" contrôle l'existence de l'agent destinataire et réalise la commutation d'un paquet vers ce dernier.The "SmartTP" entity checks the existence of the destination agent and switches a packet to it.
Une session agent "S-Agent" possède trois états remarquables, à savoir : - un état déconnecté : aucune session n'est ouverte avec un autre agentAn agent session "S-Agent" has three remarkable states, namely: - a disconnected state: no session is opened with another agent
- un état connecté : une session est ouverte avec un autre agent, une session "S-Agent" étant identifiée par une paire de références ; et- a connected state: a session is opened with another agent, an "S-Agent" session being identified by a pair of references; and
- un état bloqué, l'agent étant connecté et attendant une réponse de son correspondant.- a blocked state, the agent being connected and awaiting a response from his correspondent.
Le mécanisme d'établissement d'une session "S-Agent" est le suivant :The mechanism for establishing an "S-Agent" session is as follows:
- une nouvelle instance d'un agent client est créée (côté carte à puce ou terminal), cet agent étant identifié par une référence éphémère pseudo-unique ;- a new instance of a client agent is created (chip card or terminal side), this agent being identified by a temporary pseudo-unique reference;
- l'agent client émet une "pdu" à destination d'un agent serveur (dont la référence est connue par ailleurs) avec le drapeau "OPEN" positionné et l'agent client passe à l'état connecté ou bloqué selon la valeur du drapeau "BLOCK' ; et - l'agent serveur reçoit la "pdu" avec le drapeau "OPEN" et passe à l'état connecté- the client agent issues a "pdu" to a server agent (whose reference is known elsewhere) with the "OPEN" flag set and the client agent goes into the connected or blocked state depending on the value of the "BLOCK 'flag; and - the server agent receives the" pdu "with the" OPEN "flag and goes to the connected state
Une fois une session ouverte, deux agents échangent des données via des "pdu".Once a session is open, two agents exchange data via "pdu".
Le mécanisme de fermeture d'une session est le suivant : - un agent émet une "pdu" avec le drapeau "CLOSE" positionné (et qui comporte éventuellement des données ; et - l'autre agent reçoit une "pdu" avec le drapeau "CLOSE" positionné (et qui comporte éventuellement des données) et la session "S-Agent" passe à l'état déconnecté.The mechanism for closing a session is as follows: - an agent issues a "pdu" with the "CLOSE" flag set (and which possibly includes data; and - the other agent receives a "pdu" with the "CLOSE" flag set (and which possibly includes data) and the "S-Agent" session goes to the disconnected state.
La figure 3 illustre de façon schématique le diagramme d'états des sessions "S-Agent", telles qu'elles viennent d'être rappelées.FIG. 3 schematically illustrates the state diagram of the "S-Agent" sessions, as they have just been recalled.
Les couches 130 et 230a gèrent des tables (non représentées) qui contiennent la liste des agents présents, côté terminal hôte 1 et carte à puce 2a.Layers 130 and 230a manage tables (not shown) which contain the list of agents present, on the host terminal side 1 and smart card 2a.
De façon pratique, les agents permettent d'échanger des données (de l'hypertexte, par exemple), mais également de déclencher des transactions réseau, autorisant des communications entre la carte à puce 2a et un serveur éloigné 4 (figure 2).In practical terms, the agents make it possible to exchange data (of hypertext, for example), but also to trigger network transactions, authorizing communications between the smart card 2a and a remote server 4 (FIG. 2).
Les modules de gestion de configuration, 131 et 231a, respectivement, sont assimilables à des agents particuliers. Par exemple, le module 131 , côté terminal hôte 1 , gère notamment des informations relatives à la configuration de ce terminal (modes de fonctionnement), liste des autres agents présents, etc. Le module 231a, côté carte à puce 2a, a des fonctions analogues. Ces deux agents peuvent être mis en communication l'un avec l'autre pour établir une session. De façon pratique, la carte à puce 2a est avantageusementThe configuration management modules, 131 and 231a, respectively, can be compared to specific agents. For example, the module 131, on the host terminal side 1, manages in particular information relating to the configuration of this terminal (operating modes), list of the other agents present, etc. The module 231a, on the smart card side 2a, has similar functions. These two agents can be put in communication with each other to establish a session. In practical terms, the smart card 2a is advantageously
"adressée" par utilisation d'une adresse "URL" (pour "Universal Reεource Locator") définissant un rebouclage sur le terminal 1 lui-même, et non un pointage sur un serveur externe. A titre d'exemple, la structure de cette "URL" est habituellement la suivante : http://127.0.0.1 :8080 (1 ), dans laquelle 127.0.0.1 est l'adresse "IP" de rebouclage et 8080 est le numéro de port."addressed" by using a "URL" address (for "Universal Reεource Locator") defining a loopback on the terminal 1 itself, and not a pointing on an external server. As an example, the structure of this "URL" is usually as follows: http://127.0.0.1: 8080 (1), in which 127.0.0.1 is the loopback "IP" address and 8080 is the number of port.
La figure 4 illustre de façon simplifiée l'architecture logique d'un système selon l'invention du type représenté sur la figure 2, mais décrite de façon plus détaillée. La carte à puce 2a comprend plusieurs agents, dont deux seulement ont été représentés : un agent de type non précisément défini 232aι et un agert 232a2, de type dit "WEB". La pile logique comprend, les couches de protocole inférieures, référencées 200a, répondant aux normes ISO 7816-3 (figure 2 : CCai et CCa2), le gestionnaire de commandes "APDU" 201 ai , et le multiplexeur de paquets 230a, ce dernier étant interface aux agents, notamment l'agent "WEB" 231 a2.FIG. 4 illustrates in a simplified manner the logical architecture of a system according to the invention of the type shown in FIG. 2, but described in more detail. The smart card 2a includes several agents, including only two have been represented: an agent of the type not precisely defined 232aι and an agent 232a2, of the so-called "WEB" type. The logic stack comprises, the lower protocol layers, referenced 200a, meeting ISO standards 7816-3 (FIG. 2: CCai and CCa2), the "APDU" command manager 201 ai, and the packet multiplexer 230a, the latter being interface to agents, in particular the "WEB" agent 231 a2.
Du côté terminal 1 , il existe deux piles, l'une communiquant avec le réseau Internet RI, l'autre avec la carte à puce 2a. La première pile comprend les organes 11 (figure 2 : Ci et C2) d'accès au réseau (normes OSI 1 et 2) et les couches de protocole "TCP/IP" (figure 2 : C3 et C4), référencées 100. Ces dernières couches sont interfacées avec le navigateur "WEB" 10. L'autre pile comprend les couches de protocole inférieures, référencées 101 , répondant aux normes ISO 7816-3 (figure 2 : C-| et C2), le gestionnaire 102 d'ordres "APDU" et le multiplexeur de paquets 130, ce dernier étant interface avec des agents, dont un seul 132, est représenté. Ce dernier, que l'on supposera de "type réseau", peut en outre communiquer, d'une part avec le navigateur 10, via les couches "TCP/IP" 101 , d'autre part avec le réseau Internet RI, via ces mêmes couches "TCP/IP" 101 et l'organe 11 , d'accès au réseau RI. Le gestionnaire d'ordres "APDU" 201a est également interface avec une ou plusieurs couches de niveau applications, que l'on appellera simplement applications. Ces applications, A , ..., At, ..., An, sont, comme il a été indiqué, des applications de type conventionnel.On the terminal side 1, there are two batteries, one communicating with the Internet network RI, the other with the smart card 2a. The first stack comprises the organs 11 (FIG. 2: Ci and C2) for accessing the network (OSI standards 1 and 2) and the "TCP / IP" protocol layers (FIG. 2: C3 and C4), referenced 100. These last layers are interfaced with the "WEB" browser 10. The other stack includes the lower protocol layers, referenced 101, meeting ISO 7816-3 standards (Figure 2: C- | and C2), the 102 order manager "APDU" and the packet multiplexer 130, the latter being interface with agents, of which only one 132, is shown. The latter, which will be assumed to be "network type", can also communicate, on the one hand with the browser 10, via the "TCP / IP" layers 101, on the other hand with the Internet network RI, via these same "TCP / IP" layers 101 and member 11, for access to the RI network. The “APDU” order manager 201a also interfaces with one or more application-level layers, which will simply be called applications. These applications, A, ..., A t , ..., A n , are, as indicated, applications of the conventional type.
En résumé, la fonction client/serveur "WEB", fournie par la carte à puce 2a, peut être réalisée par l'association de l'agent "WEB" 232aι dans la carte à puce et de l'agent réseau 132 dans le terminal 1 , et par la mise en œuvre de sessions entre agents, comme il a été décrit.In summary, the client / server function "WEB", provided by the smart card 2a, can be performed by the combination of the agent "WEB" 232aι in the smart card and the network agent 132 in the terminal 1, and by the implementation of sessions between agents, as described.
La carte à puce 2a présente donc bien la fonctionnalité client/serveur "WEB". En outre, selon une caractéristique avantageuse du procédé de l'invention, n'importe quelle application conventionnelle, A-\ à An, du type "CGA" précité, peut être activée au travers de ce client/serveur "WEB", soit par le navigateur "WEB" 10 présent dans le terminal 1 , soit par un navigateur éloigné 4, localisé en un point quelconque du réseau Internet RI, par la mise en œuvre de sessions entre agents. Selon le procédé de l'invention, les applications, A-\ à An, ne nécessitent pas d'être ré-éc tes et sont mises en œuvre telles quelles.The smart card 2a therefore clearly presents the client / server functionality "WEB". In addition, according to an advantageous characteristic of the process of the invention, any conventional application, A- \ to A n , of the type "CGA" above, can be activated through this client / server "WEB", either by the browser "WEB" 10 present in the terminal 1, or by a remote browser 4, located at any point of the Internet network RI, through the implementation of sessions between agents. According to the method of the invention, the applications, A- \ to A n , do not need to be repeated and are implemented as they are.
Dans le cadre de l'invention, tout ou partie des applications A-\ à An peut être constitué par des applications associées à un ou plusieurs protocole(s) "PE" et/ou un ou plusieurs protocole(s) "PL", et chargé dans une mémoire de la carte à puce 2a. Des données représentant un ou plusieurs profils "PA" peuvent également être stockées dans la carte à puce 2a.In the context of the invention, all or part of the applications A- \ to An may consist of applications associated with one or more "PE" protocol (s) and / or one or more "PL" protocol (s), and loaded into a memory of the smart card 2a. Data representing one or more "PA" profiles can also be stored in the smart card 2a.
La fonctionnalité client/serveur "WEB" offerte par la carte à puce 2a n'est pas suffisante pour qu'une application puisse s'exécuter. Il est nécessaire de lui adjoindre une fonctionnalité supplémentaire. En effet, selon un autre aspect de l'invention, la fonction serveurThe client / server functionality "WEB" offered by the smart card 2a is not sufficient for an application to be able to run. It is necessary to add an additional functionality to it. According to another aspect of the invention, the server function
"WEB" offerte par la carte à puce 2a inclut un mécanisme similaire à la fonction dite "CGI" (pour "Common Gateway Interface" ou "interface de passerelle") implantée dans les serveurs "WEB" classique."WEB" offered by the smart card 2a includes a mechanism similar to the so-called "CGI" function (for "Common Gateway Interface" or "gateway interface") installed in conventional "WEB" servers.
Avant de décrire un exemple d'architecture conforme à l'invention, permettant de réaliser une fonction de ce type, au sein même de la carte à puce, il est utile de rappeler les principales caractéristiques d'un mode de fonctionnement "CGI".Before describing an example of architecture in accordance with the invention, making it possible to perform a function of this type, even within the smart card, it is useful to recall the main characteristics of an "CGI" operating mode.
Le "CGI" est une spécification de mise en œuvre, depuis un serveur "WEB", d'applications écrites pour les systèmes d'exploitation "UNIX" (marque déposée), "DOS", ou "WINDOWS" (marque déposée). A titre d'exemple, pour le système d'exploitation "UNIX", la spécification est "CGI 1.1 " et pour le système d'exploitation "WINDOWS 95", la spécification est "CGI 1.3".The "CGI" is a specification for implementing, from a "WEB" server, applications written for the "UNIX" (registered trademark), "DOS", or "WINDOWS" (registered trademark) operating systems. For example, for the "UNIX" operating system, the specification is "CGI 1.1" and for the "WINDOWS 95" operating system, the specification is "CGI 1.3".
Toujours à titre d'exemple, une requête "HTTP" pour une adresse "URL", du type : "http://www.host.com/cgi-bin/xxx.cgi" (2), dans laquelle "host" se réfère à un système hôte (généralement éloigné), est interprétée par un serveur "WEB" comme l'exécution d'un script de commande, de type "CGI" nommé "xxx" et présent dans le répertoire "cgi- bin" de ce système hôte. Bien que le nom du répertoire puisse être a priori quelconque, par convention, c'est le nom donné au répertoire stockant les scripts de type "CGI". Un script est une suite d'instructions du système d'exploitation du système hôte dont le résultat final est transmis au navigateur "WEB" émetteur de la requête précitée. Différents langages peuvent être utilisés pour écrire ce script, par exemple le langage "PERL" (marque déposée).Still by way of example, an "HTTP" request for a "URL" address, of the type: "http://www.host.com/cgi-bin/xxx.cgi" (2), in which "host" refers to a host system (usually remote), is interpreted by a "WEB" server as execution of a command script, of the "CGI" type named "xxx" and present in the "cgi- bin" directory of this host system. Although the name of the directory can be a priori arbitrary, by convention, it is the name given to the directory storing scripts of type "CGI". A script is a series of instructions from the operating system of the host system, the final result of which is transmitted to the "WEB" browser issuing the above request. Different languages can be used to write this script, for example the language "PERL" (registered trademark).
De façon pratique, la requête est habituellement affichée sur un écran informatique sous la forme d'un formulaire compris dans une page "HTLM". Le langage "HTLM" permet de traduire un formulaire en une adresse "URL". Le formulaire comporte un ou plusieurs champs, obligatoires ou non, qui sont remplis par un utilisateur à l'aide des moyens de saisie habituels : clavier pour le texte, souris pour les cases à cocher ou les boutons dits "radio", etc. Le contenu du formulaire (ainsi qu'éventuellement des informations et instructions dites "cachées") est émis à destination du serveur "WEB". Le code "HTLM" de la page décrit la structure matérielle du formulaire (cadre, graphisme, couleur, et tout autre attribut), ainsi que la structure des champs de données à saisir (nom, longueur, type de données, etc.).In practice, the request is usually displayed on a computer screen in the form of a form included in a "HTLM" page. The "HTLM" language allows you to translate a form into a "URL" address. The form includes one or more fields, mandatory or not, which are filled in by a user using the usual input methods: keyboard for text, mouse for check boxes or so-called "radio" buttons, etc. The content of the form (as well as possibly so-called "hidden" information and instructions) is sent to the "WEB" server. The "HTLM" code on the page describes the physical structure of the form (frame, graphics, color, and any other attribute), as well as the structure of the data fields to be entered (name, length, type of data, etc.).
La transmission peut s'effectuer selon deux types de formats principaux. Un premier format utilise la méthode dite "POST" et un second la méthode dite "GET". Une information de type de format est présente dans le code de la page formulaire.Transmission can take place in two main types of formats. A first format uses the so-called "POST" method and a second uses the so-called "GET" method. Format type information is present in the code of the form page.
Ce mécanisme n'est cependant pas directement transposable à une carte à puce, même si celle-ci offre la fonctionnalité client/serveur "WEB" conformément à l'une des caractéristiques de l'invention. On va maintenant décrire un exemple d'architecture permettant d'activer une application quelconque, de type conventionnel, via un serveur "WEB" sur la carte à puce, par référence à la figure 5.This mechanism cannot however be directly transposed to a smart card, even if the latter offers client / server functionality "WEB" in accordance with one of the characteristics of the invention. We will now describe an example of architecture making it possible to activate any application, of conventional type, via a "WEB" server on the smart card, with reference to FIG. 5.
Parmi les agents intelligents, conforme à l'un des aspects de l'invention, on prévoit des agents intelligents particuliers, que l'on appellera ci-après "Agents traducteurs de script" ou de façon abrégée "ATS". Le script est alors interprété par un des agents intelligents. Cette traduction peut être réalisée de différentes manières : a/par l'agent "WEB" 232aι lui-même, qui est doté dans ce cas d'une double capacité ; b/par un agent script unique capable de traduire l'ensemble des scripts présents dans la carte à puce 2a ; c/par un agent de script dédié que l'on appellera "ATSD" ci-après (un agent par script) ; ou d/par un agent "APDU" 2010a du gestionnaire d'ordres "APDU"Among the intelligent agents, in accordance with one aspect of the invention, special intelligent agents are provided, which will be called hereinafter "Script translating agents" or abbreviated as "ATS". The script is then interpreted by one of the intelligent agents. This translation can be carried out in different ways: a / by the "WEB" agent 232aι itself, which in this case is provided with a double capacity; b / by a single script agent capable of translating all the scripts present in the smart card 2a; c / by a dedicated script agent which will be called "ATSD" below (one agent per script); or d / by an agent "APDU" 2010a of the order manager "APDU"
201 a, qui est doté, dans ce cas, d'une double capacité.201 a, which in this case has a double capacity.
L'agent "APDU" 2010a est une composante de la couche gestionnaire d'ordres "APDU" 201a. Cette dernière est une couche capable de centraliser tous les ordres "APDU" émis et/ou reçus par le système, de sélectionner des applications, parmi A à An, mais également d'offrir une interface de type agent intelligent. Elle est donc capable, selon l'une des caractéristiques de l'invention de communiquer avec tous les agents intelligents (via des sessions), que ces agents soient localisés dans le terminal 1 ou la carte à puce 2a. Dans le cas c/ ci-dessus, une session est ouverte entre l'agentThe "APDU" agent 2010a is a component of the "APDU" order management layer 201a. The latter is a layer capable of centralizing all the "APDU" orders sent and / or received by the system, of selecting applications from A to A n , but also of offering an interface of the intelligent agent type. It is therefore capable, according to one of the characteristics of the invention, of communicating with all the intelligent agents (via sessions), whether these agents are located in the terminal 1 or the smart card 2a. In case c / above, a session is opened between the agent
"WEB" 232aι et l'un des agents "ATSD"."WEB" 232aι and one of the agents "ATSD".
La figure 5 illustre un exemple d'architecture pour laquelle les agents traducteurs sont du type "ATSD". Ils sont référencés ATS, à ATSn et associés aux applications A à An. L'application sélectionnée étant supposée .s'.; être l'application Aιt la session s'établit entre l'agent "WEB" 232aι et l'agent ATS.FIG. 5 illustrates an example of architecture for which the translating agents are of the "ATSD" type. They are referenced ATS, to ATS n and associated with the applications A to A n . The selected application being assumed .s .; be the application A and the session is established between the "WEB" agent 232aι and the ATS agent.
Un agent traducteur de script génère une suite d'ordres "APDU". Une session est ouverte entre l'agent traducteur, par exemple l'agent ATSt, et l'agent "APDU" 2101a. Les ordres sont alors émis vers l'agent "APDU" 2101a. Le gestionnaire d'ordres "APDU" 210a sélectionne l'application "CGA" A/ et lui transmet les ordres "APDU", ordres traduits et donc conventionnels, qu'elle est en mesure de comprendre. Cette application est donc correctement activée, sans avoir à la modifier ou à la réécrire.A script translator agent generates a sequence of "APDU" orders. A session is opened between the translating agent, for example the ATS agent t , and the "APDU" agent 2101a. The orders are then issued to the "APDU" agent 2101a. The "APDU" order manager 210a selects the "CGA" A / application and transmits to it the "APDU" orders, translated and therefore conventional orders, which it is able to understand. This application is therefore correctly activated, without having to modify or rewrite it.
Les réponses de l'application At sont transmises au gestionnaire d'ordres "APDU" 210a, à l'agent "APDU" 2010a, puis de nouveau à l'agent ATSι (et de façon plus générale à l'agent traducteur de script).The responses of the application A t are transmitted to the "APDU" order manager 210a, to the "APDU" agent 2010a, then again to the ATS agent ι (and more generally to the translator agent of script).
Les différents cheminements sont représentés symboliquement sur la figure 5 par des traits pleins reliant les blocs fonctionnels, ou en pointillés à l'intérieur de ces blocs.The different paths are symbolically represented in FIG. 5 by solid lines connecting the functional blocks, or in dotted lines inside these blocks.
Le procédé selon l'invention utilise les deux caractéristiques qui viennent d'être rappelées : fonctionnement de la carte à puce en tant que serveur/client "WEB", incluant une fonction "CGI". On va maintenant décrire de façon détaillée les différentes phases et étapes du procédé selon l'invention par référence aux figures 6A à 8.The method according to the invention uses the two characteristics which have just been mentioned: operation of the smart card as a "WEB" server / client, including a "CGI" function. We will now describe in detail the different phases and steps of the method according to the invention with reference to FIGS. 6A to 8.
La première phase concerne l'enregistrement d'un profil d'abonné dans un serveur d'annuaire particulier que l'on référencera SA, ci-après.The first phase concerns the registration of a subscriber profile in a particular directory server which will be referred to as SA, below.
Dans une première étape, illustrée par la figure 6A, la carte à puce 2a est adressée par le navigateur 10 du terminal 1 , via les couches 13 etIn a first step, illustrated in FIG. 6A, the smart card 2a is addressed by the browser 10 of the terminal 1, via the layers 13 and
23a. On récupère, par une commande de type "GET" par exemple, un formulaire de chargement à partir de la carte à puce 2a, formulaire en langage "HTML" que l'on appellera arbitrairement "download.html".23a. We recover, by a command of the "GET" type for example, a loading form from the smart card 2a, form in "HTML" language which we will arbitrarily call "download.html".
Cette récupération est effectuée en consultant une page correspondante dont l'URL est typiquement de la forme suivante : http://127.0.0.1 :8080/download.html (3), dans laquelle http://127.0.0.1 :8080 est l'adresse URL de rebouclage proprement dite, telle qu'elle a été définie par la relation (1 ), et "download.html" la page "HTML" à obtenir. Cette requête met en œuvre une session entre agents intelligents comme il a été décrit en regard des figures 2 à 4, selon un premier aspect de l'invention. La carte à puce 2a joue alors le rôle d'un serveur "WEB".This recovery is carried out by consulting a corresponding page whose URL is typically of the following form: http://127.0.0.1: 8080 / download.html (3), in which http://127.0.0.1: 8080 is the actual loopback URL, as defined by the relation (1 ), and "download.html" the "HTML" page to obtain. This request implements a session between intelligent agents as it has been described with reference to FIGS. 2 to 4, according to a first aspect of the invention. The smart card 2a then plays the role of a "WEB" server.
La carte à puce 2a envoie le formulaire "download.html" lors d'une deuxième étape, toujours par ouvertures de sessions entre agents intelligents appariés, selon le procédé de l'invention. Le formulaire obtenu peut être affiché sur un écran 5 par l'intermédiaire du navigateur 10 et est référencé P sur la figure 6A qui illustre schématiquement ce processus. Ce formulaire constitue une page d'accueil pour l'internaute désirant s'enregistrer sur un serveur d'annuaire. La carte à puce se comporte alors comme un serveur "WEB".The smart card 2a sends the "download.html" form during a second step, always by opening sessions between paired intelligent agents, according to the method of the invention. The form obtained can be displayed on a screen 5 via the browser 10 and is referenced P in FIG. 6A which schematically illustrates this process. This form constitutes a home page for the Internet user wishing to register on a directory server. The smart card then behaves like a "WEB" server.
La page P peut comporter, de façon usuelle, différents éléments de type graphique ou de type texte, ainsi que des éléments interactifs de commande (bouton de type dit "radio", cases à cocher, zones d'entrées de données, etc.). On va supposer, dans un premier temps que la carte à puce 2a n'offre, à son porteur (non représenté), que la possibilité de s'enregistrer sur un serveur d'annuaire unique, référencé SAU, et selon un profil unique d'abonné, référencé PAU. On suppose également que ce profil unique PAU est enregistré dans la carte à puce 2a. Dans cette hypothèse, le formulaire P (c'est-à-dire la page d'accueil) affiché sur l'écran 5, peut se réduire à une présentation minimale, dont la figure 6B illustre un exemple possible : formulaire PThe P page can usually include different graphic or text elements, as well as interactive control elements ("radio" type button, check boxes, data entry areas, etc.) . We will assume, firstly that the smart card 2a only offers its bearer (not shown) the possibility of registering on a single directory server, referenced SA U , and according to a single profile subscriber, referenced PA U. It is also assumed that this unique profile PA U is recorded in the smart card 2a. In this hypothesis, the form P (that is to say the home page) displayed on the screen 5, can be reduced to a minimal presentation, of which FIG. 6B illustrates a possible example: form P
Le formulaire P comprend diverses zones de textes, sous la référence unique Zt. Ces zones affichent typiquement le nom "xxx" du serveur d'annuaire (SAU), l'action proposée "enregistrement" et diverses aides (par exemple "cliquer ici"). Puisque l'on a supposé que les données du profil d'abonné PAU étaient enregistrées dans la carte à puce 2a, il suffit de prévoir un bouton d'envoi Bs. Le fait pour l'internaute de cliquer sur ce bouton à l'aide d'une souris (figure 1A : 6b) ou d'appuyer sur la touche "entrée" d'un clavier (figure 1A : 6a), déclenche l'envoi du formulaire vers la carte à puce 2a.Form P includes various text areas, under the unique reference Z t . These zones typically display the name "xxx" of the directory server (SA U ), the proposed action "registration" and various aids (for example "click here"). Since it was assumed that the data from subscriber profile PA U were recorded in the smart card 2a, it suffices to provide a send button B s . The fact for the Internet user to click on this button using a mouse (Figure 1A: 6b) or to press the "enter" key on a keyboard (Figure 1A: 6a), triggers the sending from the form to the smart card 2a.
Dans une autre variante du procédé selon l'invention, les données afférentes au profil de l'abonné sont saisies directement par celui-ci. Dans cette hypothèse, le formulaire est plus complexe. La figure 6C illustre un exemple possible de formulaire, référencé P2. Il comprend une première zone de texte fixe Zn, similaire à celle de la figure 6B (Z,) et une ou plusieurs zone(s) de saisie de données, sous la référence unique ZΆ. On prévoit comme précédemment un bouton d'envoi β s, mais aussi avantageusement un bouton Braz de ré-initialisation du formulaire P2, qui permet d'effacer les données saisies en cas d'erreur. La ou les zones de saisies de données ZΆ peu(ven)t être du type dit "TEXTAREA" en langage "HTML" et présenter une facilité dite d' "ascenseur" pour l'affichage déroulant de textes longsIn another variant of the method according to the invention, the data relating to the profile of the subscriber are entered directly by the latter. In this hypothesis, the form is more complex. FIG. 6C illustrates a possible example of a form, referenced P 2 . It comprises a first fixed text zone Z n , similar to that of FIG. 6B (Z,) and one or more data entry zone (s), under the unique reference Z Ά . Is provided as previously sending a β s button, but advantageously also a button B tidal re-initialization of the form P 2, which erases the data entered in error. The zone (s) for entering data Z Ά can (be) of the type known as "TEXTAREA" in "HTML" language and present a facility called "lift" for the scrolling display of long texts
Le code "HTML" nécessaire pour programmer un tel formulaire est bien connu en soi et est à la portée de l'homme de métier. Il n'est pas nécessaire de le détailler de nouveau. On peut cependant indiquer qu'il contient notamment une ligne de code en langage "HTML" qui se présente typiquement sous la forme :The "HTML" code necessary to program such a form is well known in itself and is within the reach of those skilled in the art. There is no need to detail it again. We can however indicate that it contains in particular a line of code in "HTML" language which typically takes the form:
<form action="http://127.0.01 :8080/cgi-smart/pe"> (4) dans laquelle http://127.0.01 :8080 est l'URL de rebouclage de la relation (1 ), cgi-smart le répertoire "CGI" précité contenant un script "pe" associé à une des applications stockées dans la carte à puce 2a, référencée par exemple Ae. cette application permet l'enregistrement de l'abonné (internaute) sur l'annuaire SAU avec le profil PAU. Cette action s'effectue de la manière décrite en regard de la figure 5, par mise en œuvre des fonctionnalités "CGI", d'une part, et client/serveur, d'autre part, offertes par la carte à puce 2a. L'application Ae se comporte comme un client. Dans le premier cas (figure 6B), il n'est pas nécessaire de passer des paramètres à la carte à puce 2a. En effet, les données de profil d'abonné PAU sont uniques et enregistrées dans la carte à puce 2a.<form action = "http: //127.0.01: 8080 / cgi-smart / pe"> (4) in which http: //127.0.01: 8080 is the loopback URL for the relationship (1), cgi -smart the aforementioned "CGI" directory containing a "pe" script associated with one of the applications stored in the smart card 2a, referenced for example A e . this application allows the subscriber (internet user) to be registered in the SA U directory with the PA U profile. This action is carried out in the manner described with reference to FIG. 5, by implementing the "CGI" functionalities, on the one hand, and client / server, on the other hand, offered by the smart card 2a. The application A e behaves like a client. In the first case (FIG. 6B), it is not necessary to pass parameters to the smart card 2a. In fact, the subscriber profile data PA U are unique and recorded in the smart card 2a.
Dans le second cas (figure 6C), les données saisies sont passées en tant que paramètres à la carte à puce 2a, sous la forme d'une requête "HTTP".In the second case (FIG. 6C), the data entered is passed as parameters to the smart card 2a, in the form of an "HTTP" request.
La figure 6D illustre schématiquement le processus global de la phase d'enregistrement d'un internaute sur un serveur d'annuaire SAU, constitué par un des serveurs 4 (figures 2 ou 4). La référence unique SWEB regroupe différents modules de la figure 5 permettant à la carte à puce 2a d'offrir les fonctionnalités combinées de client/serveur WEB et de passerelle "CGI". On a également supposé que l'application Ae permettant la mise en œuvre du protocole d'enregistrement "PE" était associée à un agent traducteur de script dédié Ate ;. il s'agit d'une configuration conforme à celle illustrée par la figure 5. Cependant, comme il a été indiqué, la traduction des scripts peut s'effectuer d'autres manières (par l'agent "WEB" 232a! (figure 5), etc. L'envoi du formulaire, par ouverture de sessions entre agents intelligents, va permettre d'activé l'application Ae, par l'intermédiaire de l'agent traducteur de script Ate. Lors d'une étape ultérieure, l'application Ae pose une requête "HTTP" par ouverture de sessions entre paires d'agents intelligents, notamment impliquant un agent de type "réseau" (figure 5 : 132). La requête est transmise au serveur d'annuaire SAU, avec passage de paramètres. Les paramètres sont constitués notamment par les données de profil abonné PAU, de façon à permettre son enregistrement dans l'annuaire. L'adresse "URL" du serveur d'annuaire est obtenue à partir du profil d'abonné SAU enregistré dans la carte à puce 2a ou à partir des données saisies dans le formulaire P2.FIG. 6D schematically illustrates the overall process of the registration phase of an Internet user on a directory server SA U , constituted by one of the servers 4 (FIGS. 2 or 4). The unique reference S WEB groups together various modules of FIG. 5 allowing the smart card 2a to offer the combined functionalities of client / WEB server and "CGI" gateway. It has also been assumed that the application A e allowing the implementation of the recording protocol "PE" was associated with a dedicated script translator agent At e ;. it is a configuration conforming to that illustrated in figure 5. However, as it was indicated, the translation of the scripts can be carried out in other ways (by the agent "WEB" 232a ! (figure 5 ), etc. Sending the form, by opening sessions between intelligent agents, will activate the application A e , through the script translator agent At e . In a later step, the application A e makes an "HTTP" request by opening sessions between pairs of intelligent agents, in particular involving an agent of the "network" type (FIG. 5: 132). The request is transmitted to the directory server SA U , with passing parameters The parameters consist in particular of the subscriber profile data PA U , so as to allow its recording in the directory The address "URL" of the directory server is obtained from the subscriber profile SA U recorded in the smart card 2a or from the data entered in the form re P 2 .
A priori, le processus d'enregistrement est terminé à ce stade. Il peut cependant comprendre une ou plusieurs étapes supplémentaires. Une de ces étapes peut consister en l'envoi par l'annuaire d'un accusé de réception, sous forme d'une requête "HTTP" adressant la carte à puce 2a. L'accusé de réception peut comprendre une information indiquant que l'inscription s'est déroulée de façon satisfaisante, ou au contraire un code d'erreur. Dans ce dernier cas, le processus d'enregistrement doit être répété. Le serveur peut requérir l'envoi de données manquantes ou la ré-émission de données incorrectes ou corrompues. La demande d'enregistrement peut également être rejetée, notamment si la limite de validité de l'abonnement est dépassée.A priori, the registration process is completed at this stage. It may however include one or more additional steps. One of these steps may consist in sending an acknowledgment of receipt by the directory, in the form of an "HTTP" request addressing the smart card 2a. The acknowledgment may include information indicating that the registration has been completed satisfactorily, or on the contrary an error code. In the latter case, the registration process must be repeated. The server may request the sending of missing data or the re-transmission of incorrect or corrupted data. The registration request can also be rejected, in particular if the subscription validity limit is exceeded.
Dans une variante préférée du procédé selon l'invention, il est possible, pour un internaute de s'enregistrer sur plusieurs annuaires différents. Dans cette variante de réalisation, il est en général nécessaire de disposer également de plusieurs protocoles d'enregistrement. Pour ce faire, plusieurs applications associées à ces protocoles sont stockées dans la carte à puce 2a, que l'on peut référencer Ae ..., Aei, ...Aen, en admettant que le nombre maximum de protocoles distincts est n.In a preferred variant of the method according to the invention, it is possible for an Internet user to register with several different directories. In this variant embodiment, it is generally necessary to also have several recording protocols. To do this, several applications associated with these protocols are stored in the smart card 2a, which can be referenced A e ..., A ei , ... A by , assuming that the maximum number of distinct protocols is not.
Comme précédemment, les données associées aux profils d'abonné, que l'on référencera PA ..., PA, ..., PAq, peuvent être stockées dans la carte à puce 2a, ou au contraire fournis, au coup par coup, par l'internaute selon une méthode similaire à ce qui à été décrit en regard de la figure 6C, par saisie dans un formulaire approprié, q est le nombre maximum de profils d'abonné disponibles. On notera que q n'est pas forcément égal à n. En effet, un serveur d'annuaire donné, que l'on référencera arbitrairement SA peut accepter plusieurs occurrences distinctes d'un même abonné (internaute), d'une part. D'autre part, plusieurs serveurs d'abonné, bien que distincts, peuvent accepter un même profil d'abonné et éventuellement partager un protocole d'enregistrement commun.As before, the data associated with the subscriber profiles, which will be referred to as PA ..., PA, ..., PA q , can be stored in the smart card 2a, or, on the contrary, supplied, piecemeal , by the internet user according to a method similar to that which has been described with regard to FIG. 6C, by entering in an appropriate form, q is the maximum number of subscriber profiles available. Note that q is not necessarily equal to n. Indeed, a given directory server, which will be arbitrarily referred to as SA, can accept several distinct occurrences of the same subscriber (Internet user), on the one hand. On the other hand, several subscriber servers, although distinct, can accept the same subscriber profile and possibly share a common registration protocol.
Pour fixer les idées, on va supposer que la carte à puce 2a stocke quatre profils d'abonnés distincts, PAA à PAD, chacun des profils permettant de s'enregistrer sur un seul serveur d'annuaire, soit SAA à SAD. Un formulaire, ou page d'accueil, référencé P3, permettant cet enregistrement, peut se présenter comme illustré schématiquement par la figure 6E. il comprend une première zone de texte d'en-tête Zte similaire à la zone de texte Zf de la figure 6B, éventuellement complétée par des zones graphiques. Il comprend quatre zones de textes supplémentaires, ZtA à ZtD , associée aux quatre serveurs d'annuaires, SAA à SAD.. Le formulaire permet de sélectionner un ou plusieurs, voire tous.To fix the ideas, we will assume that the smart card 2a stores four distinct subscriber profiles, PA A to PA D , each of the profiles making it possible to register on a single directory server, ie SA A to SA D . A form, or home page, referenced P 3 , allowing this recording, can be presented as illustrated diagrammatically by FIG. 6E. he comprises a first header text area Z te similar to the text area Z f in FIG. 6B, possibly supplemented by graphic areas. It includes four additional text zones, Z tA to Z tD , associated with the four directory servers, SA A to SA D .. The form allows you to select one or more, or even all.
Pour effectuer un choix entre ces serveurs d'annuaires, on peut prévoir des zones dites "cases à cocher", CCA à CCD. A titre d'alternative, on peut prévoir des hyperliens sur la page d'accueil P3, chaque hyperlien adressant la carte à puce 2a par l'intermédiaire d'une dresse de rebouclage du type de celle de la relation (1 ), mais avec des paramètres distincts.To make a choice between these directory servers, it is possible to provide zones called "check boxes", CC A to CC D. Alternatively, one can provide hyperlinks on the home page P 3 , each hyperlink addressing the smart card 2a via a looping address of the type of that of relation (1), but with separate parameters.
Comme dans le cas de la figure 6B, on prévoit un bouton d'envoi Bs, permettant de transmettre le contenu du formulaire à la carte à puce 2a.As in the case of FIG. 6B, a send button B s is provided , making it possible to transmit the content of the form to the smart card 2a.
Quelle que soit la méthode utilisée pour effectuer la sélection de tout ou partie des serveurs d'annuaires, les paramètres passés à la carte à puce2a doivent permettre de sélectionner un ou plusieurs profils d'abonné, PAA à PAD, et en dériver une ou plusieurs adresses "URL". Les actions demandées, par les paramètres passés à la carte à puce 2a, sont typiquement du type : îsa≈enr+pa, (5), avec "sa, " le nom du serveur d'annuaire d'indice arbitraire / parmi les n possibles, "enr" l'action requise d'enregistrement proprement dit et "pa," le profil d'abonné à utiliser parmi les q possibles.Whatever the method used to select all or part of the directory servers, the parameters passed to the smart card2a must make it possible to select one or more subscriber profiles, PA A to PA D , and to derive one or more "URL" addresses. The actions requested, by the parameters passed to the smart card 2a, are typically of the type: îsa≈enr + pa, (5), with "sa," the name of the directory server of arbitrary index / among the n possible, "enr" the required registration action proper and "pa," the subscriber profile to be used among the possible qs.
Une ou plusieurs requêtes "HTTP" sont posées et transmises aux serveurs d'annuaires concernés, SAA à SAD (figure 6E) et dans le cas général SAA à SAn, s'il existe n serveurs d'annuaire sélectionnâmes.One or more "HTTP" requests are made and transmitted to the directory servers concerned, SA A to SA D (FIG. 6E) and in the general case SA A to SA n , if there are n selected directory servers.
Le choix présenté sur la page d'accueil P3 est naturellement fonction de la carte à puce 2a insérée dans le lecteur 3. Les choix présentés dépendent des droits qui sont accordés à l'internaute possesseur de la carte à puce 2a, notamment des abonnements souscrits à des services donnés et de leurs périodes de validité. Une deuxième phase du procédé selon l'invention, c'est-à-dire la localisation, sur le réseau Internet, d'un internaute associé à un identifiant quelconque peut se dérouler de façon très similaire à la phase d'enregistrement. Pour ce faire, il est nécessaire d'interroger un ou plusieurs serveur(s) d'annuaire(s). Il est nécessaire aussi de disposer d'au moins un protocole "PL" spécifique de localisation de cet internaute. Enfin, s'il existe plusieurs serveurs d'annuaires interrogeables, SA à SAn, il est généralement nécessaire également, comme dans le cas de l'enregistrement, de disposer de plusieurs protocoles de localisation distincts.The choice presented on the home page P 3 is naturally a function of the smart card 2a inserted in the reader 3. The choices presented depend on the rights which are granted to the internet user possessing the smart card 2a, in particular subscriptions subscribed to given services and their periods of validity. A second phase of the method according to the invention, that is to say the location, on the Internet, of an Internet user associated with any identifier can take place very similarly to the registration phase. To do this, it is necessary to query one or more directory server (s). It is also necessary to have at least one specific "PL" protocol for locating this Internet user. Finally, if there are several searchable directory servers, SA to SA n , it is generally also necessary, as in the case of registration, to have several separate location protocols.
Ces protocoles de localisation peuvent être mis en œuvre à l'aide d'applications stockées dans la carte à puce 2a.These location protocols can be implemented using applications stored in the smart card 2a.
Le processus de localisation se déroule de façon tout à fait similaire à celui de l'enregistrement de l'internaute sur un ou plusieurs serveurs d'annuaire SA,. La seule exception notable est qu'un profil d'abonné PAS n'est plus explicitement requis. Il suffit de fournir à la carte à puce 2a l'identifiant de l'internaute recherché et l'adresse du serveur d'annuaire SA,, ou pour le moins des paramètres permettant à l'application associée à l'un des protocoles de localisation de déterminer cette adresse "URL". Un profil d'abonné PAt peut toutefois être utilisé pour en dériver automatiquement l'adresse "URL" du serveur d'annuaire SA, à l'aide duquel lequel un internaute désire localiser un autre internaute. Comme il a été indiqué, l'identifiant de l'internaute recherché peut être son adresse e-mel, adresse qui se présente typiquement sous la forme suivante : pseudo@fournisseur.com (6), avec "pseudo" le nom d'utilisateur de messagerie de l'internaute ou plus généralement un pseudonyme, et "fournisseur.com" le nom et le suffixe du prestataire de service Internet", .com" pouvant être remplacé selon les cas par divers suffixes : ".fr", ".net", etc.). La figure 7 illustre les principales étapes de la phase de localisation d'un internaute par interrogation d'un annuaire SA, Dans une première étape la carte à puce 2a est adressée par le navigateur 10 du terminal 1 , via les couches 13 et 23a. On récupère, par une commande de type "GET" par exemple, un formulaire de chargement à partir de la carte à puce 2a sous la forme d'une page d'accueil référencée F. Cette page d'accueil peut prendre différents aspects, similaires notamment à ceux décrits en regard des figures 6C ou 6E. Selon qu'il y ait un choix ou plusieurs choix possibles, l'internaute sélectionne un ou plusieurs serveurs d'annuaires et fournit des données d'identification de l'internaute recherché. Sur la figure 7, on a supposé qu'un seul serveur d'annuaire SA, était interrogeable. La page est transmise sous forme d'une requête "HTTP" à la carte à puce 2a et est interprétée par un agent traducteur de script At, associé à une application /A, de mise en œuvre de protocole "PL".The localization process takes place in a very similar way to that of the registration of the Internet user on one or more SA, directory servers. The only notable exception is that a subscriber profile PA S is no longer explicitly required. It suffices to provide the smart card 2a with the identifier of the Internet user sought and the address of the directory server SA, or at least parameters allowing the application associated with one of the location protocols. to determine this "URL" address. A subscriber profile PA t can however be used to automatically derive therefrom the "URL" address of the directory server SA, with the help of which a web user wishes to locate another web user. As indicated, the identifier of the Internet user sought may be their e-mail address, an address which typically takes the following form: pseudo@fournisseur.com (6), with "pseudo" the user name e-mail address of the Internet user or more generally a pseudonym, and "supplier.com" the name and suffix of the Internet service provider ", .com" can be replaced as appropriate by various suffixes: ".fr", ". net ", etc.). FIG. 7 illustrates the main stages of the phase of locating an internet user by interrogating a SA directory, In a first step, the smart card 2a is addressed by the browser 10 of the terminal 1, via the layers 13 and 23a. We recover, by a command of type "GET" for example, a loading form from the smart card 2a in the form of a home page referenced F. This home page can take different aspects, similar in particular to those described with reference to FIGS. 6C or 6E. Depending on whether there is a choice or several possible choices, the Internet user selects one or more directory servers and provides identification data of the Internet user sought. In FIG. 7, it has been assumed that a single directory server SA is interrogable. The page is transmitted in the form of an "HTTP" request to the smart card 2a and is interpreted by a script translator agent At, associated with an application / A, for implementing the "PL" protocol.
Par le double mécanisme client/serveur "WEB" et "CGI" (module référencé SWEB comme précédemment), une requête du type : http://127.0.0.1/? sa =loc+pseudo@fournisseur.com (7), est interprétée par la carte à puce 2a comme une demande de localisation de l'internaute dont l'identifiant est (6) sur le serveur d'annuaire sa,.By the double client / server mechanism "WEB" and "CGI" (module referenced S WEB as before), a request of the type: http://127.0.0.1/? sa =loc+pseudo@fournisseur.com (7), is interpreted by the smart card 2a as a request for the location of the internet user whose identifier is (6) on the sa, directory server.
Une requête "HTTP" est transmise à ce serveur qui renvoie les informations demandées, dans la mesure où elles sont disponibles. Il recherche dans sa base de données une adresse "IP" correspondant aux données d'identification reçues. En cas de succès, c'est-à-dire si l'internaute demandeur est effectivement enregistré, si cet internaute a le droit d'obtenir cette adresse et si les données reçues sont correctes, les données retransmises comprennent l'adresse "IP" de l'internaute recherché, ce qui permet de le localiser.An "HTTP" request is transmitted to this server which returns the requested information, as far as it is available. It searches its database for an "IP" address corresponding to the identification data received. If successful, ie if the requesting Internet user is actually registered, if this Internet user has the right to obtain this address and if the data received is correct, the data retransmitted includes the "IP" address of the Internet user sought, which makes it possible to locate it.
Ces différentes étapes mettent en œuvre des sessions entre agents appariés, selon un des aspects de l'invention.These different stages implement sessions between paired agents, according to one aspect of the invention.
On peut également stocker dans la carte à puce 2a plusieurs applications, chacune étant destinée à la mise en œuvre d'un protocole de localisation distinct, a priori associé à un serveur d'annuaire également distinct. Dans une variante préférée du procédé selon l'invention, on stocke dans la carte à puce 2a das applications permettant la mise en œuvre de plusieurs protocoles d'enregistrement, plusieurs protocoles de localisation et des fichiers de données pour l'enregistrement de plusieurs profils d'abonné. Cette disposition avantageuse permet de transformer la carte à puce 2a en base de données portable multi-annuaire comme illustré schématiquement par la figure 8. Sur cette figure, le terminal 1 n'a pas été représenté. Il est cependant clair que celui-ci est nécessaire à la mise en œuvre du procédé selon l'invention. Les protocoles d'enregistrement, les protocoles de localisation et les profils d'abonné portent les références uniques, PEX, PLy et PAZ, respectivement, avec x le nombre de protocoles d'enregistrement, y le nombre de protocoles de localisation et z le nombre de profils d'abonnés distincts. Cet ensemble permet d'établir des connexions avec n serveurs d'annuaires distincts, soit pour y enregistrer un internaute porteur de la carte à puce 2a, soit pour localiser un internaute sur le réseau Internet RI.It is also possible to store in the smart card 2a several applications, each intended for the implementation of a separate location protocol, a priori associated with a directory server which is also separate. In a preferred variant of the method according to the invention, two applications are stored in the smart card allowing the implementation of several recording protocols, several location protocols and data files for the recording of several profiles of 'subscriber. This advantageous arrangement makes it possible to transform the smart card 2a into a portable multi-directory database as illustrated diagrammatically in FIG. 8. In this figure, the terminal 1 has not been shown. It is however clear that this is necessary for the implementation of the method according to the invention. The recording protocols, the location protocols and the subscriber profiles bear the unique references, PE X , PL y and PA Z , respectively, with x the number of recording protocols, y the number of location protocols and z the number of distinct subscriber profiles. This set makes it possible to establish connections with n separate directory servers, either to register an internet user carrying the smart card 2a, or to locate an internet user on the Internet RI network.
Dans une autre variante encore du procédé selon l'invention, l'utilisation d'une carte à puce 2a permet une authentification robuste de son possesseur, lors de la phase d'enregistrement et/ou de la phase de localisation. En effet, il est possible de stocker des données de sécurité dans la carte à puce 2a qui reste propriété de son possesseur. De telles donnés de sécurité peuvent être constituées par des clés de chiffrage.In yet another variant of the method according to the invention, the use of a smart card 2a allows robust authentication of its owner, during the recording phase and / or the location phase. Indeed, it is possible to store security data in the smart card 2a which remains the property of its owner. Such security data can consist of encryption keys.
Du fait que, selon l'un des aspects avantageux du procédé selon l'invention, la carte à puce peut communiquer directement avec le réseau Internet, par la mise en œuvre de sessions entre agents intelligents, ces données n'ont pas à être transmises à un dispositif externe, serait ce le terminal 1. Les traitements touchant à la sécurité sont effectués directement par la carte à puce 2a. Cette façon de procéder offre donc un degré de sécurité beaucoup plus élevé que la simple utilisation de couches logicielles dites sécurisées des navigateurs "WEB" récents, connues sous l'abréviation anglo-saxonne "SSL" (pour "Secure Socket Layer"). L'authentification proprement dite peut s'effectuer en ayant recours à la technique dite de certificat, en association avec les clés de chiffrage précitées stockées dans la carte à puce. Cette procédure peut nécessiter des transactions supplémentaires entre la carte à puce 2a et le ou les serveur(s) d'annuaire concerné(s), à l'aide de requêtes "HTTP" transitant par le réseau Internet RI. En fonction du résultat, positif ou négatif, de l'authentification, l'internaute est autorisé ou non à effectuer les traitements, enregistrements ou localisations qu'il désire réaliser.Since, according to one of the advantageous aspects of the method according to the invention, the smart card can communicate directly with the Internet, by the implementation of sessions between intelligent agents, this data does not have to be transmitted to an external device, this would be terminal 1. The processing operations relating to security are carried out directly by the smart card 2a. This way of proceeding therefore offers a much higher degree of security than the simple use of so-called secure software layers of recent "WEB" browsers, known under the English abbreviation "SSL" (for "Secure Socket Layer"). The actual authentication can be carried out using the so-called certificate technique, in association with the aforementioned encryption keys stored in the smart card. This procedure may require additional transactions between the smart card 2a and the directory server (s) concerned, using “HTTP” requests passing through the Internet network RI. Depending on the result, positive or negative, of the authentication, the Internet user is authorized or not to carry out the processing, recording or localization that he wishes to carry out.
A la lecture de ce qui précède, on constate aisément que le procédé de l'invention atteint bien les buts qu'elle s'est fixés.On reading the above, it is easy to see that the process of the invention does achieve the goals it has set for itself.
Il permet notamment à un internaute de s'enregistrer sur un ou plusieurs serveurs d'annuaires et/ou de localiser un internaute sur le réseau Internet, également par l'intermédiaire de un ou plusieurs annuaires. La carte à puce présentant les fonctionnalités combinées d'un client/serveur "WEB" et d'une passerelle "CGI", cette disposition permet des communications directes entre la carte à puce et le ou les serveurs d'annuaire. Elle autorise de ce fait le stockage des logiciels spécifiques nécessaires à la mise en œuvre des protocoles d'enregistrement et/ou de localisation, ce qui permet une grande mobilité. Un ou plusieurs profils d'abonné peuvent également être stockés dans la carte à puce. L'internaute n'est plus astreint à l'utilisation de terminaux configurés spécifiquement pour les protocoles précités.In particular, it allows an Internet user to register on one or more directory servers and / or to locate an Internet user on the Internet, also through one or more directories. Since the smart card has the combined functionality of a "WEB" client / server and a "CGI" gateway, this arrangement allows direct communications between the smart card and the directory server (s). It therefore authorizes the storage of specific software necessary for the implementation of recording and / or localization protocols, which allows great mobility. One or more subscriber profiles can also be stored in the smart card. The internet user is no longer required to use terminals configured specifically for the aforementioned protocols.
En particulier, dans une variante de réalisation préférée, la carte à puce est transformée en base de données portable multi-annuaire. Le procédé selon l'invention est tout à fait compatible avec l'existant.In particular, in a preferred embodiment, the smart card is transformed into a portable multi-directory database. The method according to the invention is entirely compatible with the existing one.
Il n'est pas requis que l'internaute recherché se soit enregistré sur un ou plusieurs serveurs d'annuaires en faisant usage du procédé selon l'invention. Les transmissions sur le réseau Internet s'effectuent selon les protocoles en vigueur et les communications entre le terminal et la carte à puce font appel au protocole normalisé "ISO" précité. On peut donc mettre en œuvre un lecteur de carte à puce standard. Seule la présence d'une couche logicielle spécifique dans le terminal est nécessaire, ce qui ne nécessite que peu de modifications et peut être réalisé une fois pour toute, quel que soit le nombre de protocoles d'enregistrement, de localisation et/ou de profils d'abonné portés par la carte à puce, et quelle que soient leurs natures. Enfin, l'utilisation d'une carte à puce permet une sécurisation des transactions et, notamment, une authentification "robuste".The Internet user sought is not required to have registered on one or more directory servers by making use of the method according to the invention. The transmissions on the Internet network are carried out according to the protocols in force and the communications between the terminal and the smart card use the aforementioned standardized protocol "ISO". We can therefore implement a standard smart card reader. Only the presence of a software layer specific in the terminal is necessary, which requires only a few modifications and can be carried out once and for all, regardless of the number of recording protocols, location and / or subscriber profiles carried by the card to puce, and whatever their nature. Finally, the use of a smart card allows secure transactions and, in particular, "robust" authentication.
Il doit être clair cependant que l'invention n'est pas limitée aux seuls exemples de réalisations explicitement décrits, notamment en relation avec les figures 2 à 8. En particulier, il n'est pas nécessaire que les deux séries de logiciels propriétaires, "PE" et "PL" soient stockées dans la carte à puce, bien que cette disposition soit particulièrement avantageuse. A titre d'exemple non limitatif, la (les) phase(s) d'enregistrement, dans un ou plusieurs serveurs d'annuaire(s), pouvant être réalisée(s) une fois pour toute, ou pour le moins étant a priori moins fréquente(s) que les phases de localisation, on pourrait se contenter de ne stocker dans la carte à puce que les applications spécifiques associées à cette dernière opération. De même, comme il a été indiqué, il est possible de ne pas enregistrer dans la carte à puce les profils d'abonné "PA" (les données pouvant être fournies en temps réel au moment de l'enregistrement de l'abonné dans un serveur d'annuaire particulier). Il est encore possible de n'enregistrer qu'une partie des profils d'abonné, profils qui pourront être fournis de façon automatique.It should be clear, however, that the invention is not limited to only the examples of embodiments explicitly described, in particular in relation to FIGS. 2 to 8. In particular, the two series of proprietary software need not be " PE "and" PL "are stored in the smart card, although this arrangement is particularly advantageous. By way of nonlimiting example, the recording phase (s), in one or more directory servers, which can be carried out once and for all, or at least being a priori less frequent (s) than the phases of localization, one could be satisfied to store in the smart card only the specific applications associated with this last operation. Likewise, as indicated, it is possible not to save subscriber profiles "PA" in the smart card (the data can be provided in real time when the subscriber is registered in a particular directory server). It is also possible to save only part of the subscriber profiles, profiles which can be provided automatically.
L'invention concerne aussi un procédé de mise en relation d'un premier usager avec au moins un serveur d'annuaire, en vue de son enregistrement et/ou de la localisation d'au moins un deuxième usager sur un réseau notamment de type Internet, ladite mise en relation s'effectuant par l'intermédiaire d'un terminal muni d'un lecteur de carte à puce et d'au moins une pièce de logiciel dite d'enregistrement et/ou de localisation, le terminal et la carte à puce comprenant des moyens de traitement d'information et des moyens de stockage d'information, ledit terminal étant connecté à chacun desdits serveurs d'annuaire via ledit réseau de type Internet et communiquant avec ladite carte à puce selon un premier protocole déterminé, caractérisé en ce qu'au moins l'une desdites pièces de logiciel (Ae, A,) est stockée dans ladite carte à puce (2a) ; en ce que cette carte à puce (2a) comprenant une première pièce de logiciel (23a), formant une couche protocolaire de communication spécifique, et ledit terminal (1 ) comprenant une seconde pièce de logiciel (13), formant une couche protocolaire de communication spécifique, lesdites première et seconde pièces de logiciel (13, 23a) comprennent en outre au moins une paire de premières entités logicielles appariées (132, 232a), chacune desdites entités (132, 232a) coopérant l'une avec l'autre, grâce auxdits moyens de traitement d'information, de manière à permettre l'établissement d'une session d'échanges de données bidirectionnels entre au moins ledit terminal (1 ) et ladite carte à puce (2a), et/ou ledit réseau de type Internet, de manière à ce que ladite carte à puce (2a) offre la fonctionnalité d'un client/serveur "WEB" ; en ce que ladite carte à puce (2a) comprend, dans les moyens de stockage d'information, au moins une deuxième entité logicielle (ATe, AT,) coopérant avec ladite seconde pièce de logiciel spécifique (23a) pour que ladite carte à puce offre une fonctionnalité d'interface passerelle dite "CGI" : et en ce qu'il comprend au moins les étapes suivantes : 1/ ouverture d'une première séquence d'échanges de données entre au moins ledit terminal (1 ) et ladite carte à puce (2a) grâce auxdits moyens de traitement d'information du terminal et de la carte à puce, pour la transmission d'une requête pour que ledit navigateur de type "WEB" récupère des données permettant de sélectionner et d'activer une desdites pièces de logiciel propriétaire (Ae, A,), en vue de la sélection d'un desdits serveurs d'annuaire (S/4;) ; 2/ ouverture d'une deuxième séquence d'échanges de données entre ladite carte à puce (2a) et ledit terminal (1 ) pour lui transmettre lesdites données, grâce auxdits moyens de traitement d'information du terminal et de la carte à puce ; 3/ ouverture d'une troisième séquence d'échanges de données entre ledit terminal (1 ) et ladite carte à puce (2a) grâce auxdits moyens de traitement d'information du terminal et de la carte à puce, pour transmettre des données de sélection et des paramètres optionnels, lesdites données et lesdits paramètres optionnels comportant une référence à une desdites pièces de logiciel d'enregistrement et/ou de localisation ;The invention also relates to a method of connecting a first user with at least one directory server, with a view to registering and / or locating at least one second user on a network, in particular of the Internet type. , said connection being effected by means of a terminal provided with a smart card reader and at least one piece of software called recording and / or localization software, the terminal and the card chip comprising information processing means and information storage means, said terminal being connected to each of said directory servers via said Internet-type network and communicating with said smart card according to a first determined protocol, characterized in that at least one of said pieces of software (A e , A,) is stored in said smart card (2a); in that this smart card (2a) comprising a first piece of software (23a), forming a specific communication protocol layer, and said terminal (1) comprising a second piece of software (13), forming a communication protocol layer specific, said first and second pieces of software (13, 23a) further comprise at least one pair of first paired software entities (132, 232a), each of said entities (132, 232a) cooperating with each other, by virtue of to said information processing means, so as to allow the establishment of a bidirectional data exchange session between at least said terminal (1) and said smart card (2a), and / or said Internet-type network , so that said smart card (2a) offers the functionality of a client / server "WEB"; in that said smart card (2a) comprises, in the information storage means, at least one second software entity (AT e , AT,) cooperating with said second specific piece of software (23a) so that said card puce offers a so-called "CGI" gateway interface functionality: and in that it comprises at least the following steps: 1 / opening of a first sequence of data exchanges between at least said terminal (1) and said card smart (2a) by means of said information processing means of the terminal and of the smart card, for the transmission of a request so that said "WEB" type browser retrieves data making it possible to select and activate one of said pieces of proprietary software (A e , A,), for the selection of one of said directory servers (S / 4 ; ); 2 / opening a second sequence of data exchanges between said smart card (2a) and said terminal (1) to transmit said data to it, thanks to said information processing means of the terminal and of the smart card; 3 / opening of a third sequence of data exchanges between said terminal (1) and said smart card (2a) thanks to said information processing means of the terminal and of the smart card, to transmit selection data and optional parameters, said data and said optional parameters comprising a reference to one of said pieces of recording and / or localization software;
4/ mise en œuvre de ladite fonctionnalité "CGI" et exécution de ladite pièce de logiciel d'enregistrement et/ou de localisation {Ae, A , grâce auxdits moyens de traitement d'information de la carte à puce ; et4 / implementation of said “CGI” functionality and execution of said piece of recording and / or localization software {A e , A, using said information processing means of the smart card; and
5/ en résultat de ladite exécution, ouverture), grâce auxdits moyens de traitement d'information de la carte à puce, d'une quatrième séquence d'échanges de données entre ladite carte à puce (2a) et un desdits serveurs d'annuaire {SA), sélectionné par lesdites données de sélection, de manière à transmettre une requête pour la réalisation d'une opération déterminée d'enregistrement ou de localisation.5 / as a result of said execution, opening), thanks to said information processing means of the smart card, of a fourth sequence of data exchanges between said smart card (2a) and one of said directory servers {SA), selected by said selection data, so as to transmit a request for the performance of a determined registration or location operation.
L'invention concerne aussi une carte à puce comprenant des moyens de traitement d'information et des moyens de stockage d'information et destinée à coopérer avec un terminal muni d'un lecteur de carte à puce, pour la mise en relation d'un premier usager avec au moins un serveur d'annuaire, en vue de son enregistrement et/ou de la localisation d'au moins un deuxième usager sur un réseau notamment de type Internet, à l'aide de protocoles d'enregistrement et/ou de localisation déterminés, caractérisé en ce que ladite carte à puce (2a) stocke, dans les moyens de stockage d'information, au moins une pièce de logiciel (Ae,The invention also relates to a smart card comprising information processing means and information storage means and intended to cooperate with a terminal provided with a smart card reader, for connecting a first user with at least one directory server, for the purpose of registering and / or locating at least one second user on a network, in particular of the Internet type, using recording and / or determined location, characterized in that said smart card (2a) stores, in the information storage means, at least one piece of software (A e ,
A) associée aux dits protocoles déterminés d'enregistrement et de localisation, en ce que cette carte à puce (2a) ) comporte, dans les moyens de stockage d'information, une pièce de logiciel (23a), formant une couche protocolaire de communication spécifique, comprenant en outre au moins une première entité logicielle autonome (S , de type dit client et une deuxième entité logicielle autonome (S2), de type dit serveur, lesdites entités (S2, S2) coopérant, grâce aux moyens de traitement d'information, de manière à ce que ladite carte à puce (2a) offre la fonctionnalité d'un client/serveur de type "WEB" et à permettre ladite mise en relation d'un premier usager avec au moins un serveur d'annuaireA) associated with said determined recording and location protocols, in that this smart card (2a)) comprises, in the information storage means, a piece of software (23a), forming a communication protocol layer specific, further comprising at least a first autonomous software entity (S, of the so-called type client and a second autonomous software entity (S 2 ), of the so-called server type, said entities (S 2 , S 2 ) cooperating, by means of information processing, so that said smart card (2a) offers the functionality of a client / server of the "WEB" type and to allow said connection of a first user with at least one directory server
{SA,), via ledit réseau de type Internet {RI), et en ce que ladite carte à puce (2a) comprend, dans les moyens de stockage d'information, au moins une deuxième entité logicielle {ATe, AT,) coopérant, grâce aux moyens de traitement d'information, avec ladite pièce de logiciel spécifique (23a), pour que ladite carte à puce (2a) offre une fonctionnalité d'interface passerelle dite "CGI" permettant l'exécution desdites pièces de logiciel {Aβ, Aj) associées aux dits protocoles déterminés d'enregistrement et de localisation. {SA,), via said Internet type network (RI), and in that said smart card (2a) comprises, in the information storage means, at least one second software entity (AT e , AT,) cooperating, thanks to the information processing means, with said specific piece of software (23a), so that said smart card (2a) offers a gateway interface functionality called "CGI" allowing the execution of said pieces of software { A β , Aj) associated with said determined recording and localization protocols.

Claims

REVENDICATIONS
1. Procédé de mise en relation d'un premier usager avec au moins un serveur d'annuaire, en vue de son enregistrement et/ou de la localisation d'au moins un deuxième usager sur un réseau notamment de type Internet, ladite mise en relation s'effectuant par l'intermédiaire d'un terminal muni d'un 5 lecteur de carte à puce et d'au moins une pièce de logiciel dite d'enregistrement et/ou de localisation, ledit terminal étant connecté à chacun desdits serveurs d'annuaire via ledit réseau de type Internet et communiquant avec ladite carte à puce selon un premier protocole déterminé, caractérisé en ce qu'au moins l'une desdites pièces de logiciel w {Ae, A) est stockée dans ladite carte à puce (2a) ; en ce que cette carte à puce (2a) comprenant une première pièce de logiciel (23a), formant une couche protocolaire de communication spécifique, et ledit terminal (1 ) comprenant une seconde pièce de logiciel (13), formant une couche protocolaire de communication spécifique, lesdites première et seconde1. Method for bringing a first user into contact with at least one directory server, with a view to registering and / or locating at least one second user on a network, in particular of the Internet type, said implementation relationship carried out via a terminal equipped with a smart card reader and at least one piece of software called recording and / or localization, said terminal being connected to each of said servers directory via said Internet-type network and communicating with said smart card according to a first determined protocol, characterized in that at least one of said pieces of software w (A e , A) is stored in said smart card ( 2a); in that this smart card (2a) comprising a first piece of software (23a), forming a specific communication protocol layer, and said terminal (1) comprising a second piece of software (13), forming a communication protocol layer specific, said first and second
15 pièces de logiciel (13, 23a) comprennent en outre au moins une paire de premières entités logicielles appariées (132, 232a), chacune desdites entités (132, 232a) coopérant l'une avec l'autre de manière à permettre établissement d'une session d'échanges de données bidirectionnels entre au moins ledit terminal (1 ) et ladite carte à puce (2a), et/ou ledit réseau de 0 type Internet, de manière à ce que ladite carte à puce (2a) offre la fonctionnalité d'un client/serveur "WEB" ; en ce que ladite carte à puce (2a) comprend au moins une deuxième entité logicielle {ATe, AT) coopérant avec ladite seconde pièce de logiciel spécifique (23a) pour que ladite carte à puce offre une fonctionnalité d'interface passerelle dite "CGI" : 5 et en ce qu'il comprend au moins les étapes suivantes :15 pieces of software (13, 23a) further comprise at least one pair of first paired software entities (132, 232a), each of said entities (132, 232a) cooperating with each other so as to allow establishment of a bidirectional data exchange session between at least said terminal (1) and said smart card (2a), and / or said Internet-type network, so that said smart card (2a) offers the functionality a "WEB" client / server; in that said smart card (2a) comprises at least a second software entity (AT e , AT) cooperating with said second specific piece of software (23a) so that said smart card offers a gateway interface functionality called "CGI"": 5 and in that it comprises at least the following steps:
1/ ouverture d'une première séquence d'échanges de données entre au moins ledit terminal (1 ) et ladite carte à puce (2a), pour la transmission d'une requête pour que ledit navigateur de type "WEB" récupère des données permettant de sélectionner et d'activer une desdites pièces de logiciel propriétaire {Aθ, A,), en vue de la sélection d'un desdits serveurs d'annuaire {SA) ; 2/ ouverture d'une deuxième séquence d'échanges de données entre ladite carte à puce (2a) et ledit terminal (1 ) pour lui transmettre lesdites données ; 3/ ouverture d'une troisième séquence d'échanges de données entre ledit terminal (1 ) et ladite carte à puce (2a) pour transmettre des données de sélection et des paramètres optionnels, lesdites données et lesdits paramètres optionnels comportant une référence à une desdites pièces de logiciel d'enregistrement et/ou de localisation ; 4/ mise en œuvre de ladite fonctionnalité "CGI" et exécution de ladite pièce de logiciel d'enregistrement et/ou de localisation {Ae, A) ; et 5/ en résultat de ladite exécution, ouverture d'une quatrième séquence d'échanges de données entre ladite carte à puce (2a) et un desdits serveurs d'annuaire {SA), sélectionné par lesdites données de sélection, de manière à transmettre une requête pour la réalisation d'une opération déterminée d'enregistrement ou de localisation.1 / opening of a first sequence of data exchanges between at least said terminal (1) and said smart card (2a), for transmission a request for said "WEB" type browser to retrieve data making it possible to select and activate one of said pieces of proprietary software (A θ , A,), with a view to selecting one of said directory servers {HER) ; 2 / opening of a second sequence of data exchanges between said smart card (2a) and said terminal (1) to transmit said data to it; 3 / opening of a third sequence of data exchanges between said terminal (1) and said smart card (2a) to transmit selection data and optional parameters, said data and said optional parameters comprising a reference to one of said pieces of recording and / or localization software; 4 / implementation of said "CGI" functionality and execution of said piece of recording and / or localization software (A e , A); and 5 / as a result of said execution, opening of a fourth sequence of data exchanges between said smart card (2a) and one of said directory servers (SA), selected by said selection data, so as to transmit a request for carrying out a specific recording or localization operation.
Procédé selon la revendication 1 , caractérisé en ce que ledit lecteur de carte à puce (3) et ladite carte à puce (2a) comprennent des première et deuxième piles protocolaires pour lesdites transmissions de données selon ledit premier protocole déterminé, définies par la norme ISO 7816, chacune comprenant au moins des couches protocolaires de communication logicielles (101 , 200a), dites basses, de manière à permettre lesdits échanges de données entre ladite carte à puce (2a) et ledit terminal (1 ), ces couches formant interface avec lesdites première (13) et seconde (23a) pièces de logiciel spécifique formant lesdites couches protocolaires de communication spécifiques, respectivement, et en ce que ces pièces de logiciel (13, 23a) comprennent chacune deux entités supplémentaires constituées d'un module de transfert de données (130, 230a), formant interface avec lesdites couches basses (101 , 200a) des première et deuxième piles protocolaires, et d'un module de gestion (131 , 231a), et en ce que lesdites premières entités de chaque paire sont constituées de modules logiciels, dits agents intelligents (132, 232a1 ) établissant lesdites sessions.Method according to claim 1, characterized in that said smart card reader (3) and said smart card (2a) comprise first and second protocol stacks for said data transmissions according to said first determined protocol, defined by the ISO standard 7816, each comprising at least software communication protocol layers (101, 200a), said to be low, so as to allow said data exchanges between said chip card (2a) and said terminal (1), these layers forming an interface with said first (13) and second (23a) pieces of specific software forming said specific communication protocol layers, respectively, and in that these pieces of software (13, 23a) each comprise two additional entities consisting of a data transfer module (130, 230a), forming an interface with said lower layers (101, 200a) of the first and second protocol stacks, and of a management module (131, 231a), and that said first entities of each pair consist of software modules, called intelligent agents (132, 232a1) establishing said sessions.
3. Procédé selon la revendication 2, caractérisé en ce que ladite suite d'instructions à interpréter associée à chacune desdites pièces de logiciel propriétaire est constituée par un script et en ce que ladite deuxième entité logicielle est constituée par un module logiciel dit agent intelligent traducteur de script {ATe, AT) fournissant des ordres compréhensibles par pièces de logiciel propriétaire {Aβ, A),.3. Method according to claim 2, characterized in that said series of instructions to be interpreted associated with each of said pieces of proprietary software is constituted by a script and in that said second software entity is constituted by a software module called intelligent translator agent script (AT e , AT) providing understandable commands by pieces of proprietary software (A β , A) ,.
4. Procédé selon la revendication 1 , caractérisé en ce que ladite étape 1/ comprend l'émission d'une requête de type dit "HTTP" selon un protocole de type Internet par adressage d'une page déterminée (PrP3) en langage4. Method according to claim 1, characterized in that said step 1 / comprises the emission of a request of type called "HTTP" according to an Internet type protocol by addressing a determined page (PrP 3 ) in language
"HTML" contenant lesdites données de sélection et des paramètres optionnels, ladite adresse étant une adresse de type "URL" de rebouclage sur ladite carte à puce (2a)."HTML" containing said selection data and optional parameters, said address being an address of the "URL" type for looping back onto said smart card (2a).
5. Procédé selon la revendication 1 , caractérisé en ce que ladite étape 2/ comprend l'envoi par ladite carte à puce (2a) d'un formulaire en langage5. Method according to claim 1, characterized in that said step 2 / comprises the sending by said smart card (2a) of a form in language
"HTML" {P^-P3) et en ce que ledit formulaire comprend au moins une adresse de type dit "URL" de rebouclage sur ladite carte à puce (2a) et un chemin menant à un répertoire déterminé associé à l'une desdites pièces de logiciel d'enregistrement et/ou de localisation {Ae, A), à lui transmettre lesdits paramètres optionnels et à occasionner son exécution."HTML" {P ^ -P 3 ) and in that said form comprises at least one address of the so-called "URL" type for looping back onto said smart card (2a) and a path leading to a determined directory associated with one said pieces of recording and / or localization software (A e , A), to transmit said optional parameters to it and to cause its execution.
6. Procédé selon la revendication 5, caractérisé en ce que ladite étape 3/ comprend l'envoi d'une requête de type dit "HTTP" à ladite adresse "URL", désignant ledit répertoire contenant ladite pièce de logiciel d'enregistrement et/ou de localisation {Ae, A), ladite requête comprenant lesdites données de sélection et lesdits paramètres optionnels.6. Method according to claim 5, characterized in that said step 3 / comprises the sending of a request of type called "HTTP" to said address "URL", designating said directory containing said piece of software recording and / or location (A e , A), said request comprising said selection data and said optional parameters.
7. Procédé selon la revendication 6, caractérisé en ce qu'une pièce de logiciel dite d'enregistrement {Ae) est associée à un premier protocole {PEX) permettant l'enregistrement dudit usager sur un serveur d'annuaire déterminé {SA), en ce que lesdits paramètres optionnels sont constitués par des données définissant un profil dit d'abonné (PAZ), comprenant au moins des données dites d'identification dudit premier usager, et en ce que ladite requête "HTTP" de ladite étape 3/ comprend des premières données indiquant que l'opération demandée est ledit enregistrement et des deuxièmes données permettant d'élaborer, par ladite pièce de logiciel d'enregistrement (Ae), une adresse de type "URL" caractéristique dudit serveur d'annuaire déterminé {SA), et en ce que des données associées au dit profil d'abonné sont transmises, pendant ladite étape Al, à ce serveur d'annuaire {SA), de manière à réaliser ledit enregistrement dudit premier usager, ledit enregistrement comprenant la détermination d'une adresse de type "IP" par association de ladite adresse de serveur d'annuaire {SA) et desdites données d'identification dudit premier usager.7. Method according to claim 6, characterized in that a piece of software called recording {A e ) is associated with a first protocol {PE X ) allowing the recording of said user on a determined directory server {SA ), in that said optional parameters consist of data defining a so-called subscriber profile (PA Z ), comprising at least so-called identification data of said first user, and in that said "HTTP" request of said step 3 / includes first data indicating that the requested operation is said registration and second data making it possible to develop, by said piece of recording software (A e ), an address of the "URL" type characteristic of said directory server determined (SA), and in that data associated with said subscriber profile are transmitted, during said step A1, to this directory server (SA), so as to carry out said registration of said first user, said registrant registration comprising the determination of an "IP" type address by association of said directory server address (SA) and said identification data of said first user.
8. Procédé selon la revendication 7, caractérisé en ce qu'il comprend au moins une étape supplémentaire consistant à l'envoi à ladite carte à puce8. Method according to claim 7, characterized in that it comprises at least one additional step consisting of sending to said smart card
(2a) d'un acquittement ou d'un code d'erreur.(2a) an acknowledgment or an error code.
9. Procédé selon la revendication 8, caractérisé en ce qu'il comprend des étapes supplémentaires consistant en des échanges de données entre un desdits serveurs d'annuaire {SA) et ladite carte à puce (2a), de manière à authentifier celle-ci ou ledit premier usager, et en ce que ladite authentification met en ouvre un certificat et au moins une clé de chiffrement stockée dans ladite carte à puce (2a). 9. Method according to claim 8, characterized in that it comprises additional steps consisting in the exchange of data between one of said directory servers (SA) and said smart card (2a), so as to authenticate the latter. or said first user, and in that said authentication implements a certificate and at least one encryption key stored in said smart card (2a).
10. Procédé selon la revendication 6, caractérisé en ce qu'une pièce de logiciel dite de localisation {A) est associée à un second protocole {PLy) permettant la localisation d'au moins un deuxième usager sur ledit réseau de type Internet {RI), ledit deuxième usager étant enregistré sur un10. Method according to claim 6, characterized in that a piece of software called localization {A) is associated with a second protocol {PL y ) allowing the localization of at least a second user on said Internet type network { RI), said second user being registered on a
5 serveur d'annuaire déterminé {SA), en ce que ce dit enregistrement comprend au moins des données dites d'identification dudit deuxième usager, en ce que ladite requête "HTTP" de ladite étape 3/ comprend des premières données indiquant que l'opération demandée est ladite localisation, des deuxièmes données identifiant ledit deuxième usager à w localiser et des troisièmes données permettant d'élaborer, par ladite pièce de logiciel de localisation (A , une adresse de type "URL" caractéristique dudit serveur d'annuaire déterminé {SA), et en ce que des données identifiant ledit deuxième usager sont transmises, pendant ladite étape 4/ à ce serveur d'annuaire {SA), de manière à réaliser ladite localisation5 determined directory server (SA), in that this said recording comprises at least so-called identification data of said second user, in that said "HTTP" request of said step 3 / includes first data indicating that the requested operation is said location, second data identifying said second user to be located w and third data making it possible to develop, by said piece of location software (A, an address of type "URL" characteristic of said determined directory server { SA), and in that data identifying said second user are transmitted, during said step 4 / to this directory server (SA), so as to perform said localization
15 dudit deuxième usager, par la recherche d'une adresse de type "IP", en associant lesdites données d'identification de ce deuxième usager, reçues par ledit serveur d'annuaire {SA), à des données d'enregistrement stockées dans celui-ci, et la retransmission de ladite adresse de type "IP" à ladite carte à puce (2a), de manière à permettre ladite localisation. 015 of said second user, by searching for an "IP" type address, by associating said identification data of this second user, received by said directory server (SA), with registration data stored in that -this, and the retransmission of said "IP" type address to said smart card (2a), so as to allow said location. 0
11. Carte à puce destinée à coopérer avec un terminal muni d'un lecteur de carte à puce, pour la mise en relation d'un premier usager avec au moins un serveur d'annuaire, en vue de son enregistrement et/ou de la localisation d'au moins un deuxième usager sur un réseau notamment de type Internet, à l'aide de protocoles d'enregistrement et/ou de localisation 5 déterminés, caractérisé en ce que ladite carte à puce (2a) stocke au moins une pièce de logiciel {Ae, A) associée aux dits protocoles déterminés d'enregistrement et de localisation, en ce que cette carte à puce (2a) ) comporte une pièce de logiciel (23a), formant une couche protocolaire de communication spécifique, comprenant en outre au moins 0 une première entité logicielle autonome (S , de type dit client et une deuxième entité logicielle autonome (S2), de type dit serveur, lesdites entités (S2, S2) coopérant de manière à ce que ladite carte à puce (2a) offre la fonctionnalité d'un client/serveur de type "WEB" et à permettre ladite mise en relation d'un premier usager avec au moins un serveur d'annuaire {SA), via ledit réseau de type Internet {RI), et en ce que ladite carte à puce (2a) comprend au moins une deuxième entité logicielle {ATe, AT) coopérant avec ladite pièce de logiciel spécifique (23a), pour que ladite carte à puce (2a) offre une fonctionnalité d'interface passerelle dite "CGI" permettant l'exécution desdites pièces de logiciel {Ae, A) associées aux dits protocoles déterminés d'enregistrement et de localisation.11. Chip card intended to cooperate with a terminal provided with a chip card reader, for connecting a first user with at least one directory server, with a view to its registration and / or the location of at least a second user on a network, in particular of the Internet type, using determined recording and / or location protocols 5, characterized in that said smart card (2a) stores at least one piece of software (A e , A) associated with said determined recording and location protocols, in that this smart card (2a)) comprises a piece of software (23a), forming a specific communication protocol layer, further comprising at least 0 a first autonomous software entity (S, of the so-called client type and a second autonomous software entity (S 2 ), of said server type, said entities (S 2 , S 2 ) cooperating so that said smart card (2a) offers the functionality of a client / server of "WEB" type and enabling said connection of a first user with at least one directory server (SA), via said Internet type network (RI), and in that said smart card (2a) comprises at least a second software entity {AT e , AT) cooperating with said specific piece of software (23a), so that said smart card (2a) offers a gateway interface functionality called "CGI" allowing the execution of said pieces of software {A e , A) associated with said determined recording and location protocols.
12. Carte à puce selon la revendication 11 , caractérisé en ce que ledit enregistrement s'effectuant à l'aide de données dites de profil d'abonné, décrivant des caractéristiques associées aux dits abonnés, au moins un jeu de données de profil d'abonnés {PAZ) est stocké dans ladite carte à puce (2a). 12. Chip card according to claim 11, characterized in that said recording being carried out using data called subscriber profile, describing characteristics associated with said subscribers, at least one set of profile data subscribers (PA Z ) is stored in said smart card (2a).
EP01907762A 2000-02-10 2001-02-09 Method for registering a user on an internet-type network directory server and/or for locating a user on said network, and smart card therefor Withdrawn EP1169839A1 (en)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
FR0001664A FR2805108B1 (en) 2000-02-10 2000-02-10 METHOD FOR REGISTERING A USER ON A DIRECTORY SERVER OF AN INTERNET TYPE NETWORK AND / OR LOCATING A USER ON THIS NETWORK, AND CHIP CARD FOR IMPLEMENTING THE METHOD
FR0001664 2000-02-10
PCT/FR2001/000396 WO2001060026A1 (en) 2000-02-10 2001-02-09 Method for registering a user on an internet-type network directory server and/or for locating a user on said network, and smart card therefor

Publications (1)

Publication Number Publication Date
EP1169839A1 true EP1169839A1 (en) 2002-01-09

Family

ID=8846859

Family Applications (1)

Application Number Title Priority Date Filing Date
EP01907762A Withdrawn EP1169839A1 (en) 2000-02-10 2001-02-09 Method for registering a user on an internet-type network directory server and/or for locating a user on said network, and smart card therefor

Country Status (10)

Country Link
US (2) US7194545B2 (en)
EP (1) EP1169839A1 (en)
JP (1) JP2003523033A (en)
KR (1) KR100723006B1 (en)
CN (1) CN1161942C (en)
AU (1) AU782179B2 (en)
CA (1) CA2366570A1 (en)
FR (1) FR2805108B1 (en)
TW (1) TW567700B (en)
WO (1) WO2001060026A1 (en)

Families Citing this family (54)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2791159B1 (en) * 1999-03-15 2001-05-04 Bull Cp8 METHOD FOR ACCESSING AN OBJECT USING A WEB-BASED BROWSER COOPERATING WITH A CHIP CARD AND ARCHITECTURE FOR IMPLEMENTING THE METHOD
FR2805107B1 (en) * 2000-02-10 2002-04-05 Bull Cp8 METHOD FOR MANAGING MULTIMEDIA DATA TRANSMISSIONS VIA AN INTERNET-TYPE NETWORK, ESPECIALLY TELEPHONE DATA, AND CHIP CARD FOR IMPLEMENTING THE METHOD
FR2805108B1 (en) * 2000-02-10 2002-04-05 Bull Cp8 METHOD FOR REGISTERING A USER ON A DIRECTORY SERVER OF AN INTERNET TYPE NETWORK AND / OR LOCATING A USER ON THIS NETWORK, AND CHIP CARD FOR IMPLEMENTING THE METHOD
FR2805059A1 (en) * 2000-02-10 2001-08-17 Bull Cp8 METHOD FOR LOADING A SOFTWARE PART IN A CHIP CARD, PARTICULARLY OF THE TYPE SAID "APPLET"
JP4391711B2 (en) * 2001-08-28 2009-12-24 富士通株式会社 Device, device user management device, and device user management program
US7346783B1 (en) * 2001-10-19 2008-03-18 At&T Corp. Network security device and method
US7783901B2 (en) * 2001-12-05 2010-08-24 At&T Intellectual Property Ii, L.P. Network security device and method
US20030145096A1 (en) * 2002-01-29 2003-07-31 International Business Machines Corporation Method and device for delivering information through a distributed information system
EP1508865A4 (en) 2002-05-29 2006-06-07 Sony Corp Information processing system
JP4301770B2 (en) * 2002-06-10 2009-07-22 健 坂村 Connection information management system, connection information management method, IC card, server
JP4360778B2 (en) 2002-06-10 2009-11-11 健 坂村 IC card connection information management system, connection information management method, IC card, server, terminal device
US7844717B2 (en) * 2003-07-18 2010-11-30 Herz Frederick S M Use of proxy servers and pseudonymous transactions to maintain individual's privacy in the competitive business of maintaining personal history databases
KR100971137B1 (en) * 2003-01-09 2010-07-20 주식회사 비즈모델라인 Network Card of Smart Card Type Based on MSMagnetic Stripe, System for Operating Network Card by It
DE10310351A1 (en) * 2003-03-10 2004-09-23 Giesecke & Devrient Gmbh Loading of media data into a portable data carrier, e.g. a smart card, whereby data is transferred via a secure data transfer channel formed between a secure content server and the data carrier via an operating unit, e.g. a PC
US20050004968A1 (en) * 2003-07-02 2005-01-06 Jari Mononen System, apparatus, and method for a mobile information server
JP2005309781A (en) * 2004-04-21 2005-11-04 Ntt Docomo Inc Electronic value exchange system and electronic value exchange method
JP3839820B2 (en) * 2004-04-21 2006-11-01 株式会社エヌ・ティ・ティ・ドコモ Data communication apparatus and data communication method
US7908339B2 (en) * 2004-06-03 2011-03-15 Maxsp Corporation Transaction based virtual file system optimized for high-latency network connections
US8812613B2 (en) * 2004-06-03 2014-08-19 Maxsp Corporation Virtual application manager
US9357031B2 (en) 2004-06-03 2016-05-31 Microsoft Technology Licensing, Llc Applications as a service
US7664834B2 (en) * 2004-07-09 2010-02-16 Maxsp Corporation Distributed operating system management
DE102004044454A1 (en) * 2004-09-14 2006-03-30 Giesecke & Devrient Gmbh Portable device for unlocking an access
US8234238B2 (en) * 2005-03-04 2012-07-31 Maxsp Corporation Computer hardware and software diagnostic and report system
US8589323B2 (en) 2005-03-04 2013-11-19 Maxsp Corporation Computer hardware and software diagnostic and report system incorporating an expert system and agents
US7512584B2 (en) * 2005-03-04 2009-03-31 Maxsp Corporation Computer hardware and software diagnostic and report system
US7624086B2 (en) * 2005-03-04 2009-11-24 Maxsp Corporation Pre-install compliance system
JP4979912B2 (en) * 2005-08-31 2012-07-18 フェリカネットワークス株式会社 Information processing system, client, server, program, information processing method
US8150944B2 (en) * 2005-09-30 2012-04-03 Sony Ericsson Mobile Communications Ab Electronic apparatus with server device for managing setting data
US8186496B2 (en) * 2005-10-14 2012-05-29 Gemalto Sa Smart card customization
US8364968B2 (en) * 2006-05-19 2013-01-29 Symantec Corporation Dynamic web services systems and method for use of personal trusted devices and identity tokens
US8811396B2 (en) 2006-05-24 2014-08-19 Maxsp Corporation System for and method of securing a network utilizing credentials
US8898319B2 (en) 2006-05-24 2014-11-25 Maxsp Corporation Applications and services as a bundle
EP1883257A1 (en) * 2006-07-28 2008-01-30 Gemplus Method for synchronisation between a mobile equipment and a smart card
US7987307B2 (en) * 2006-09-22 2011-07-26 Intel Corporation Interrupt coalescing control scheme
US9317506B2 (en) * 2006-09-22 2016-04-19 Microsoft Technology Licensing, Llc Accelerated data transfer using common prior data segments
US7840514B2 (en) * 2006-09-22 2010-11-23 Maxsp Corporation Secure virtual private network utilizing a diagnostics policy and diagnostics engine to establish a secure network connection
WO2008064261A2 (en) * 2006-11-21 2008-05-29 Telos Corporation Method and system for remote security token extension
US8423821B1 (en) 2006-12-21 2013-04-16 Maxsp Corporation Virtual recovery server
US7844686B1 (en) 2006-12-21 2010-11-30 Maxsp Corporation Warm standby appliance
US7908493B2 (en) * 2007-06-06 2011-03-15 International Business Machines Corporation Unified management of power, performance, and thermals in computer systems
US8175418B1 (en) 2007-10-26 2012-05-08 Maxsp Corporation Method of and system for enhanced data storage
US8645515B2 (en) 2007-10-26 2014-02-04 Maxsp Corporation Environment manager
US8307239B1 (en) 2007-10-26 2012-11-06 Maxsp Corporation Disaster recovery appliance
WO2009065154A2 (en) * 2007-11-12 2009-05-22 Mark Currie Method of and apparatus for protecting private data entry within secure web sessions
KR100971125B1 (en) * 2008-01-09 2010-07-20 주식회사 비즈모델라인 Method for Network Card Based on Magnetic Stripe
KR100971128B1 (en) * 2008-01-09 2010-07-20 주식회사 비즈모델라인 Method for Network Card Based on Magnetic Stripe
JP4546551B2 (en) * 2008-03-18 2010-09-15 フェリカネットワークス株式会社 Information processing apparatus, information processing method, program, and information processing system
KR101062099B1 (en) * 2008-08-14 2011-09-02 에스케이 텔레콤주식회사 System and method for activation of applications stored on the card
US8055477B2 (en) * 2008-11-20 2011-11-08 International Business Machines Corporation Identifying deterministic performance boost capability of a computer system
US8676954B2 (en) * 2011-12-06 2014-03-18 Kaseya International Limited Method and apparatus of performing simultaneous multi-agent access for command execution through a single client
US10841316B2 (en) 2014-09-30 2020-11-17 Citrix Systems, Inc. Dynamic access control to network resources using federated full domain logon
US20160285493A1 (en) * 2015-03-23 2016-09-29 Stmicroelectronics S.R.L. Methods for performing a remote management of a multi-subscription sim module, and corresponding sim module and computer program product
US10958640B2 (en) * 2018-02-08 2021-03-23 Citrix Systems, Inc. Fast smart card login
CN110596566B (en) * 2018-06-12 2022-03-04 北京华峰测控技术股份有限公司 DPAT (dual port automatic test) method for ATE (automatic test equipment) system

Family Cites Families (40)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2682255B2 (en) 1991-04-19 1997-11-26 富士ゼロックス株式会社 Email system
US5353331A (en) * 1992-03-05 1994-10-04 Bell Atlantic Network Services, Inc. Personal communications service using wireline/wireless integration
ATE518388T1 (en) * 1993-06-15 2011-08-15 Celltrace Llc TELECOMMUNICATIONS SYSTEM
DE69533328T2 (en) * 1994-08-30 2005-02-10 Kokusai Denshin Denwa Co., Ltd. VERIFICATION DEVICE
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
US5734831A (en) * 1996-04-26 1998-03-31 Sun Microsystems, Inc. System for configuring and remotely administering a unix computer over a network
US6557752B1 (en) * 1996-06-12 2003-05-06 Q-International, Inc. Smart card for recording identification, and operational, service and maintenance transactions
US5923884A (en) * 1996-08-30 1999-07-13 Gemplus S.C.A. System and method for loading applications onto a smart card
US5901303A (en) * 1996-12-27 1999-05-04 Gemplus Card International Smart cards, systems using smart cards and methods of operating said cards in systems
US6282522B1 (en) * 1997-04-30 2001-08-28 Visa International Service Association Internet payment system using smart card
AU8113798A (en) * 1997-06-13 1998-12-30 Gemplus S.C.A. Smart card, cordless telephone, system and method for access and communication by internet
JP3760581B2 (en) 1997-07-28 2006-03-29 富士通株式会社 Communication partner information retrieval apparatus and communication support system using the same
US6498797B1 (en) * 1997-11-14 2002-12-24 At&T Corp. Method and apparatus for communication services on a network
JP4035873B2 (en) 1997-11-21 2008-01-23 株式会社日立製作所 IC card and IC card system
JP4798844B2 (en) 1998-02-03 2011-10-19 モンデックス インターナショナル リミテッド System and method for controlling access to computer code in an IC card
FI105761B (en) * 1998-02-13 2000-09-29 Sonera Oyj Change of a mobile subscriber's service profile
US6986062B2 (en) * 1998-04-09 2006-01-10 Microsoft Corporation Set top box object security system
US6385651B2 (en) * 1998-05-05 2002-05-07 Liberate Technologies Internet service provider preliminary user registration mechanism provided by centralized authority
FR2781067B1 (en) 1998-07-10 2000-09-22 Gemplus Card Int CHIP CARD ORGANIZATION SYSTEMS FOR USE AS A SERVER IN AN INTERNET-TYPE NETWORK
US6250557B1 (en) * 1998-08-25 2001-06-26 Telefonaktiebolaget Lm Ericsson (Publ) Methods and arrangements for a smart card wallet and uses thereof
FI109756B (en) * 1998-09-21 2002-09-30 Nokia Corp A method of utilizing local resources in a communication system, a communication system and wireless communication
US6253203B1 (en) * 1998-10-02 2001-06-26 Ncr Corporation Privacy-enhanced database
US6347312B1 (en) * 1998-11-05 2002-02-12 International Business Machines Corporation Lightweight directory access protocol (LDAP) directory server cache mechanism and method
US6438550B1 (en) * 1998-12-10 2002-08-20 International Business Machines Corporation Method and apparatus for client authentication and application configuration via smart cards
US6481621B1 (en) * 1999-01-12 2002-11-19 International Business Machines Corporation System method and article of manufacture for accessing and processing smart card information
FR2791159B1 (en) * 1999-03-15 2001-05-04 Bull Cp8 METHOD FOR ACCESSING AN OBJECT USING A WEB-BASED BROWSER COOPERATING WITH A CHIP CARD AND ARCHITECTURE FOR IMPLEMENTING THE METHOD
US6366950B1 (en) * 1999-04-02 2002-04-02 Smithmicro Software System and method for verifying users' identity in a network using e-mail communication
US6751459B1 (en) * 1999-04-20 2004-06-15 Nortel Networks Limited Nomadic computing with personal mobility domain name system
US6547150B1 (en) * 1999-05-11 2003-04-15 Microsoft Corporation Smart card application development system and method
US6591116B1 (en) * 1999-06-07 2003-07-08 Nokia Mobile Phones Limited Mobile equipment and networks providing selection between USIM/SIM dependent features
US20040040026A1 (en) * 1999-06-08 2004-02-26 Thinkpulse, Inc. Method and System of Linking a Smart Device Description File with the Logic of an Application Program
DE59912688D1 (en) * 1999-11-17 2005-11-24 Swisscom Mobile Ag METHOD AND SYSTEM FOR PREPARING AND TRANSMITTING SMS MESSAGES IN A MOBILE RADIO NETWORK
EP1107550B1 (en) * 1999-12-06 2005-11-09 Alcatel A terminal to execute a terminal application
US6587873B1 (en) * 2000-01-26 2003-07-01 Viaclix, Inc. System server for channel-based internet network
US7111051B2 (en) * 2000-01-26 2006-09-19 Viaclix, Inc. Smart card for accessing a target internet site
FR2805108B1 (en) * 2000-02-10 2002-04-05 Bull Cp8 METHOD FOR REGISTERING A USER ON A DIRECTORY SERVER OF AN INTERNET TYPE NETWORK AND / OR LOCATING A USER ON THIS NETWORK, AND CHIP CARD FOR IMPLEMENTING THE METHOD
FR2805107B1 (en) * 2000-02-10 2002-04-05 Bull Cp8 METHOD FOR MANAGING MULTIMEDIA DATA TRANSMISSIONS VIA AN INTERNET-TYPE NETWORK, ESPECIALLY TELEPHONE DATA, AND CHIP CARD FOR IMPLEMENTING THE METHOD
FR2805059A1 (en) * 2000-02-10 2001-08-17 Bull Cp8 METHOD FOR LOADING A SOFTWARE PART IN A CHIP CARD, PARTICULARLY OF THE TYPE SAID "APPLET"
US7003663B2 (en) * 2000-12-22 2006-02-21 Gemplus Distribution of deployment information for remote applications
ES2843503T3 (en) * 2001-10-05 2021-07-19 Amphenol Corp Electrical connector with improved radial resilience and method for its manufacture

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
None *
See also references of WO0160026A1 *

Also Published As

Publication number Publication date
WO2001060026A1 (en) 2001-08-16
AU3565001A (en) 2001-08-20
KR100723006B1 (en) 2007-05-30
FR2805108B1 (en) 2002-04-05
TW567700B (en) 2003-12-21
FR2805108A1 (en) 2001-08-17
CA2366570A1 (en) 2001-08-16
CN1363174A (en) 2002-08-07
US20020124092A1 (en) 2002-09-05
US7194545B2 (en) 2007-03-20
AU782179B2 (en) 2005-07-07
KR20020005683A (en) 2002-01-17
US20070208586A1 (en) 2007-09-06
CN1161942C (en) 2004-08-11
JP2003523033A (en) 2003-07-29

Similar Documents

Publication Publication Date Title
EP1169839A1 (en) Method for registering a user on an internet-type network directory server and/or for locating a user on said network, and smart card therefor
EP1169837B1 (en) Method for managing multimedia data transmission via internet and smart card therefor
EP1142256B1 (en) Safe terminal provided with a smart card reader designed to communicate with a server via an internet-type network
WO2001059563A1 (en) Method for loading a software component in a smart card, in particular applet
EP1044436B1 (en) Method for communication between a user station and a network, in particular such as internet, and implementing architecture
EP1076972A1 (en) System for accessing an object using a &#34;web&#34; browser co-operating with a smart card
EP1208684B1 (en) Method for high rate data flow transmission on an internet-type network between a server and a smart card terminal, in particular a multimedia data flow
EP1074007A1 (en) On-board system comprising network interface means and method for activating applications located in said on-board system
EP1145522A2 (en) Method and architecture for remote monitoring of a user station via an internet-type network and application thereof to a smart card demonstrator
FR2823333A1 (en) INTERACTIVE TERMINAL SYSTEM WITH MULTI-APPLICATION CENTRAL EQUIPMENT AND PERIPHERALS

Legal Events

Date Code Title Description
PUAI Public reference made under article 153(3) epc to a published international application that has entered the european phase

Free format text: ORIGINAL CODE: 0009012

AK Designated contracting states

Kind code of ref document: A1

Designated state(s): AT BE CH CY DE DK ES FI FR GB GR IE IT LI LU MC NL PT SE TR

17P Request for examination filed

Effective date: 20020218

RAP1 Party data changed (applicant data changed or rights of an application transferred)

Owner name: CP8 TECHNOLOGIES

GRAP Despatch of communication of intention to grant a patent

Free format text: ORIGINAL CODE: EPIDOSNIGR1

GRAS Grant fee paid

Free format text: ORIGINAL CODE: EPIDOSNIGR3

STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: THE APPLICATION IS DEEMED TO BE WITHDRAWN

18D Application deemed to be withdrawn

Effective date: 20070626