WO2001059563A1 - Procede de chargement d'une piece de logiciel dans une carte a puce, notamment du type dit 'applet' - Google Patents
Procede de chargement d'une piece de logiciel dans une carte a puce, notamment du type dit 'applet' Download PDFInfo
- Publication number
- WO2001059563A1 WO2001059563A1 PCT/FR2001/000393 FR0100393W WO0159563A1 WO 2001059563 A1 WO2001059563 A1 WO 2001059563A1 FR 0100393 W FR0100393 W FR 0100393W WO 0159563 A1 WO0159563 A1 WO 0159563A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- smart card
- loading
- software
- terminal
- data
- Prior art date
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
-
- G—PHYSICS
- G07—CHECKING-DEVICES
- G07F—COIN-FREED OR LIKE APPARATUS
- G07F7/00—Mechanisms actuated by objects other than coins to free or to actuate vending, hiring, coin or paper currency dispensing or refunding apparatus
- G07F7/08—Mechanisms actuated by objects other than coins to free or to actuate vending, hiring, coin or paper currency dispensing or refunding apparatus by coded identity card or credit card or other personal identification means
- G07F7/10—Mechanisms actuated by objects other than coins to free or to actuate vending, hiring, coin or paper currency dispensing or refunding apparatus by coded identity card or credit card or other personal identification means together with a coded signal, e.g. in the form of personal identification information, like personal identification number [PIN] or biometric data
- G07F7/1008—Active credit-cards provided with means to personalise their use, e.g. with PIN-introduction/comparison system
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/16—Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/445—Program loading or initiating
- G06F9/44521—Dynamic linking or loading; Link editing at or after load time, e.g. Java class loading
- G06F9/44526—Plug-ins; Add-ons
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/08—Payment architectures
- G06Q20/10—Payment architectures specially adapted for electronic funds transfer [EFT] systems; specially adapted for home banking systems
- G06Q20/105—Payment architectures specially adapted for electronic funds transfer [EFT] systems; specially adapted for home banking systems involving programming of a portable memory device, e.g. IC cards, "electronic purses"
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/30—Payment architectures, schemes or protocols characterised by the use of specific devices or networks
- G06Q20/34—Payment architectures, schemes or protocols characterised by the use of specific devices or networks using cards, e.g. integrated circuit [IC] cards or magnetic cards
- G06Q20/355—Personalisation of cards for use
- G06Q20/3552—Downloading or loading of personalisation data
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/02—Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/04—Protocols specially adapted for terminals or networks with limited capabilities; specially adapted for terminal portability
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/30—Definitions, standards or architectural aspects of layered protocol stacks
- H04L69/32—Architecture of open systems interconnection [OSI] 7-layer type protocol stacks, e.g. the interfaces between the data link level and the physical level
- H04L69/322—Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions
- H04L69/329—Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions in the application layer [OSI layer 7]
Definitions
- the invention relates to a method for loading a piece of software into a smart card.
- Pieces of software in the form of an "applet" which has just been recalled, insofar as the quantity of code is not too large, can be stored in a non-volatile memory present on a memory card. puce, just like any other application.
- the method according to the invention is more particularly concerned with a terminal or user station provided with a "smart" card reader.
- terminal In the context of the invention, the term “terminal” must 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.
- FIG. 1A appended to the present description schematically illustrates the architecture implemented for the loading of "applets" into a chip card according to the known art.
- Terminal 1 stores a first specific loading program ("Off-Loader"), referenced OL. It communicates with a smart card 2, via a smart card reader 3. The transmissions are carried out according to a standardized communication protocol, using the aforementioned commands, protocol which will be detailed below.
- OL first specific loading program
- the smart card 2 for its part, stores a second specific loading program ("In-Loader"), referenced IL.
- IL a second specific loading program
- a first drawback of this method is that the programs IL and OL must be paired in order to be able to communicate with each other. It follows that if they are of different origins, they are not, a priori, compatible. This characteristic is linked to the command set to be used.
- a second drawback is due to the fact that the communications are carried out according to the aforementioned ISO 7816 protocol. Indeed, this imposes a physical proximity between the OL and IL programs. It follows that the OL program must generally run directly on terminal 1 and not, for example, on another terminal or a remote server.
- Internet network includes, in addition to the Internet itself, private networks of companies or the like, of the so-called “intranet” type, and the networks extending them outwards, type called “extranet”, and generally any network in which data exchanges are carried out according to a protocol of the type Internet. In what follows such a network will be called generically "Internet network”.
- 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. 1B 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 including input connections -outlets 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.
- circuits 1 1 can be constituted by a modem to connect to a switched telephone line or to a higher speed communication channel: integrated service digital network ("ISDN”), cable or satellite links, etc.
- ISDN integrated service digital network
- the circuits 1 1 make it possible to connect 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 memories and fixed, mass memory with magnetic disc, floppy and / or CD-ROM drive, 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 into communication with servers or any computer system connected to the RI network, of which only one, 4, is illustrated in FIG. 1A.
- the access circuits 11 put the terminal 1 in communication with the servers 4 using special software 10, called a "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 shown diagrammatically in FIG. 1 C. It is described by the ISO 7816 standard, which itself comprises several sub-assemblies:
- ISO 7816-3 with regard to the transfer of data between the terminal and the smart card
- ISO 7816-4 with regard to the structure of the command set and the format of commands.
- FIG. 1C 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, ..., A n ; n being the maximum number of applications present on the smart card 2.
- An application, Aj present in the smart card 2, dialogs with the terminal 1 by means of a set of commands. 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”.
- T 0
- T block mode
- An application A / is, for example, in the form of an "applet” which can be recorded initially, or also loaded from the terminal 1. To do this, as illustrated in FIG. 1A, use is made of a "Off-Loader” program, OL, saved in terminal 1 and to an "In-Loader” program, IL, which forms one of the Aj applications of smart card 2.
- the selection of a particular Aj application is obtained using an "APDU” of the selection type ("SELECT"). Once this choice has been made, the "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. .
- the two loading programs, OL and IL are no longer dependent on each other. In other words, they no longer have to be paired to be compatible.
- the OL part of the loading programs no longer has to be stored necessarily in the terminal, that is to say in relation to physical proximity with the second part IL.
- the OL program can be stored on a remote server, connected to the terminal via a network such as the Internet.
- 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. 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 anything.
- 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 loading of an "applet” in the smart card can be done by this interface "CGI”.
- the IL part of the loading program is considered to be a command script, which will be called “cgiscript”, attached to the "WEB” server functionality offered by the smart card.
- the exchanges between the OL and IL programs can take place with the help of classic forms in "HTML” or “forms” language according to English terminology. While retaining the aforementioned ISO standards for communications between terminal and smart card, via the smart card reader, the method according to the invention allows exchanges between the parts of the loading programs OL and IL using the protocol of Internet communication "TCP / IP", the OL part and the "applets” to be loaded can be stored locally or in a remote server.
- the main object of the invention is therefore a method of loading a piece of software into a smart card from a terminal connected to said smart card by means of a smart card reader allowing communications. according to a first determined protocol, said loading being effected by the implementation and cooperation of first and second loading programs, said second loading program being stored in said smart card, characterized in that it comprises at least the following phases: a / a first preliminary phase consisting in implanting, in said smart card, a first piece of software, forming a specific communication protocol layer; b / a second preliminary phase consisting in installing, in said terminal, a second piece of software, forming a specific communication protocol layer; in that 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 data exchange session bidirectional between at least said terminal and said smart card, so that said smart card offers the functionality of a client / server "WEB"; in that it comprises a third preliminary phase consisting in implanting in said
- FIG. 1A schematically illustrates an exemplary embodiment of an architecture allowing the loading of an "applet" in a chip card according to the 'known art
- FIGS. 1B and 1C illustrate the hardware and logic architectures, respectively, of an example application system based on a smart card connected to an Internet network according to the known art
- - Figure 2 schematically illustrates an example of application system based on smart card according to the invention, the latter acting as client / server "WEB"
- Figure 3 is a state diagram of a session between software entities called intelligent agents, according to one aspect of the invention
- FIG. 1A schematically illustrates an exemplary embodiment of an architecture allowing the loading of an "applet" in a chip card according to the 'known art
- FIGS. 1B and 1C illustrate the hardware and logic architectures, respectively, of an example application system based on a smart card connected to an Internet network according to the known art
- - Figure 2 schematically illustrates an example of application system based on smart card according to the invention, the latter acting as client
- FIG. 4 illustrates 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 manner the logical architecture of a system according to the invention in which the smart card comprises intelligent agents translating scripts
- FIG. 6 schematically illustrates an exemplary embodiment of an architecture allowing the loading of an "applet" in a smart card according to the invention
- - Figure 7 illustrates the structure of a file for loading a
- FIG. 8 schematically illustrates the main phases of the process for loading an "applet” into a smart card according to a first practical example of embodiment
- - Figure 9 schematically illustrates the main phases of the process of loading an "applet” in a smart card according to a second practical embodiment
- FIGS. 9 and 10 illustrate two examples of forms in "HTML” language usable by the method of loading an "applet” in a smart card according to the invention, for the implementation of the methods known as “GET” and “ POST ", respectively
- FIGS. 12A to 12G illustrate several variant embodiments of system architectures allowing the loading of an "applet” in a smart card according to the invention.
- 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 immediately below, 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.
- 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. In the case of the Internet, "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 CC1 and CC2 layers 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 a "UNIX” (registered trademark) operating system: OPEN ("OPEN”), READ (“READ”), WRITE (“WRITE”), CLOSE (“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.
- 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 CC-
- agents intelligent agents
- 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.
- 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
- 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 information exchange between a user (not shown) of the 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
- 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, terminal side 1, the second, 232a, is located in layer 23a, chip card side
- 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:
- type agents There are two main categories of agents: type agents
- server which are identified by a fixed reference
- client type agents, 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 for "protocol data unit”
- SmartTP pdu with reference to the English term “Smart Card” (chip card) commonly used.
- the “pdu” use in particular the references defined above.
- the "BLOCK" flag indicates that the agent is waiting for a reply from his correspondent and suspends all activity.
- a session is opened with another agent, an "S-Agent" session being identified by a pair of references;
- the mechanism for establishing an "S-Agent" session is as follows: - a new instance of a client agent is created (chip card or terminal side), this agent being identified by an ephemeral pseudounic 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 flag
- 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 positioned (and which possibly includes data;
- 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, respectively, 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.
- the smart card 2a is advantageously "addressed” by using a "URL” address (for "Universal Resource Locator") defining a loopback on the terminal 1 itself, and not a pointing on an external server .
- a "URL” address for "Universal Resource Locator”
- 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.
- 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 shown in more detail.
- the smart card 2a comprises several agents, only two of which 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 includes, the lower protocol layers, referenced 200a, meeting ISO standards 7816-3 (FIG. 2: CCai and CCa2), the "APDU" command manager 201 a- ⁇ , and the packet multiplexer 230a, this the latter being an interface to agents, in particular the "WEB" agent 23132-
- the first stack includes 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 latter layers are interfaced with the "WEB" browser 10.
- the other stack includes the lower protocol layers, referenced 101, meeting ISO standards 7816-3 (FIG. 2: Ci and C2). the manager 102 of "APDU" orders 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, AMHz..., Alves ..., 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 An of the aforementioned "CGA” type, can be activated through this client / server "WEB”, either by "WEB” browser 10 present in terminal 1, either by a remote browser 4, located at any point on the Internet RI network, by the implementation of sessions between agents.
- the applications, A- ⁇ to An do not need to be rewritten and are implemented as they are.
- all or part of the applications A- ⁇ to An can be constituted by "applets”, loaded initially in a non-volatile memory of the smart card 2 or, on the contrary, loaded via the two loading programs OL and IL, the nature and possible storage locations of which will be specified below.
- the "WEB” server function offered by the smart card includes a mechanism similar to the so-called “CGI” function (for "Common Gateway Interface” or “gateway interface”) installed in the servers Classic "WEB”.
- 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 (generally remote)
- "host” refers to a host system (generally remote)
- "WEB” server is interpreted by a "WEB” server as the execution of a command script, of the "CGI” type named "xxx" and present in the "cgi- bin” directory of this host system.
- 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.
- 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 translator agents or in shorthand “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 61 by an agent “APDU” 2010a of the order manager "APDU” 201a, which is equipped, in this case, with a double capacity.
- 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 enclosure 6 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 applications / 1 to A ⁇ .
- the selected application being assumed to be application A, the session is established between the "WEB" agent 232a ⁇ and the agent
- a script translator agent generates a sequence of "APDU” orders.
- a session is opened between the translator agent, eg ATS agent: and the agent “APDU” 2101a.
- the orders are then issued to the "APDU” agent 2101a.
- the "APDU” order manager 210a selects the "CGA” application A t 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 script translator agent).
- 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 loading of an "applet” in the smart card is effected via the "CGI" interface offered by it.
- the loading program part IL located in the smart card 2a, is constituted by a script. It is, for example, a script associated with the application referenced A in FIG. 5.
- This script is, according to a characteristic of the method of the invention, activated by a "HTTP" request, the exchanges between the OL part and the IL part being carried out according to the "TCP / IP" communication protocol.
- the IL and OL programs therefore become a priori compatible. In addition, it is no longer necessary that physical proximity is respected, as in the known art (see Figure 1).
- the OL part can now be located in the terminal or, preferably, in a remote server (the connections between the server and the terminal being carried out according to the "TCP / IP” protocol), or even, as will be shown, stored in the smart card itself.
- the above-mentioned "HTTP" request is initiated by the OL party.
- the data sent to the "WEB” agent 232a ⁇ is transported, in a conventional manner per se, in the form of "APDU” orders intended for the particular application constituted by the "Packet multiplexer” 230a.
- the "APDU” order manager 201a selects this application in a manner very similar to the others "CGA” type applications, A- ⁇ to An, present in the smart card 2a.
- the packet multiplexer 230a is seen by the "APDU" order manager 201a as an ordinary "CGA” application.
- the "HTTP" request is analyzed by the "WEB” agent 232a ⁇ which detects a reference to a particular directory, which will be called hereinafter by convention “cgi-smart” (by analogy to “cgi-bin”), on the one hand, and for a particular application, IL in the case of the example described.
- the full path is therefore, in this case “cgi-smart / il”.
- the entity "it” above designates a particular script associated with an application which is also particular (IL in this case).
- a session is opened between the translator agent, for example the ATS agent, and the "APDU” agent 2010a.
- the ATS ⁇ script translator agent generates a sequence of "APDU” commands. Orders are issued to the "APDU” agent 2010a.
- the "APDU” order manager 201a selects the "CGA” Aj application (for example the IL 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.
- the response of the application IL (Aj) is transmitted in the opposite direction to the order manager "APDU" 201a, to the agent "APDU” 2010a, then again to the agent ATSj (and more generally to the 'script translator agent).
- the response consisting of a form in "HTLM” language, takes the opposite path, by implementing sessions between paired intelligent agents, to be re-transmitted to terminal 1 and, possibly to a remote server 4 (FIG. 4), via the RI Internet network, to finally reach the OL application.
- FIG. 6 schematically illustrates the logical architecture allowing the loading of an "applet” according to the method of the invention.
- the hardware blocks constituted by the terminal 1, the smart card reader 3 and smart card 2a, communicating by implementing the aforementioned ISO 7816 standard protocol and the exchange of "APDU” orders, in a conventional manner per se.
- the OL part is linked with the IL part (in the form of a script referenced ILs), by exchanges according to the Internet protocol "TCP / IP", in the manner described above, by implementing the server functions "HTTP "(referenced SC) and” CGI "of the smart card 2a.
- the OL program is not necessarily stored in terminal 1.
- the loading file of the "applet”, referenced 7, has the structure illustrated in FIG. 7: a header 70, a main body 71 consisting of "Byte Code” in "JAVA” language and an electronic signature 72.
- the header represents an identifier of a particular application, generally called “Application Identifier” or simply “AID”.
- the electronic signature 72 is an encrypted word with a public or private key, obtained from the code 71.
- the entire file 7 can also be encrypted, for reasons of confidentiality, when it comes to so-called sensitive applications .
- one or more additional electronic signature (s) may not be provided.
- the OL loading program part retrieves, by a command of the "GET” type, a form loading from smart card 2a, form in "HTML” language which will be arbitrarily called “download. html”.
- 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 l the actual loopback URL, as defined by relation (1), and "download.html” the "HTML" page to obtain.
- This request implements a session between intelligent agents as 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.
- FIG. 9 an example of such a form 8 is illustrated in FIG. 9.
- the form includes display areas for the header 70 of the file. loading 7, the "Byte Code” 71 and the signature 72.
- the display area 71 is of the so-called “TEXTAREA” type in "HTML” language and has a facility called “lift” for the scrolling display of texts long.
- the corresponding information as it appears in figure 9, is purely arbitrary.
- the send button 81 makes it possible to validate the form and forwards it to the smart card 2a ("submit the loading file” in FIG. 8) and the reset button 82 makes it possible to erase the information displayed and to re-initialize the form.
- 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. He is not necessary to retailer again. We can however indicate that it contains in particular a line of code in "HTML" language which typically takes the form:
- the OL part sends an "HTTP" request of the "GET” type to the smart card 2a, still by opening sessions between paired intelligent agents.
- the application IL is executed, the "WEB” server formed by the smart card 2a passing the parameters of the "HTTP" request to this last application.
- a return code is transmitted from the IL part to the OL part, again by implementing sessions between matched agents. This is generally a simple acknowledgment or, if the operation has not been carried out correctly, an error code. In the latter case, it is necessary to repeat steps 1 to 4.
- Figure 10 illustrates an example of such a form referenced 8 '.
- These elements play a role quite similar to the elements with the same reference in FIG. 9 and there is no need to rewrite them.
- the display area 71 'no longer explicitly displays the "Byte Code", but a directory or a sub-directory where the code of the "applet" to be loaded is saved.
- this zone points to a file, arbitrarily called “APPLET.BIN”, saved on a storage unit called “C”, which can be a hard disk present in terminal 1.
- An additional navigation button “browse”83 allows to scan the various (sub) directories of this disk and to select a particular file (" APPLET.BIN ").
- the return from the part IL then contains a new form.
- dynamic sequences of exchanges between the parts OL and IL can be carried out.
- the IL party may request an additional authorization (that is to say an electronic signature), for example that of a government authority. It then returns to the OL a form which can typically have the following "HTML" structure (6):
- the complete process then includes two additional steps before the final acknowledgment or error code step, i.e. six steps, as illustrated in FIG. 11.
- the number of round trips can depend on parameters appearing in one or other of the forms exchanged between the smart card and the OL part of the loading programs.
- the method according to the invention has in particular the additional advantage to no longer require physical proximity between the two parties OL and IL, since they are no longer dependent on the ISO 7816 communication protocol, the exchanges between these two portions of software implementing the Internet TCP / IP communication protocol. Also, the OL part, as well as the actual data of
- I “applet” to load on the smart card 2a can be stored either locally, or in a remote site. In all cases, however, the exchanges between these two parties implement, as has just been recalled, a "TCP / IP” communication protocol and the loading of an "applet” takes place as previously recalled. thanks to the server / client functions "WEB” and "CGI” offered by the smart card 2a.
- FIG. 12 A illustrates a system architecture according to which the OL part is stored locally on the terminal 1.
- the latter is connected to a remote server 4, via the Internet network RI.
- the data of the "applet” to be loaded into the smart card 2a, referenced Da, are stored on this server 4.
- An "HTTP" request makes it possible to transfer them to the smart card 2a, via the terminal 1 (and a smart card reader not shown), by implementing the Internet communication protocol "TCP / IP".
- the loading program part OL and the data Da are stored locally in the terminal 1.
- the connection of the terminal 1 to the Internet network RI is optional. At the very least, it is not required for loading an "applet" according to the steps of the method of the invention. This connection has been shown in dotted lines. The terminal can therefore be autonomous.
- the loading program part OL and the data Da are stored in a remote server 4.
- the communications between the server 4 and the smart card 2a, via the Internet network RI, terminal 1 and the card reader puce (not shown) î'effectait by requests "HTTP", and implementation of the protocol "TCP / IP”.
- FIG. 12D The system architecture shown in Figure 12D is similar to that of Figure 12C. The only difference is that the part of the OL loading program is stored in a first remote server, referenced
- the part of the loading program here referred to as OL ′, consists of a component of the browser 10 itself. This is advantageously an “applet” integrated into this browser.
- the type of entry to use in this case is "file”.
- the data Da, of the "applet" to be loaded on the chip card 2a can be stored on an external data recording medium 9, for example a floppy disk as illustrated in FIG. 12E.
- an external data recording medium 9 for example a floppy disk as illustrated in FIG. 12E.
- Naturally other supports can be used:
- CDROM compact CDROM, magnetic tape, etc.
- the browser 10 is able, contrary to the known art, to communicate directly with the latter , as shown with reference to Figures 2 to 4. Communication takes place by opening sessions between paired agents.
- the system architecture illustrated in FIG. 12F is a variant of the architecture in FIG. 12E.
- the part of the loading program OL is stored in the smart card 2a itself, in the form of an "applet” in "JAVA” language.
- this "applet” can be loaded dynamically on terminal 1, in OL ".
- This loading is carried out using requests posed by the browser 10, during preliminary steps.
- the OL part loaded the subsequent steps are common to the previous case.
- the data Da can also be stored on an external medium, for example a floppy disk 8.
- the system architecture of Figure 12G is a variation of that of Figure 12F.
- the part of the OL loading program is stored on a remote server 4, in the form of an "applet” in "JAVA” language.
- this "applet” can be loaded dynamically on the terminal 1, in OL ".
- This loading is carried out using requests made by the browser 10, during preliminary steps.
- the other steps are common to the previous case.
- the use of the Internet protocols "HTTP" and “TCP / IP” for the exchanges between the loading program parts OL and IL makes it possible to physically separate them. Only “IP” packet routing is required on the terminal.
- the loading can then be done in an ordinary smart card reader, since the ISO 7816 communication protocol is kept.
- the terminal can be a simple standard microcomputer connected to the Internet.
- the applications stored in the smart card remain standard, and therefore do not have to be rewritten.
- the smart card and the terminal themselves require only a few modifications in order to be able to accommodate the process of the invention: the latter boil down to the implementation, in these two units, of a communication protocol software layer which has been called a specific, software layer including intelligent agents.
- the part of the OL loading program can be loaded dynamically on the terminal, through the card, from the latter or from a remote "HTTP" server.
- a simple Internet browser can be used as an OL loader.
- HTML HyperText Markup Language
- XML XML
- the invention also relates to a method of loading a piece of software into a smart card from a terminal connected to said smart card through a smart card reader allowing communications according to a first determined protocol, the terminal and the smart card comprising information processing means and information storage means, said loading effected by the implementation and cooperation of first and second loading programs, said second loading program being stored in the information storage means of said smart card, characterized in that it comprises at least the following phases: a / a first preliminary phase consisting in implanting, in the information storage means of said smart card (2a), a first piece of software (23a), forming a specific communication protocol layer; b / a second preliminary phase consisting in implanting, in the information storage means of said terminal (1), a second piece of software (13), forming a specific communication protocol layer; in that 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 means of said information processing
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Business, Economics & Management (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- Software Systems (AREA)
- Accounting & Taxation (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Strategic Management (AREA)
- General Business, Economics & Management (AREA)
- General Engineering & Computer Science (AREA)
- Finance (AREA)
- Computer Hardware Design (AREA)
- Microelectronics & Electronic Packaging (AREA)
- Development Economics (AREA)
- Economics (AREA)
- Computer Security & Cryptography (AREA)
- Computer And Data Communications (AREA)
- Information Transfer Between Computers (AREA)
Abstract
Description
Claims
Priority Applications (6)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
EP01907759A EP1188116A1 (fr) | 2000-02-10 | 2001-02-09 | Procede de chargement d'une piece de logiciel dans une carte a puce, notamment du type dit "applet" |
CA002366556A CA2366556A1 (fr) | 2000-02-10 | 2001-02-09 | Procede de chargement d'une piece de logiciel dans une carte a puce, notamment du type dit "applet" |
KR1020017012941A KR100886137B1 (ko) | 2000-02-10 | 2001-02-09 | 스마트카드에 소프트웨어 콤포넌트, 특히 애플릿을로딩하는 방법 |
AU35647/01A AU3564701A (en) | 2000-02-10 | 2001-02-09 | Method for loading a software component in a smart card, in particular applet |
JP2001558826A JP3834239B2 (ja) | 2000-02-10 | 2001-02-09 | スマートカードの中にソフトウェア構成部分、特に「アプレット」と呼ばれる形式をロードする方法 |
US12/000,766 US20080163352A1 (en) | 2000-02-10 | 2007-12-17 | Method for loading a piece of software in a smart card, in particular applet |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
FR0001661A FR2805059A1 (fr) | 2000-02-10 | 2000-02-10 | Procede de chargement d'une piece de logiciel dans une carte a puce, notamment du type dit "applet" |
FR00/01661 | 2000-02-10 |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US12/000,766 Division US20080163352A1 (en) | 2000-02-10 | 2007-12-17 | Method for loading a piece of software in a smart card, in particular applet |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2001059563A1 true WO2001059563A1 (fr) | 2001-08-16 |
Family
ID=8846856
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/FR2001/000393 WO2001059563A1 (fr) | 2000-02-10 | 2001-02-09 | Procede de chargement d'une piece de logiciel dans une carte a puce, notamment du type dit 'applet' |
Country Status (10)
Country | Link |
---|---|
US (2) | US20020174071A1 (fr) |
EP (1) | EP1188116A1 (fr) |
JP (1) | JP3834239B2 (fr) |
KR (1) | KR100886137B1 (fr) |
CN (1) | CN1221893C (fr) |
AU (1) | AU3564701A (fr) |
CA (1) | CA2366556A1 (fr) |
FR (1) | FR2805059A1 (fr) |
TW (1) | TW501063B (fr) |
WO (1) | WO2001059563A1 (fr) |
Cited By (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2003049056A2 (fr) * | 2001-12-07 | 2003-06-12 | Ecebs Limited | Systeme de carte intelligente |
EP1367487A1 (fr) * | 2002-05-30 | 2003-12-03 | Schlumberger Systèmes | Correction à distance d'une application |
KR20050047704A (ko) * | 2003-11-18 | 2005-05-23 | 주식회사 비즈모델라인 | 아이피 기반 스마트 카드 시스템 및 운용 방법 |
FR2908209A1 (fr) * | 2006-11-07 | 2008-05-09 | Oberthur Card Syst Sa | Entite electronique portable et procede de personnalisation d'une telle entite electronique |
JP2009289272A (ja) * | 2002-02-28 | 2009-12-10 | Axalto Sa | 構造化ソフトウェアオブジェクトについての反復式シリアライゼーションプロシージャ |
EP2141591A1 (fr) * | 2008-07-04 | 2010-01-06 | Oberthur Technologies | Dispositif électronique portable comprenant une application portable et un module sécurisé pouvant comminique entre eux, et procédé de communication associé |
US7653602B2 (en) | 2003-11-06 | 2010-01-26 | Visa U.S.A. Inc. | Centralized electronic commerce card transactions |
US7725369B2 (en) | 2003-05-02 | 2010-05-25 | Visa U.S.A. Inc. | Method and server for management of electronic receipts |
US7857216B2 (en) | 2003-09-12 | 2010-12-28 | Visa U.S.A. Inc. | Method and system for providing interactive cardholder rewards image replacement |
US8005763B2 (en) | 2003-09-30 | 2011-08-23 | Visa U.S.A. Inc. | Method and system for providing a distributed adaptive rules based dynamic pricing system |
US8015060B2 (en) | 2002-09-13 | 2011-09-06 | Visa Usa, Inc. | Method and system for managing limited use coupon and coupon prioritization |
US8407083B2 (en) | 2003-09-30 | 2013-03-26 | Visa U.S.A., Inc. | Method and system for managing reward reversal after posting |
US8429048B2 (en) | 2009-12-28 | 2013-04-23 | Visa International Service Association | System and method for processing payment transaction receipts |
US8554610B1 (en) | 2003-08-29 | 2013-10-08 | Visa U.S.A. Inc. | Method and system for providing reward status |
US8626577B2 (en) | 2002-09-13 | 2014-01-07 | Visa U.S.A | Network centric loyalty system |
US8799350B2 (en) * | 2001-08-02 | 2014-08-05 | Gemalto Sa | Method and device for establishing network communication compatibility of terminals |
US9852437B2 (en) | 2002-09-13 | 2017-12-26 | Visa U.S.A. Inc. | Opt-in/opt-out in loyalty system |
US11132691B2 (en) | 2009-12-16 | 2021-09-28 | Visa International Service Association | Merchant alerts incorporating receipt data |
Families Citing this family (50)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
FR2791159B1 (fr) * | 1999-03-15 | 2001-05-04 | Bull Cp8 | Procede d'acces a un objet a l'aide d'un navigateur de type "web" cooperant avec une carte a puce et architecture pour la mise en oeuvre du procede |
FR2805108B1 (fr) * | 2000-02-10 | 2002-04-05 | Bull Cp8 | Procede d'enregistrement d'un usager sur un serveur d'annuaire d'un reseau de type internet et/ou de localisation d'un usager sur ce reseau, et carte a puce pour la mise en oeuvre du procede |
FR2805107B1 (fr) * | 2000-02-10 | 2002-04-05 | Bull Cp8 | Procede de gestion de transmissions de donnees multimedias via un reseau de type internet, notamment de donnees telephoniques, et carte a puce pour la mise en oeuvre du procede |
FR2805059A1 (fr) * | 2000-02-10 | 2001-08-17 | Bull Cp8 | Procede de chargement d'une piece de logiciel dans une carte a puce, notamment du type dit "applet" |
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 |
KR20030046621A (ko) * | 2001-12-16 | 2003-06-18 | 한국전자통신연구원 | 계층화 구조의 프로토콜 스택을 사용하는 스마트 카드와휴대 단말기의 통신 환경 설정 방법 |
US6986458B2 (en) * | 2002-12-11 | 2006-01-17 | Scheidt & Bachmann Gmbh | Methods and systems for user media interoperability |
DE10261916A1 (de) | 2002-12-20 | 2004-07-01 | Giesecke & Devrient Gmbh | Tragbarer Datenträger mit Netzserverfunktionalität |
US7281244B2 (en) * | 2003-01-16 | 2007-10-09 | Sun Microsystems, Inc. | Using a digital fingerprint to commit loaded data in a device |
US7484095B2 (en) * | 2003-01-16 | 2009-01-27 | Sun Microsystems, Inc. | System for communicating program data between a first device and a second device |
US20040143739A1 (en) * | 2003-01-16 | 2004-07-22 | Sun Mircosystems, Inc., A Delaware Corporation | Run time code integrity checks |
US8121955B2 (en) | 2003-01-16 | 2012-02-21 | Oracle America, Inc. | Signing program data payload sequence in program loading |
US7165246B2 (en) * | 2003-01-16 | 2007-01-16 | Sun Microsystems, Inc. | Optimized representation of data type information in program verification |
US7222331B2 (en) * | 2003-01-16 | 2007-05-22 | Sun Microsystems, Inc. | Linking of virtual methods |
US7272830B2 (en) * | 2003-01-16 | 2007-09-18 | Sun Microsystems, Inc. | Ordering program data for loading on a device |
US7178724B2 (en) * | 2003-04-21 | 2007-02-20 | Stmicroelectronics, Inc. | Smart card device and method used for transmitting and receiving secure e-mails |
US7380125B2 (en) * | 2003-05-22 | 2008-05-27 | International Business Machines Corporation | Smart card data transaction system and methods for providing high levels of storage and transmission security |
EP1761904A1 (fr) | 2004-05-28 | 2007-03-14 | International Business Machines Corporation | Systeme de transfert de donnees au moyen d'une carte intelligente et methodes pour assurer la securite du stockage et de la transmission |
FR2881855A1 (fr) * | 2005-02-09 | 2006-08-11 | Gemplus Sa | Administration d'application de service dans une carte a microcontroleur depuis un terminal |
CN101138158B (zh) * | 2005-02-11 | 2016-05-04 | 圣迪斯克以色列有限公司 | 通信协议模拟装置 |
EP1737178A1 (fr) * | 2005-06-24 | 2006-12-27 | Axalto SA | Méthode et système utilisant un objet portable permettant l'extension d'un serveur |
KR100723688B1 (ko) * | 2005-07-18 | 2007-05-30 | 에스케이 텔레콤주식회사 | HTTP(Hyper Text TransferProtocol)를 기반으로 한 스마트카드 명령어송수신 방법 |
EP1931283A2 (fr) * | 2005-10-03 | 2008-06-18 | SanDisk IL Ltd | Systeme informatique modulaire |
US8176249B2 (en) * | 2006-05-21 | 2012-05-08 | Amiram Grynberg | Methods for embedding session secrets, within application instances |
US20080005261A1 (en) * | 2006-05-24 | 2008-01-03 | Research In Motion Limited | Grouping Application Protocol Data Units for Wireless Communication |
US20080120712A1 (en) * | 2006-11-21 | 2008-05-22 | Telos Corporation | Method and system for remote security token extension |
US8045956B2 (en) | 2007-01-05 | 2011-10-25 | Macronix International Co., Ltd. | System and method of managing contactless payment transactions using a mobile communication device as a stored value device |
CN100452894C (zh) * | 2007-02-09 | 2009-01-14 | 凤凰微电子(中国)有限公司 | 在智能卡上实现无线增值业务的方法 |
KR100741847B1 (ko) * | 2007-04-04 | 2007-07-24 | 주식회사 스마트카드연구소 | Usim 카드에서의 애플릿 설치 및 관리 방법 |
WO2009074173A1 (fr) * | 2007-12-13 | 2009-06-18 | Nokia Corporation | Interaction entre des environnements sécurisés et non sécurisés |
EP2141667A1 (fr) * | 2008-06-25 | 2010-01-06 | Gemalto SA | Procédé de calcul d'identifiant pour services Web |
KR100947103B1 (ko) * | 2008-07-25 | 2010-03-10 | 주식회사 케이티 | 스마트 카드 웹 서버를 이용한 서블릿 제공 방법, 서블릿관리 방법 및 이를 위한 스마트 카드 |
KR100879910B1 (ko) * | 2008-09-09 | 2009-01-22 | 주식회사 스마트카드연구소 | Scws를 이용한 서블릿 서비스 제공 시스템 및 제공 방법 |
EP2461613A1 (fr) * | 2010-12-06 | 2012-06-06 | Gemalto SA | Procédés et système pour la manipulation de données d'une UICC |
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 |
US8898769B2 (en) | 2012-11-16 | 2014-11-25 | At&T Intellectual Property I, Lp | Methods for provisioning universal integrated circuit cards |
US8959331B2 (en) * | 2012-11-19 | 2015-02-17 | At&T Intellectual Property I, Lp | Systems for provisioning universal integrated circuit cards |
DE102012022875A1 (de) * | 2012-11-22 | 2014-05-22 | Giesecke & Devrient Gmbh | Verfahren und System zur Applikationsinstallation |
CN104348951B (zh) * | 2013-07-24 | 2016-10-19 | 北京握奇数据系统有限公司 | 一种卡片应用管理系统 |
US9036820B2 (en) | 2013-09-11 | 2015-05-19 | At&T Intellectual Property I, Lp | System and methods for UICC-based secure communication |
US9124573B2 (en) | 2013-10-04 | 2015-09-01 | At&T Intellectual Property I, Lp | Apparatus and method for managing use of secure tokens |
US9208300B2 (en) | 2013-10-23 | 2015-12-08 | At&T Intellectual Property I, Lp | Apparatus and method for secure authentication of a communication device |
US9240994B2 (en) | 2013-10-28 | 2016-01-19 | At&T Intellectual Property I, Lp | Apparatus and method for securely managing the accessibility to content and applications |
US9313660B2 (en) | 2013-11-01 | 2016-04-12 | At&T Intellectual Property I, Lp | Apparatus and method for secure provisioning of a communication device |
US9240989B2 (en) | 2013-11-01 | 2016-01-19 | At&T Intellectual Property I, Lp | Apparatus and method for secure over the air programming of a communication device |
US9713006B2 (en) | 2014-05-01 | 2017-07-18 | At&T Intellectual Property I, Lp | Apparatus and method for managing security domains for a universal integrated circuit card |
WO2016106277A2 (fr) | 2014-12-22 | 2016-06-30 | Capital One Services, LLC. | Système, procédé et appareil de reprogrammation d'une carte de transaction |
GB2542617B (en) * | 2015-09-28 | 2020-06-24 | Touchtech Payments Ltd | Transaction authentication platform |
EP3486830A1 (fr) * | 2017-11-21 | 2019-05-22 | Gemalto Sa | Procédé de gestion de profils dans un élément sécurisé comprenant plusieurs contenants logiciels |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO1998017029A1 (fr) * | 1996-10-17 | 1998-04-23 | Telia Ab | Transfert d'informations signees et cryptees |
WO1998057474A1 (fr) * | 1997-06-13 | 1998-12-17 | Gemplus S.C.A. | Carte a puce, telephone sans fil, systeme et procede d'acces et de communication par internet |
Family Cites Families (28)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5353331A (en) * | 1992-03-05 | 1994-10-04 | Bell Atlantic Network Services, Inc. | Personal communications service using wireline/wireless integration |
WO1996007256A1 (fr) * | 1994-08-30 | 1996-03-07 | Kokusai Denshin Denwa Co., Ltd. | Systeme de certification |
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 |
US6101543A (en) * | 1996-10-25 | 2000-08-08 | Digital Equipment Corporation | Pseudo network adapter for frame capture, encapsulation and encryption |
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 |
JP3760581B2 (ja) * | 1997-07-28 | 2006-03-29 | 富士通株式会社 | 通信相手情報検索装置及びそれを用いた通信支援システム |
US6105008A (en) * | 1997-10-16 | 2000-08-15 | Visa International Service Association | Internet loading system using smart card |
US6498797B1 (en) * | 1997-11-14 | 2002-12-24 | At&T Corp. | Method and apparatus for communication services on a 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 (fi) * | 1998-09-21 | 2002-09-30 | Nokia Corp | Menetelmä tiedonsiirtojärjestelmässä paikallisten resurssien hyödyntämiseksi, tiedonsiirtojärjestelmä ja langaton viestin |
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 |
FR2790629A1 (fr) * | 1999-02-19 | 2000-09-08 | Bull Cp8 | Procede d'activation d'applications localisees dans une carte a puce par un navigateur du type dit "web" |
FR2791159B1 (fr) * | 1999-03-15 | 2001-05-04 | Bull Cp8 | Procede d'acces a un objet a l'aide d'un navigateur de type "web" cooperant avec une carte a puce et architecture pour la mise en oeuvre du procede |
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 |
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 |
FR2805108B1 (fr) * | 2000-02-10 | 2002-04-05 | Bull Cp8 | Procede d'enregistrement d'un usager sur un serveur d'annuaire d'un reseau de type internet et/ou de localisation d'un usager sur ce reseau, et carte a puce pour la mise en oeuvre du procede |
FR2805059A1 (fr) * | 2000-02-10 | 2001-08-17 | Bull Cp8 | Procede de chargement d'une piece de logiciel dans une carte a puce, notamment du type dit "applet" |
FR2805107B1 (fr) * | 2000-02-10 | 2002-04-05 | Bull Cp8 | Procede de gestion de transmissions de donnees multimedias via un reseau de type internet, notamment de donnees telephoniques, et carte a puce pour la mise en oeuvre du procede |
US7003663B2 (en) * | 2000-12-22 | 2006-02-21 | Gemplus | Distribution of deployment information for remote applications |
-
2000
- 2000-02-10 FR FR0001661A patent/FR2805059A1/fr active Pending
-
2001
- 2001-02-09 US US09/958,726 patent/US20020174071A1/en not_active Abandoned
- 2001-02-09 EP EP01907759A patent/EP1188116A1/fr not_active Withdrawn
- 2001-02-09 WO PCT/FR2001/000393 patent/WO2001059563A1/fr active Application Filing
- 2001-02-09 TW TW090103064A patent/TW501063B/zh active
- 2001-02-09 AU AU35647/01A patent/AU3564701A/en not_active Abandoned
- 2001-02-09 CA CA002366556A patent/CA2366556A1/fr not_active Abandoned
- 2001-02-09 KR KR1020017012941A patent/KR100886137B1/ko not_active IP Right Cessation
- 2001-02-09 CN CNB018001912A patent/CN1221893C/zh not_active Expired - Fee Related
- 2001-02-09 JP JP2001558826A patent/JP3834239B2/ja not_active Expired - Fee Related
-
2007
- 2007-12-17 US US12/000,766 patent/US20080163352A1/en not_active Abandoned
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO1998017029A1 (fr) * | 1996-10-17 | 1998-04-23 | Telia Ab | Transfert d'informations signees et cryptees |
WO1998057474A1 (fr) * | 1997-06-13 | 1998-12-17 | Gemplus S.C.A. | Carte a puce, telephone sans fil, systeme et procede d'acces et de communication par internet |
Non-Patent Citations (1)
Title |
---|
See also references of EP1188116A1 * |
Cited By (38)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8799350B2 (en) * | 2001-08-02 | 2014-08-05 | Gemalto Sa | Method and device for establishing network communication compatibility of terminals |
AU2002350918B2 (en) * | 2001-12-07 | 2009-09-10 | Ecebs Limited | Smartcard system |
WO2003049056A3 (fr) * | 2001-12-07 | 2003-12-18 | Ecebs Ltd | Systeme de carte intelligente |
GB2398905A (en) * | 2001-12-07 | 2004-09-01 | Ecebs Ltd | Smartcard system |
WO2003049056A2 (fr) * | 2001-12-07 | 2003-06-12 | Ecebs Limited | Systeme de carte intelligente |
GB2398905B (en) * | 2001-12-07 | 2005-11-09 | Ecebs Ltd | Smartcard system |
JP2009289272A (ja) * | 2002-02-28 | 2009-12-10 | Axalto Sa | 構造化ソフトウェアオブジェクトについての反復式シリアライゼーションプロシージャ |
WO2003103155A2 (fr) * | 2002-05-03 | 2003-12-11 | Schlumberger Systemes | Correction d'application a distance |
EP1367487A1 (fr) * | 2002-05-30 | 2003-12-03 | Schlumberger Systèmes | Correction à distance d'une application |
WO2003103155A3 (fr) * | 2002-05-30 | 2005-05-26 | Axalto Sa | Correction d'application a distance |
US10460338B2 (en) | 2002-09-13 | 2019-10-29 | Visa U.S.A. Inc. | Network centric loyalty system |
US9852437B2 (en) | 2002-09-13 | 2017-12-26 | Visa U.S.A. Inc. | Opt-in/opt-out in loyalty system |
US8626577B2 (en) | 2002-09-13 | 2014-01-07 | Visa U.S.A | Network centric loyalty system |
US8239261B2 (en) | 2002-09-13 | 2012-08-07 | Liane Redford | Method and system for managing limited use coupon and coupon prioritization |
US8015060B2 (en) | 2002-09-13 | 2011-09-06 | Visa Usa, Inc. | Method and system for managing limited use coupon and coupon prioritization |
US9087426B2 (en) | 2003-05-02 | 2015-07-21 | Visa U.S.A. Inc. | Method and administration system for management of electronic receipts |
US7725369B2 (en) | 2003-05-02 | 2010-05-25 | Visa U.S.A. Inc. | Method and server for management of electronic receipts |
US7827077B2 (en) | 2003-05-02 | 2010-11-02 | Visa U.S.A. Inc. | Method and apparatus for management of electronic receipts on portable devices |
US7987120B2 (en) | 2003-05-02 | 2011-07-26 | Visa U.S.A. Inc. | Method and portable device for management of electronic receipts |
US8386343B2 (en) | 2003-05-02 | 2013-02-26 | Visa U.S.A. Inc. | Method and user device for management of electronic receipts |
US8793156B2 (en) | 2003-08-29 | 2014-07-29 | Visa U.S.A. Inc. | Method and system for providing reward status |
US8554610B1 (en) | 2003-08-29 | 2013-10-08 | Visa U.S.A. Inc. | Method and system for providing reward status |
US7857215B2 (en) | 2003-09-12 | 2010-12-28 | Visa U.S.A. Inc. | Method and system including phone with rewards image |
US7857216B2 (en) | 2003-09-12 | 2010-12-28 | Visa U.S.A. Inc. | Method and system for providing interactive cardholder rewards image replacement |
US8005763B2 (en) | 2003-09-30 | 2011-08-23 | Visa U.S.A. Inc. | Method and system for providing a distributed adaptive rules based dynamic pricing system |
US8407083B2 (en) | 2003-09-30 | 2013-03-26 | Visa U.S.A., Inc. | Method and system for managing reward reversal after posting |
US8244648B2 (en) | 2003-09-30 | 2012-08-14 | Visa U.S.A. Inc. | Method and system for providing a distributed adaptive rules based dynamic pricing system |
US9141967B2 (en) | 2003-09-30 | 2015-09-22 | Visa U.S.A. Inc. | Method and system for managing reward reversal after posting |
US7653602B2 (en) | 2003-11-06 | 2010-01-26 | Visa U.S.A. Inc. | Centralized electronic commerce card transactions |
US9710811B2 (en) | 2003-11-06 | 2017-07-18 | Visa U.S.A. Inc. | Centralized electronic commerce card transactions |
KR20050047704A (ko) * | 2003-11-18 | 2005-05-23 | 주식회사 비즈모델라인 | 아이피 기반 스마트 카드 시스템 및 운용 방법 |
WO2008065264A1 (fr) | 2006-11-07 | 2008-06-05 | Oberthur Technologies | Entite electronique portable et procede de personnalisation d'une telle entite electronique |
FR2908209A1 (fr) * | 2006-11-07 | 2008-05-09 | Oberthur Card Syst Sa | Entite electronique portable et procede de personnalisation d'une telle entite electronique |
EP2141591A1 (fr) * | 2008-07-04 | 2010-01-06 | Oberthur Technologies | Dispositif électronique portable comprenant une application portable et un module sécurisé pouvant comminique entre eux, et procédé de communication associé |
FR2933510A1 (fr) * | 2008-07-04 | 2010-01-08 | Oberthur Technologies | Dispositif electronique portable comprenant une application portable et un module securise pouvant communiquer entre eux, et procede de communication associe |
US11132691B2 (en) | 2009-12-16 | 2021-09-28 | Visa International Service Association | Merchant alerts incorporating receipt data |
US8429048B2 (en) | 2009-12-28 | 2013-04-23 | Visa International Service Association | System and method for processing payment transaction receipts |
US8650124B2 (en) | 2009-12-28 | 2014-02-11 | Visa International Service Association | System and method for processing payment transaction receipts |
Also Published As
Publication number | Publication date |
---|---|
JP3834239B2 (ja) | 2006-10-18 |
FR2805059A1 (fr) | 2001-08-17 |
US20020174071A1 (en) | 2002-11-21 |
EP1188116A1 (fr) | 2002-03-20 |
KR20010110736A (ko) | 2001-12-13 |
CA2366556A1 (fr) | 2001-08-16 |
US20080163352A1 (en) | 2008-07-03 |
AU3564701A (en) | 2001-08-20 |
KR100886137B1 (ko) | 2009-02-27 |
CN1221893C (zh) | 2005-10-05 |
TW501063B (en) | 2002-09-01 |
CN1363064A (zh) | 2002-08-07 |
JP2003523012A (ja) | 2003-07-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP1188116A1 (fr) | Procede de chargement d'une piece de logiciel dans une carte a puce, notamment du type dit "applet" | |
WO2001060026A1 (fr) | Procede d'enregistrement d'un usager sur un serveur d'annuaire d'un reseau de type internet et/ou de localisation d'un usager sur ce reseau, et carte a puce pour la mise en oeuvre du procede | |
EP1169837B1 (fr) | Procede de gestion de transmissions de donnees multimedias via internet et carte a puce pour la mise en oeuvre du procede | |
EP1142256B1 (fr) | Terminal securise muni d'un lecteur de carte a puce destine a communiquer avec un serveur via un reseau de type internet | |
WO2000056030A1 (fr) | Systeme d'acces a un objet a l'aide d'un navigateur de type 'web' cooperant avec une carte a puce | |
EP1044436B1 (fr) | Procede de communication entre une station d'utilisateur et un reseau, notamment du type internet, et architecture de mise en oeuvre | |
EP1208684B1 (fr) | Procede de transmission de flux de donnees a haut debit sur un reseau de type internet entre un serveur et un terminal a carte a puce | |
WO2000049584A1 (fr) | Systeme embarque possedant des moyens d'interface de reseau, et procede d'activation d'applications localisees dans ce systeme embarque | |
EP1145522B1 (fr) | Procede et architecture de pilotage a distance d'une station d'utilisateur via un reseau de type internet | |
WO2002082263A1 (fr) | System terminal interactif a equipement central multi-applicatif et peripheriques |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
WWE | Wipo information: entry into national phase |
Ref document number: 01800191.2 Country of ref document: CN |
|
AK | Designated states |
Kind code of ref document: A1 Designated state(s): AU CA CN JP KR SG US |
|
AL | Designated countries for regional patents |
Kind code of ref document: A1 Designated state(s): AT BE CH CY DE DK ES FI FR GB GR IE IT LU MC NL PT SE TR |
|
WWE | Wipo information: entry into national phase |
Ref document number: 2001907759 Country of ref document: EP |
|
121 | Ep: the epo has been informed by wipo that ep was designated in this application | ||
ENP | Entry into the national phase |
Ref document number: 2366556 Country of ref document: CA Ref document number: 2366556 Country of ref document: CA Kind code of ref document: A Ref document number: 2001 558826 Country of ref document: JP Kind code of ref document: A |
|
WWE | Wipo information: entry into national phase |
Ref document number: 09958726 Country of ref document: US Ref document number: 1020017012941 Country of ref document: KR |
|
WWE | Wipo information: entry into national phase |
Ref document number: 35647/01 Country of ref document: AU |
|
WWP | Wipo information: published in national office |
Ref document number: 2001907759 Country of ref document: EP |