Search Images Maps Play YouTube News Gmail Drive More »
Sign in
Screen reader users: click this link for accessible mode. Accessible mode has the same essential features but works better with your reader.

Patents

  1. Advanced Patent Search
Publication numberWO1998037526 A1
Publication typeApplication
Application numberPCT/GB1998/000531
Publication date27 Aug 1998
Filing date19 Feb 1998
Priority date21 Feb 1997
Also published asCA2281576A1, CA2281576C, DE69823649D1, DE69823649T2, EP0963580A1, EP0963580B1, US6575372, US6659354, US20020050528
Publication numberPCT/1998/531, PCT/GB/1998/000531, PCT/GB/1998/00531, PCT/GB/98/000531, PCT/GB/98/00531, PCT/GB1998/000531, PCT/GB1998/00531, PCT/GB1998000531, PCT/GB199800531, PCT/GB98/000531, PCT/GB98/00531, PCT/GB98000531, PCT/GB9800531, WO 1998/037526 A1, WO 1998037526 A1, WO 1998037526A1, WO 9837526 A1, WO 9837526A1, WO-A1-1998037526, WO-A1-9837526, WO1998/037526A1, WO1998037526 A1, WO1998037526A1, WO9837526 A1, WO9837526A1
InventorsDavid Barrington Everett, Stuart James Miller, Anthony David Peacham, Ian Stephens Simmons, Timothy Philip Richards, John Charles Viner
ApplicantMondex International Limited
Export CitationBiBTeX, EndNote, RefMan
External Links: Patentscope, Espacenet
Multi-application ic card system
WO 1998037526 A1
Abstract
A multi-application IC card system is disclosed having selective application loading and deleting capability. Prior to loading an application onto an IC card a test is conducted to determine if the card is qualified to receive the application using personalization data stored on the card and comparing it with permissions data associated with the application indicating one or more sets of cards upon which the application may be loaded. If the personalization data of the card falls within the allowable set of permissions for that application then the card may be loaded with the application. Preferably, the personalization data includes data representative of the card number, issuer, a product class and the date on which the card is personalized.
Claims  (OCR text may contain errors)
CLAIMS :
1. An IC card system comprising at least one IC card, an application
to be loaded onto said card and means for determining whether said card is qualified to
accept the loading of said application onto said card.
2. The IC card system of claim 1, wherein said IC card contains card
personalization data, and said application is assigned application permissions data
representing at least one set of IC cards upon which said application may be loaded.
3. The IC card system of claim 2, wherein said determining means
compares said card personalization data with said application permissions data.
4. The IC card system of claim 3, wherein whether said application is
loaded onto said IC card depends on the result of said comparison, such that in the event
the card personalization data matches said permissions data set the card is qualified and
the application is loaded.
5. The IC card system of any of claims 2 to claim 4, wherein said personalization data comprises data representative of a unique card identification designation.
6. The IC card system of any of claims 2 to claim 5. wherein said personalization data comprises data representative of a card issuer.
7. The IC card system of any of claims 2 to claim 6, wherein said personalization data comprises data representative of a product class.
8. The IC card system of any of claims 2 to claim 7, wherein said personalization data comprises data representative of a date.
9. An IC card system comprising at least one IC card and an
application, wherein said IC card contains personalization data representative of that card
and said application is assigned a permissions data set representing at least one IC card
upon which said application may be loaded, said system further comprising means for determining whether said personalization data falls within said permissions data set.
10. The IC card system of claim 9 wherein said application is loaded
onto said IC card in the event said determining means determines that said
personalization data falls within said set.
11. The IC card system of claim 9 or claim 10 wherein said personalization
data comprises data representing a card identification designation, and an issuer of said card.
12. The IC card system of any of claims 9 to claim 11 wherein said personalization data comprises data representing a product class and a date.
13. The IC card system of any of claims 9 to 12 wherein said permissions data set includes a plurality of card identification designations.
14. The IC card system of any of claims 9 to 13 wherein said permissions data set includes one or more issuers of IC cards.
1 15. The IC card system of any of claims 9 to 14 wherein said permissions data set includes one or more product classes.
1 16. The IC card system of any of claims 9 to 15 wherein said permissions
data set includes a plurality range of dates.
j
17. The IC card system of any of claims 9 to 16 wherein said permissions
2 data set includes all IC cards which attempt to load the application.
1 18. An IC card system comprising at least one IC card, an application
2 to be loaded onto said card and means for enabling said card to be loaded with said
3 application.
19. The IC card system of claim 18 wherein said enabling means
comprises means for storing personalization data onto said card.
20. The IC card system of claim 18 wherein said enabling means
comprises means for setting an enablement bit.
21. The IC card system of claim 19 wherein said enabling means
comprises means for setting an enablement bit.
22. The IC card system of claim 20 further comprising means for
checking the enablement bit prior to enabling said IC card to determine whether or not
said card has already been enabled.
23. The IC card system of claim 21 further comprising means for
checking the enablement bit prior to enabling said IC card to determine whether or not
said card has already been enabled.
24. A process for loading an application onto an IC card comprising
the step of determining whether said IC card is qualified to accept the loading of said application onto said card.
25. The process of claim 24 wherein said determining step includes the
steps of: providing said card with personalization data;
assigning to said application permissions data representing at least
one set of IC cards upon which said application may be loaded; comparing said personalization data with said permissions data;
and loading said application onto said IC card provided said
personalization data falls within said set of cards upon which said application may be
loaded.
26. The process of claim 25, wherein said personalization data
comprises data representative of a card identification designation.
27. The process of claim 25 or claim 26, wherein said personalization data comprises data representative of a card issuer.
28. The process of any of claims 25 to claim 27, wherein said personalization data comprises data representative of a product class.
29. The process of any of claims 25 to claim 28, wherein said personalization data comprises data representative of a date.
30. The process of any of claims 25 to claim 29 further comprising the first step of enabling said card to be loaded with said application.
31. The process of claim 30 wherein said enabling step includes the
step of storing personalization data onto said card.
32. The process of claim 30 wherein said enabling step includes the
step of setting an enablement bit indicating that the card has been enabled.
33. The process of claim 31 wherein said enabling step further includes
the step of setting an enablement bit indicating that the card has been enabled.
34. The process of claim 32 wherein prior to said enabling step a
checking step is performed to determine whether said card has been enabled.
35. The process of claim 33 wherein prior to said enabling step a
checking step is performed to determine whether said card has been enabled.
36. A process for deleting an application from an IC card comprising the step of determining whether said IC card is qualified to delete said application based upon permissions data associated with said application.
37. The process of claim 36 wherein said determimng step includes the
steps of: providing said card with personalization data;
assigning to said application permissions data representing at least
one set of IC cards from which said application may be deleted; comparing said personalization data with said permissions data;
and
deleting said application from said IC card provided said
personalization data falls within said set of cards from which said application may be
deleted.
38. The process of claim 37, wherein said personalization data
comprises data representative of a card identification designation.
39. The process of claim 37 or claim 38, wherein said personalization data comprises data representative of a card issuer.
40. The process of any of claims 37 to claim 39, wherein said personalization data comprises data representative of a product class.
41. The process of any of claims 37 to claim 40, wherein said personalization data further comprises data representative of a date.
42. An IC card system comprising at least one IC card, an application
to be deleted from said card and means for determining whether said card is qualified to
delete said application from said card.
43. The IC card system of claim 42, wherein said IC card contains card
personalization data, and said application is assigned application permissions data set
representing at least one set of IC cards from which said application may be deleted.
44. The IC card system of claim 43, wherein said determining means compares said card personalization data with said application permissions data.
45. The IC card system of claim 44, wherein whether said application
is deleted from said IC card depends on the result of said comparison, such that in the event the card personalization data matches said permissions data set the card is qualified and the application is deleted.
Description  (OCR text may contain errors)

MULTI-APPLICATION IC CARD SYSTEM

Integrated circuit ("IC") cards are becoming increasingly used for many

different purposes in the world today. An IC card (also called a smart card) typically is

the size of a conventional credit card which contains a computer chip including a

microprocessor, read-only-memory (ROM), electrically erasable programmable read¬

only-memory (EEPROM), an Input/Output (I/O) mechanism and other circuitry to support the microprocessor in its operations. An IC card may contain a single application

or may contain multiple independent applications in its memory. MULTOS™ is a

multiple application operating system which runs on IC cards, among other platforms,

and allows multiple applications to be executed on the card itself. This allows a card user

to run many programs stored in the card (for example, credit debit, electronic money/purse and/or loyalty applications) irrespective of the type of terminal (i.e., ATM,

telephone and/or POS) in which the card is inserted for use.

A conventional single application IC card, such as a telephone card or an

electronic cash card, is loaded with a single application at its personalization stage. That

application, however, cannot be modified or changed after the card is issued even if the modification is desired by the card user or card issuer. Moreover, if a card user wanted a variety of application functions to be performed by IC cards issued to him or her, such as both an electronic purse and a credit/debit function, the card user would be required to

carry multiple physical cards on his or her person, which would be quite cumbersome and inconvenient. If an application developer or card user desired two different applications

to interact or exchange data with each other, such as a purse application interacting with a

frequent flyer loyalty application, the card user would be forced to swap multiple cards in

and out of the card-receiving terminal, making the transaction difficult, lengthy and inconvenient.

The Applicant has recognised therefore, that it is beneficial to store multiple applications on the same IC card. For example, a card user may have both a purse application and a credit/debit application on the same card so that the user could select which type of payment (by electronic cash or credit card) to use to make a purchase.

Multiple applications could be provided to an IC card if sufficient memory exists and an operating system capable of supporting multiple applications is present on the card.

Although multiple applications could be pre-selected and placed in the memory of the card during is production stage, it would also be beneficial to have the ability to load and delete applications for card post-production as needed.

The increased flexibility and power of storing multiple applications on a

single card create new challenges to be overcome concerning the integrity and security of

the information (including application code and associated data) exchanged between the

individual card and the application provider as well as within the entire system when loading and deleting applications. The Applicant has further recognised that it would be beneficial to have the capability of the IC card system to exchange data among cards, card issuers, system operators and application providers securely and to load and delete applications securely at any time from either a

terminal or remotely over a telephone line, internet or intranet connection or other data

conduit. Because these data transmission lines are not typically secure lines, a number of

security and entity-authentication techniques must be implemented to make sure that

applications being sent over the transmission lines are only loaded on the intended cards.

As mentioned, it is important ~ particularly where there is a continuing

wide availability of new applications to the cardholder — that the system has the

capability of adding applications onto the IC card subsequent to issuance. This is highly advantageous since it protects the longevity of the IC cards; otherwise, once an application becomes outdated, the card would be useless. In this regard, to protect against the improper or undesired loading of applications onto IC cards, the

Applicant has further recognised that it would be beneficial for the IC card system to have the capability of controlling the loading process and restricting, when

necessary or desirable, the use of certain applications to a limited group or number of

cards such that the applications are "selectively available" to the IC-cards in the system.

This "selective capability" would allow the loading and deleting of applications at, for example, a desired point in time in the card's life cycle. It would also allow the loading

of an application only to those cards chosen to receive the selected application.

Accordingly, it is an advantage of a preferred embodiment of the invention that it provides these important features and specifically a secure IC-card system that allows for selective availability of smart card applications which may be loaded onto IC cards. These and other advantages are achieved by an embodiment of the present invention which proves an IC card system comprising at least one IC card and an application to be loaded onto the card wherein the IC card contains card personalization date and the application is assigned application permissions data designating which IC card or group

of IC cards upon which the application may be loaded. The system checks to determine

whether the card's personalization data falls within the permissible set indicated by the

application's permissions data. If it does, the application may be loaded onto the card.

In a preferred embodiment, the card personalization data is transferred

onto the card by the personalization bureau after the card is manufactured. The data

preferably includes data representing the card number, the issuer, product class (i.e., such as gold or platinum cards), and the date on which the card was personalized. The card

further preferably contains enablement data indicating whether or not the card has been

enabled with personalized data.

In a further preferred embodiment, the IC card secure system checks the enablement data prior to loading an application to determine whether or not the card has been enabled. Preferably, if the card has been enabled, the system checks if the card

number, the issuer, the product class and/or the date on which the card was personalized

are within the acceptable set indicated by the application's permissions data. If so, the application may be loaded onto the IC card. In yet another preferred embodiment, the application's permissions data

may contain data representative of a blanket permission such that all cards would pass for application loading.

Further aspects, features and advantages of embodiments of the invention will become apparent from the following detailed description taken in conjunction with the accompanying figures showing illustrative embodiments of the invention, in which

Fig. 1 is block diagram illustrating the three stages in the life of a multi-

application IC card in a secure system;

Fig. 2 is a block diagram illustrating the steps of the card manufacture

process;

Fig. 3 is a flow diagram illustrating the steps involved in enabling each of the IC cards in the secure system;

Fig. 4 is a block diagram of an IC card chip which can be used in accordance with an embodiment of the invention;

Fig. 5 is a block diagram illustrating the data stored on the IC card as indicated in block 307 of Fig. 3;

Fig. 5 A is a schematic of the data structures residing in an IC card and representing personalization data; Fig. 6 is a flowchart illustrating the steps of loading an application onto an

IC card in the secure system;

Fig. 7 is a flow chart illustrating the checking steps as indicated in block

601 of Fig. 6;

Fig. 8 is a flowchart illustrating the steps undertaken in determining if

loading of an application may proceed;

Fig. 9 is a block diagram showing the components of the system architecture for the enablement process of an IC card in a secure multi-application IC

card system; and Fig. 10 is a system diagram of entities involved with the use of the IC card

once it has been personalized.

Throughout the figures, the same reference numerals and characters,

unless otherwise stated, are used to denote like features, elements, components or

portions of the illustrated embodiments. Moreover, while the subject invention will now

be described in detail with reference to the figures, it is done so in connection with the

illustrative embodiments. It is intended that changes and modifications can be made to

the described embodiments without departing from the true scope and spirit of the subject

invention as defined by the appended claims. An embodiment of the present invention provides an IC card system and process which allow the flexibility to load and delete selected applications over the lifetime of a multi-application IC card in response to the needs or desires of the card user, card issuers and/or application developers. A card user who has such a card can selectively load and delete applications as desired if allowed by the card issuer in

conjunction with the system operator or Certification Authority ("CA") which controls the loading and deleting process by certifying the transfer of information relating to the process.

By allowing applications to be selectively loaded and deleted from the

card, a card issuer can extend additional functionality to an individual IC card without

having to issue new cards. Moreover, application developers can replace old applications

with new enhanced versions, and applications residing on the same card using a common multiple application operating system may interact and exchange data in a safe and secure

manner. For example, a frequent flyer loyalty program may automatically credit one frequent flyer mile to a card user's internal account for every dollar spent with an electronic purse such as the

Mondex purse or with a credit/debit application. By allowing the ability to selectively

load and delete applications, the card user, subject to the requirements of the card issuer,

also has the option of changing loyalty programs as desired.

A card issuer or application developer may intend that a particular

application be loaded on only one card for a particular card user in a card system. A

regional bank may desire to have a proprietary application reside only on the cards which the bank issues. Embodiments in accordance with the present invention would allow for this selective loading and specifically allow for the prevention of loading proprietary applications onto unauthorized cards issued by others.

To achieve these desired objectives, embodiments of the present invention give each card a specific indentity by storing "card personalization data" on the card. Morover, each application to be loaded or deleted on one or more cards in the system is assigned "application permissions data" which specify the cards upon which the applications may be loaded.

The type of personalized data can vary depending upon the needs and

requirements of the card system. In the preferred embodiment, described in greater detail

below, the personalization data include unique card identification designation data, the

card issuer, the product class or type (which is defined by the card issuer) and the date of personalization. However, not all of these data elements are required to be used and

additional elements could also be included.

The application permissions data associated with an application, also

described in greater detail below, can be a single value in an identity field or could

include multiple values in the identity field. For example, the application permissions data in the card issuer field could represent both product class A and product class B from

a certain Bank X, indicating that the application could be loaded onto cards designated as product classes A and B issued by Bank X (as indicated in the card product ID field of the card's personalization data). In addition, a "global value" could be stored in the issuer field (or other

field) of the application permissions data indicating that all IC cards in the system

regardless of who issued the card would match this permissions field. In this case, for example, a data value of zero stored in the application permissions card-issuer field will

match all of the cards' personalization card-issuer fields.

Figure 1 shows the three steps involved in providing an operational multi-

application IC card in a secure system. The first step is the card manufacturing step 101.

The second step is the personalization step 103 where card personalization data (also

called entity authentication data) is loaded onto the card. The third step is the application loading step 105 which checks to see if a card is qualified to receive an application, i.e.,

when the personalization data is checked against the application permissions data

associated with the application to be loaded. Each of these three steps is described in

detail below.

Card Manufacture Figure 2 shows the steps necessary in manufacturing an IC card in a secure

system. Step 201 manufactures the physical IC card by creating the integrated circuit on

silicon and placing it on the card. The integrated circuit chip will include RAM, ROM

and EEPROM memories. When the card is first manufactured, a global public key of the

system operator (in this case called the Certification Authority (CA)) is stored on each card in ROM in step 203. This will allow the card to authenticate that the source of any

message to it is from the CA since the public key on the card will be matched to the CA's secret key. More specifically, this public key stored on the card will allow the

individual card to verify data signed with the CA's private key. The public key of the

CA, which is stored on the card, is used only for determining if the data sent to the card

was signed with the proper CA private key. This allows the card to verify the source of

any message coming from the CA.

Step 205 inserts a card enablement key in a secure portion of EEPROM in

the card to facilitate card specific confidentiality during enablement, and step 207 inserts

a card identifier in EEPROM of the card. The identifier, which can be accessed by any

terminal, will allow the system to determine the identity of the card in later processes. The identifier is freely available and will not be used to authenticate messages.

Step 209 stores the operating system code in ROM on the card including

any primitives which are called or supported by the operating system. The primitives are

written in native language code (e.g., assembly language) and are stored in ROM. The

primitives are subroutines which may be called by the operating system or by

applications residing on the card such as mathematic functions (multiply or divide), data retrieval, data manipulation or cryptographic algorithms. The primitives can be executed

very quickly because they are written in the native language of the processor.

After the IC cards are manufactured, they are sent to a personalization bureau

("PB") to enable and personalize the card by storing card personalization data in the memory of the card. The terms enablement and personalization are used interchangeably

herein to indicate the preparatory steps taken to allow the card to be loaded securely with an application. The individual cards are preferably manufactured in batches and are sent

to a personalization bureau in a group for processing.

Card Enablement/Personalization

Figure 3 shows the steps of the card enablement process when the card

arrives at a personalization bureau. The personalization bureau may be the card issuer

(e.g., a bank or other financial institution) or may be a third party that performs the

service for the card issuer. The personalization bureau configures the card to a specific

user or user class.

Figure 3 specifically shows the steps taken to enable and personalize each IC card which will work within the system. The cards can be placed in a terminal which

communicates with IC cards and which reads the card identifier data (previously placed

on the card during the manufacturing process — see step 207). This card identification

data is read from the card in step 301. The terminal will effectively send a "get

identification data" command to the card and the card will return the identification data to the terminal.

The PB typically processes a group of cards at the same time, and will first

compile a list of IC card identification data for the group of cards it is personalizing. The

PB then sends electronically (or otherwise) this list of identification data to the

Certification Authority ("CA") which creates a personalization (or enablement) data block for each card identifier. The data block includes the card personalization data organized in a number of identity fields and an individual key set for the card, discussed

below. These data blocks are then encrypted and sent to the PB in step 302. By using the card identification data, the PB then matches the cards with the encrypted data blocks and

separately loads each data block onto the matched card. To insure that the CA controls

the identity of the card and the integrity of the system, the PB never obtains knowledge of

the content of the data blocks transferred. Some aspects of the personalization are

requested by the card issuer to the CA in order to affect their preferred management of

the cards they issue. The following additional steps are performed.

Step 303 first checks to see if an enablement bit stored in EEPROM of the

card has been already set. If it already has been set, the card has already been configured

and personalized and the enablement process will end as shown in step 304. A card

cannot be enabled and personalized twice. If the bit has not been set, then the process

continues with step 305.

In step 305, the individualized card key set for the card being enabled

(which key set is generated at the CA) is stored on the card. The keys can be used later in

off-card verification (i.e., to verify that the card is an authentic card). This verification is necessary to further authenticate the card as the one for which the application was

intended.

Step 307 generates four different MULTOS Security Manager (MSM)

characteristic data elements (otherwise referred to herein as personalization data) for the

card at the CA which are used for securely and correctly loading and deleting applications from a particular card. The MSM characteristics also allow for the loading of

applications on specific classes of identified cards. (These MSM characteristics are further described in connection with Figure 5.) Other data can also be stored on the card at this time as needed by the

system design such as an address table or further subroutines.

Step 311 sets the enablement bit in EEPROM of the card which indicates

that the enablement process has been completed for the particular card. When this bit is

set, another enablement process cannot occur on the card. This ensures that only one personalization and enablement process will occur to the card thus preventing illegal

tampering of the card or altering the card by mistake. In the preferred embodiment, the

enablement bit is initially not set when the card is manufactured and is set at the end of

the enablement process. Figure 4 shows an example of a block diagram of an IC card chip which

has been manufactured and personalized. The IC card chip is located on an IC card for

use. The IC card preferably includes a central processing unit 401, a RAM 403, a

EEPROM 405, a ROM 407, a timer 409, control logic 411, an I/O ports 413 and security

circuitry 415, which are connected together by a conventional data bus. Control logic 411 in memory cards provides sufficient sequencing and

switching to handle read- write access to the card's memory through the input/output

ports. CPU 401 with its control logic can perform calculations, access memory locations,

modify memory contents, and manage input/output ports. Some cards have a coprocessor

for handling complex computations like cryptographic algorithms. Input/output ports 413 are used under the control of a CPU and control logic alone, for communications

between the card and a card acceptance device. Timer 409 (which generates or provides a clock pulse) drives the control logic 411 and CPU 401 through the sequence of steps that accomplish memory access, memory reading or writing, processing, and data communication. A timer may be used to provide application features such as call

duration. Security circuitry 415 includes fusible links that connect the input/output lines

to internal circuitry as required for testing during manufacture, but which are destroyed

("blown") upon completion of testing to prevent later access. The personalization data to

qualify the card is stored in a secured location of EEPROM 405. The comparing of the

personalization data to applications permissions data is performed by the CPU 401.

Figure 5 shows the steps of generating and loading the four elements of

the card personalization data into the memory of the IC cards, and Fig. 5 A shows a

schematic of bit maps for each identity field residing in the memory of an IC card containing personalization data in accordance with the present invention. Each data

structure for each identity field has its own descriptor code. Step 501 loads the data

structure for the identity field "card ID" called "msm_mcd__permissions_mcd_no." This

nomenclature stands for MULTOS system manager _ MULTOS card device _ permissions_ MULTOS card device number. Although this number is typically 8 bytes

long as shown in Fig. 5A, the data could be any length that indicates a unique number for

the card. In the preferred embodiment, 2 bytes are dedicated as a signal indicator, 2 bytes

comprise a MULTOS Injection Security Module ID (MISM ID) indicating which security

module injected the card with its injected keys when it was manufactured, and 4 bytes

comprise an Integrated Circuit Card (ICC) serial number which identifies the individual card produced at the particular MISM. Step 503 loads the data structure for the identity field "issuer ED" called

"msm_mcd_permissions_ mcd_issuer_id." This nomenclature stands for a MULTOS card device issuer identification number. Each card issuer (such as a particular bank,

financial institution or other company involved with an application) will be assigned a

unique number in the card system. Each IC card in the MULTOS system will contain

information regarding the card issuer which personalized the card or is responsible for the card. A card issuer will order a certain number of cards from a manufacturer and perform

or have performed the personalization process as described herein. For example, a

regional bank may order 5,000 cards to be distributed to its customers. The

"mcd_issuer_id" data structure on these cards will indicate which issuer issued the cards.

In the preferred embodiment, the data structure is 4 bytes long (as shown in Fig. 5 A at

503 A) to allow for many different issuers in the system although the length of the data

structure can vary with the needs of the card system.

Step 505 loads the data structure for the identity field "product ID" called

"msm_mcd_permissions_mcd_ issuer_product_id." This nomenclature stands for

MULTOS card device issuer product identification number. Each card issuer may have different classes of products or cards which it may want to differentiate. For example, a

bank could issue a regular credit card with one product ID, a gold credit card with another

product ID and a platinum card with still another product ID. The card issuer may wish

to load certain applications onto only one class of credit cards. A gold credit card user who pays an annual fee may be entitled to a greater variety of applications than a regular credit card user who pays no annual fee. The product ID field identifies the card as a particular class and will later allow the card issuer to check the product ID and only load

applications onto cards which match the desired class.

Another way to differentiate products is by application type, such as by

categorizing the application as financial, legal, medical and/or recreational, or by

assigning particular applications to a group of cards. For example, one card issuer may

have different loyalty programs available with different companies to different sets of

card users. For example, a bank may have an American Airlines® loyalty program and a

British Airways® loyalty program for different regions of the country dependent on

where the airlines fly. The product type allows the issuer to fix the product classification

of the card during the personalization process. When loading applications onto the card,

the product type identification number on each card will be checked to make sure it

matches the type of card onto which the issuer desires to load. The product type data

structure is preferably an indexing mechanism (unlike the other personalization data

structure) of 8 bits (as shown at 505A in Fig. 5 A) but could be any length depending

upon the needs of the card system. In the illustrated embodiment, the resulting

instruction would be to locate the second bit (since the byte's indicated value is 2) in the

array to be searched (see discussion of step 809 below).

Step 507 loads the data structure for the identity field data called

"msm_mcd_permissions_mcd_ controls_data_ date." This nomenclature stands for the MULTOS card device controls data date or, in other words, the date on which the card

was personalized so that, for example, the application loader can load cards dated only after a certain date, load cards before a certain date (e.g., for application updates) or load cards with a particular data date. The information can include the year, month and day of

personalization or may include less information, if desired. The data_date data structure

is preferably 1 byte in length (see 507A in Fig. 5A) although it could be any length

depending upon the needs of the particular card system used.

Once all of the personalization data structures are loaded and stored in the

card, the card has been identified by issuer, product class, date and identification number

(and other data fields, if desired), and the card cannot change its identity; these fields cannot be changed in the memory of the card. If a card user wants to change the

product_id stored in the card to gain access to different applications available to another

product type, a new card will have to be issued to the user containing the correct

personalization data. This system is consistent with a gold card member receiving a new

card when the classification is changed to platinum.

After the card has been enabled and personalized by storing its individual

card key set, MSM personalization characteristics and enablement bit as described in Fig.

3, the card is ready to have applications loaded into its memory.

Loading Applications

The application loading process contains a number of security and card

configuration checks to ensure the secure and proper loading of an application onto the

intended IC card. The application loading process is preferably performed at the personalization bureau so that the card will contain one or more applications when the

card is issued. The card may contain certain common applications which will be present on every card the issuer sends out, such as an electronic purse application or a credit/debit application. Alternatively, the personalization bureau could send the enabled cards to a

third party for the process of loading applications. The multiple application operating

system stored in the ROM of each card and the card MSM personalization data is

designed to allow future loading and deleting of applications after the card has been

issued depending upon the desires of the particular card user and the responsible card

issuer. Thus, an older version of an application stored on the IC card could be replaced

with a new version of the application. An additional loyalty application could also be

added to the card after it has been initially sent to the card user because the application is

newly available or the user desires to use the new application. These loading and deleting

functions for applications can be performed directly by a terminal or may be performed

over telephone lines, data lines, a network such as the Internet or any other way of

transmitting data between two entities. In the present IC card system, the process of transmitting the application program and data ensures that only IC cards containing the

proper personalization data and which fit on application permissions profile will be

qualified and receive the corresponding application program and data.

Figure 6 shows the preferred steps performed in loading an application

onto an IC card in the MULTOS IC card system. For this example, the personalization

bureau is loading an application from a terminal which enabled the same card. Step 601

performs an "open command" initiated by the terminal which previews the card to make

sure the card is qualified to accept the loading of a specific application. The open command provides the card with the application's permissions data, the application's size, and instructs the card to determine (1) if the enablement bit is set indicating the card has been personalized; (2) whether the application code and associated data will fit in the

existing memory space on the card; and (3) whether the personalization data assigned to

the application to be loaded allows for the loading of the application onto the particular

card at issue. The open command could also make additional checks as required by the

card system. These checking steps during the open command execution will be described

in detail in conjunction with Figure 7.

After the open command has been executed, the application loader via the terminal will be advised if the card contains the proper identification personalization data

and if enough room exists in the memory of the card for the application code and related data. If there is insufficient memory, then a negative response is returned by the card and

the process is abended (abnormally ended). If the identification personalization data does

not match the applications permissions data, a warning response is given in step 603, but the process continues to the load and create steps. Alternatively, if there is no match, the

process may automatically be abended. If a positive response is retumed by the card to

the terminal in step 605, the application loader preferably proceeds to next steps. The

open command allows the application to preview the card before starting any transfer of

the code and data.

Step 607 then loads the application code and data onto the IC card into

EEPROM. The actual loading occurs in conjunction with create step 609 which

completes the loading process and enables the application to execute on the IC card after

it is loaded. The combination of the open, load and create commands are sent by the terminal, or another application provider source, to the IC card to perform the application loading process. The operating system in the IC cards is programmed to perform a

specific set of instructions with respect to each of these commands so that the IC card will

communicate with and properly carry out the instructions from the terminal.

Step 609 performs the create command which at least: (1) checks if an

application load certificate is signed (encrypted) by the CA and therefore authenticates

the application as a proper application for the system; and (2) checks the card

personalization data stored on the card against the permissions profile for the application

to be loaded to qualify the card for loading. It may do other checks as required. If one of

the checks fails, then a failure response 610 is given and the process aborts. The application after it has passed these checks will be loaded into the memory of the card.

Figure 7 shows the various steps of the open step 601 of Fig. 6 in more

detail. Step 701 determines if the enablement (i.e., control) bit is set. This bit is set when

the card has completed its personalization process and has been assigned its

personalization data. An application can be loaded on an IC card in the card system only if the card contains the personalization data. If the enablement bit is not set, the card has

not been personalized and therefore the card returns a negative response 703 to the

terminal. If the enablement bit is set, then the card has been enabled and the test

conditions continue with step 711.

Step 711 checks if there is sufficient space in the memory on the card to store the application code and its associated data. Applications will typically have

associated data related to their functions. This data will be used and manipulated when the application is run. Storage space in the memory of an IC card is a continuing concern due to the relatively large physical space required for EEPROM and how it fits in the

integrated circuit which is desired to be small enough to fit on a credit card sized card.

An example of the size of a preset EEPROM on an IC card is 16K bytes although the

actual size varies. Applications can range from IK byte or less for a very simple

application up to the size of available memory for a more sophisticated application. The

data associated with an application can range from no data being stored in the card

memory to a size constrained by the amount of available memory. These varied sizes of

application code and data continually increase as applications become more advanced and

diverse. MULTOS as an operating system is not limited by the number of

applications and associated data it can store on the card. Thus, if five applications can fit

in the available memory of the card, the card user will have greatly increased

functionality than if one or two applications were stored on the card. Once a card's

memory is filled to its capacity, however, a new application cannot be loaded onto the card unless another application including its code and data of sufficient size can be

deleted. Therefore, checking the amount of available space on the card is an important

step. If there is not sufficient space, then an insufficient space response 713 will be

returned to the terminal. The application loader can then decide if another existing application on the card should be deleted to make room for the new application. Deletion

depends upon the card issuer having an application delete certificate from the CA. If

there is sufficient space on the card, then the process continues with step 715. An example of the testing of memory spaces in step 711 is now described.

The numbers used in this example in no way limit the scope of the invention but are used

only to illustrate memory space requirements. An IC card may have 16K available

EEPROM when it is first manufactured. The operating system data necessary for the

operating system may take up 2K of memory space. Thus, 14K would remain. An

electronic purse application's code is stored in EEPROM and may take up 8K of memory

space. The purse application's required data may take up an additional 4K of memory

space in EEPROM. The memory space which is free for other applications would thus be

2K (16K-2K-8K-4K=2K). If a card issuer wants to load a credit/debit application whose

code is 6K bytes in size onto the card in this example, the application will not fit in the

memory of the IC card. Therefore, the application cannot load the new application

without first removing the purse application from the card. If a new credit/debit

application was loaded into EEPROM of the IC card, then it would have to overwrite

other application's code or data. The application loader is prevented from doing this. Figure 8 shows the steps performed in determining whether the card's personalization data falls within the permissible set of cards onto which the application at

issue may be loaded. These steps are preferably performed during the execution of the

"create" command. However, these steps may be performed at any time during the

loading or deleting of an application. As described previously, the card is personalized by storing data specific to the card (MSM personalization data) including: a card ID

designation specific to an individual card, the card issuer number indicating the issuer of

the card, the product type of the card, such as a gold or platinum card, and the date the card was personalized. This data uniquely identifies the card apart from all other IC cards

in the system.

Accordingly, applications can be selectively stored on individual cards in

the IC card system on virtually any basis, including the following. An application can be

loaded selectively to cards containing one or more specific card numbers. An application

can be selectively loaded on one or more cards containing a specified card issuer ID.

Moreover, an application can be loaded only upon one type of product specified by the particular card issuer, and/or the application can be loaded only on cards which have a

specified date or series of dates of personalization. Each of the personalization data

allows an application to be selectively loaded onto certain cards or groups of cards and

also ensures that cards without the proper permissions will not receive the application.

Personalization data types in addition to the four described can also be used as needed.

The selection of IC cards upon which a particular application may be

loaded is made possible by the use of "applications permissions data" which is assigned

to the application and represents at least one set of cards upon which the application may

be loaded. The set may be based on virtually any factor, including one or more of the

following: card numbers, card issuers, product types or personalization dates. Although

the individual card's personalization data typically identify one specific number, one card issuer, one product type and one date, the application's permissions data may indicate a card numbers or a blanket permission, a card issuer or a blanket permission, and a number of product types and dates. For example, a frequent loyalty program may be configured to allow its

loading and use on cards in different product classes belonging to one card issuer. In

addition, the application permissions data may indicate that the loyalty program can be

used on gold and platinum product types if the card was issued after May, 1998. Thus,

the MSM permissions check will determine if the card's individual personalization data is

included in the allowed or permissible set of cards upon which the application may be

loaded. If it is, the application will be loaded.

To expedite the comparison process, an alternative embodiment may

include setting one or more permissions data at zero representing a blanket permission for

that particular data. For instance, by placing a zero for the "card number" entry in the

application permissions data or some other value indicating that all cards may be loaded regardless of their number, the system knows not to deny any cards based on their card

number. Moreover, if a zero is placed in the application's permissions data "issuer ID,"

then all cards similarly will pass the "issuer" test comparison. This feature allows greater

flexibility in selecting groups of cards. The zero indicator could also be used for other permissions data, as required.

Referring to Figure 8, each of the permissions data is checked in the order

shown, but other orders could be followed because if any one of the permissions fails, the

application will be prevented from being loaded on the IC card being checked. The permissions are preferably checked in the order shown. Step 801 checks if the

application permissions product type set encompasses the card's product type number stored in the memory of the card. Each card product type is assigned a number by the system operator. The product types are specified for each card issuer because different

card issuers will have different product types. The cards are selectively checked to ensure

that applications are loaded only on cards of authorized product type. The application

permissions product type set can be 32 bytes long which includes multiple acceptable

product types or can be a different length depending upon the needs of the system. Using

data structure 505A as an example, the operating system would check bit number 2 in the 256 bit array (32 bytes x 8 bits per byte) resulting from the 32 byte long application

permissions data structure. If the permissions check fails, then the card returns a failure

message to the terminal in step 803. If the product type check passes (for example, the

value of bit no. 2 being 1), then the process continues with step 805.

Step 805 checks if the application permissions allowable card issuer number set encompasses the card's issuer number stored in the memory of the card or if

the application permissions issuer data is zero (indicating all cards pass this individual

permissions check). Each card issuer is assigned a number by the system operator and

the cards are selectively checked to ensure that applications are loaded only on cards

distributed by authorized card issuers. The application permissions card issuer number

set can be 4 bytes long if one issuer is designated or can be longer depending upon the

needs of the system. If the issuer check fails, then the card returns a failure message to

the terminal in step 807. If the check passes, then the process continues with step 809. Step 809 checks if the application permissions date set encompasses the card's data date stored in the memory of the card. The date that the IC card was personalized will be stored and will preferably include at least the month and year. The cards are selectively checked to ensure that applications are loaded only on cards with the

authorized personalization date. The application permissions date set can be 32 bytes

long which includes multiple dates or can be a different length depending upon the needs

of the system. If the date permissions check fails, then the card returns a failure message

to the terminal in step 811. If the date check passes, then the process continues with step

813.

Step 813 checks if the application permissions allowable card number set

encompasses the card's ID number stored in the card memory or if the application

permissions allowable card number data is zero (indicating all cards pass this individual

permissions check). The testing of the permissions is performed on the card during the execution of the open, load and create commands. The application permissions card

number data set can be 8 bytes long if one number is designated or can be longer

depending upon the needs of the system. If the card number check fails, then the card

returns a failure message to the terminal in step 815. If the check passes, then the process

continues with step 817.

Summary of IC Card System's Process

Figure 9 shows the components of the system architecture for the card

initialization process of an IC card in a secure multiple application IC card system. The system includes a card manufacturer 102, a personalization bureau 104, an application loader 106, the IC card 107 being initialized, the card user 109 and the certification

authority 111 for the entire multiple application secure system. The card user 131 is the person or entity who will use the stored applications on the IC card. For example, a card

user may prefer an IC card that contains both an electronic purse containing electronic cash (such as MONDEX™) and a credit/debit application (such as the MasterCard®

EMV application) on the same IC card. The following is a description of one way in

which the card user would obtain an IC card containing the desired applications in a

secure manner.

The card user would contact a card issuer 113, such as a bank which

distributes IC cards, and request an IC card with the two applications both residing in

memory of a single IC card. The integrated circuit chip for the IC card would be

manufactured by manufacturer 102 and sent to the card issuer 113 (or an entity acting on

its behalf) in the form of an IC chip on a card. As discussed above (see steps 201-209),

during the manufacturing process, data is transmitted 115 via a data conduit from the

manufacturer 102 to card 107 and stored in IC card 107's memory. (Any of the data

conduits described in this figure could be a telephone line, Internet connection or any

other transmission medium.) The certification authority 111, which maintains encryption/decryption keys for the entire system, transmits 117 security data (i.e., global

public key) to the manufacturer over a data conduit which is placed on the card by the

manufacturer along with other data, such as the card enablement key and card identifier.

The card's multiple application operating system is also stored in ROM and placed on the card by the manufacturer. After the cards have been initially processed, they are sent to the card issuer for personalization and application loading. The card issuer 113 performs, or has performed by another entity, two

separate functions. First, the personalization bureau 104 personalizes the IC card 107 in

the ways described above, and second, the application loader 106 loads the application

provided the card is qualified, as described.

Regarding personalization, an individualized card key set is generated by

the CA and stored on the card (see Fig. 3). The card is further given a specific identity

using MSM personalization (see Fig. 3, step 307 and Fig. 5) including a card ID number,

an issuer ED number identifying the card issuer which processed the card, a card product type number which is specified by the card issuer and the date upon which the

personalization took place. After the card has been personalized, applications need to be

loaded onto the card so that the card can perform desired functions.

The application loader 106, which could use the same terminal or data

conduit as personalization bureau 104, first needs to have determined if the card is

qualified to accept the application. This comparison process takes place on the card itself

(as instructed by its operating system) using the permissions information. The card, if it

is qualified, thus selectively loads the application onto itself based upon the card's identity and the card issuer's instructions. The application loader communicates 119 with the IC card via a terminal or by some other data conduit. After the applications have been

loaded on the card, the card is delivered to the card user 109 for use.

The secure multiple application IC card system described herein allows for

selective loading and deleting of applications at any point in the life cycle of the IC card after the card has been personalized. Thus, a card user could also receive a personalized card with no applications and then select a desired application over a common

transmission line such as a telephone line or Internet connection.

Figure 10 is a system diagram of entities involved with the use of an IC

card once it has been personalized. The system includes an IC card 151, a terminal 153,

an application load/delete entity 155, the certification authority 157, a card issuer 171 and

other IC cards 159 in the system. The arrows indicate communication between the

respective entities. The CA 157 facilitates loading and deleting of applications. After

providing the MSM permissions data and card specific keyset to the card during card enablements, the CA allows applications to be later loaded and deleted preferably by

issuing an application certificate. Application specific keys are required to authenticate

communication between a card and terminal. The IC card 151 also can communicate

with other IC cards 159. Card issuer 171 is involved with all decisions of loading and

deleting applications for a card which it issued. All communications are authenticated

and transmitted securely in the system.

For instance, IC card 151 will use the following procedure to load a new

application onto the card. IC card 101 is connected to terminal 153 and the terminal

requests that an application be loaded. Terminal 153 contacts application load/delete entity 155 which, as a result and in conjunction with card issuer 171, sends the

application code, data and application permissions data (along with any other necessary data) to terminal 153. Terminal 153 then queries card 151 to ensure it is the correct card

onto which the application may be loaded. If IC card passes the checks discussed above, the application is loaded onto card 151. The CA 157 provides the application load or delete certificate that enables the application to be loaded or deleted from the card. This

example shows one way to load the application, but other variations using the same

principles could be performed, such as directly loading the application at the application

load/delete entity 155.

The foregoing merely illustrates the principles of the invention. It will

thus be appreciated that those skilled in the art will be able to devise numerous systems

and methods which, although not explicitly shown or described herein, embody the

principles of the invention and are thus within the spirit and scope of the invention. For example, it will be appreciated that the MSM personalization and

permissions data may not only be used for loading applications onto IC cards but also for

deleting applications from said cards. The same checks involving MSM permissions and

loading applications are made for deleting applications. A delete certificate from the CA

authorizing the deletion of an application will control from which cards the application

may be deleted. This is accomplished through the personalization data stored on each IC

card and the permissions check as described herein.

Moreover, the data may also be applicable to personal computers or other units onto which applications may be loaded which are not physically loaded on cards. In

addition, the application's permissions data may actually include data representative of a

set or sets of cards to be excluded, instead of included — cards that cannot be loaded with the application. The scope of the present disclosure includes any novel feature or combination of features disclosed therein either explicitly or implicitly or any generahsation thereof irrespective of whether or not it relates to the claimed invention or mitigates any or all of the problems addressed by the present invention. The applicant hereby gives notice that new claims may be formulated to such features during the prosecution of this application or of any such further application derived therefrom. In particular, with reference to the appended claims, features from dependent claims may be combined with those of the independent claims in any appropriate manner and not merely in the specific combinations enumerated in the claims.

Patent Citations
Cited PatentFiling datePublication dateApplicantTitle
WO1990005960A1 *22 Nov 198931 May 1990Cryptag LimitedProgrammable transponder
EP0292248A2 *18 May 198823 Nov 1988THE GENERAL ELECTRIC COMPANY, p.l.c.Data processing system
EP0328289A2 *31 Jan 198916 Aug 1989Hitachi Maxell Ltd.IC card and method of writing its operation program
EP0475837A1 *10 Sep 199118 Mar 1992Gemplus Card InternationalMethod of managing an application program stored in an IC card
EP0594493A1 *18 Oct 199327 Apr 1994Gemplus Card InternationalSoftware acquiring procedure and information system for carrying out this procedure
GB2284689A * Title not available
Non-Patent Citations
Reference
1None
Referenced by
Citing PatentFiling datePublication dateApplicantTitle
WO2001041087A1 *14 Sep 20007 Jun 2001Orga Kartensysteme GmbhMethod for initialising and/or personalising chip cards and a corresponding device
CN103257853A *17 Feb 201221 Aug 2013上海复旦微电子集团股份有限公司Composite application implementing method for CPU (central processing unit) card with multi-application COS (chip operating system)
DE102005052888A1 *7 Nov 200516 May 2007Giesecke & Devrient GmbhPortable data storage medium personalizing method, involves receiving response data of processing device from personalization system, and carrying out personalization step based on response data that are determined based on detected data
EP1418538A1 *30 Jul 200212 May 2004Dai Nippon Printing Co., Ltd.MULTI−APPLICATION IC CARD
EP1418538A4 *30 Jul 200211 Jul 2007Dainippon Printing Co LtdMulti-application ic card
EP2490159A1 *24 Jul 200622 Aug 2012Oberthur Card Systems SaElectronic entity with a means for communication by contact and remotely
EP2927858A1 *31 Mar 20157 Oct 2015Oberthur TechnologiesMethod for manufacturing a security device
US663398422 Jan 199914 Oct 2003Sun Microsystems, Inc.Techniques for permitting access across a context barrier on a small footprint device using an entry point object
US676905310 Jun 199927 Jul 2004Belle Gate Investment B.V.Arrangement storing different versions of a set of data in separate memory areas and method for updating a set of data in a memory
US688316314 Sep 200019 Apr 2005Sun Microsystems, Inc.Populating resource-constrained devices with content verified using API definitions
US68837167 Dec 199926 Apr 2005Sun Microsystems, Inc.Secure photo carrying identification device, as well as means and method for authenticating such an identification device
US692283522 Jan 199926 Jul 2005Sun Microsystems, Inc.Techniques for permitting access across a context barrier on a small footprint device using run time environment privileges
US698124514 Sep 200027 Dec 2005Sun Microsystems, Inc.Populating binary compatible resource-constrained devices with content verified using API definitions
US698613214 Sep 200010 Jan 2006Sun Microsytems, Inc.Remote incremental program binary compatibility verification using API definitions
US699621329 Sep 19987 Feb 2006Sun Microsystems, Inc.Superposition of data over voice
US70207406 Dec 200028 Mar 2006Sun Microsystems, Inc.Computer arrangement using non-refreshed DRAM
US708584029 Oct 20011 Aug 2006Sun Microsystems, Inc.Enhanced quality of identification in a data communications network
US709312222 Jan 199915 Aug 2006Sun Microsystems, Inc.Techniques for permitting access across a context barrier in a small footprint device using shared object interfaces
US714054924 Feb 200428 Nov 2006Sun Microsystems, Inc.Method and apparatus for selecting a desired application on a smart card
US715899314 Sep 20002 Jan 2007Sun Microsystems, Inc.API representation enabling submerged hierarchy
US716572724 Feb 200423 Jan 2007Sun Microsystems, Inc.Method and apparatus for installing an application onto a smart card
US719128824 Feb 200413 Mar 2007Sun Microsystems, Inc.Method and apparatus for providing an application on a smart card
US723163512 Sep 200312 Jun 2007Sun Microsystems, Inc.Remote incremental program verification using API definitions
US727526029 Oct 200125 Sep 2007Sun Microsystems, Inc.Enhanced privacy protection in identification in a data communications network
US733472019 Jan 200626 Feb 2008Smart-Flash LimitedData storage and access systems
US737409924 Feb 200420 May 2008Sun Microsystems, Inc.Method and apparatus for processing an application identifier from a smart card
US749675129 Oct 200124 Feb 2009Sun Microsystems, Inc.Privacy and identification in a data communications network
US76071759 Sep 200320 Oct 2009Sun Microsystems, Inc.Techniques for permitting access across a context barrier on a small footprint device using an entry point object
US787449212 Jun 200725 Jan 2011Visa U.S.A. Inc.Method and system for facilitating memory and application management on a secured token
US794231715 Jan 200817 May 2011Smartflash Technologies LimitedData storage and access systems
US803345810 Nov 201011 Oct 2011Smartflash Technologies LimitedData storage and access systems
US806159824 Jan 201122 Nov 2011Smartflash Technologies LimitedData storage and access systems
US811822110 Nov 201021 Feb 2012Smartflash Technologies LimitedData storage and access systems
US833677217 Aug 201125 Dec 2012Smartflash Technologies LimitedData storage and access systems
US854892319 Mar 20101 Oct 2013Sonia ReedMethod and system for facilitating data access and management on a secure token
US911118824 Jul 200618 Aug 2015Oberthur TechnologiesElectronic entity with contact and remote communication means
US943066626 Aug 201330 Aug 2016Visa International Service AssociationMethod and system for facilitating data access and management on a secure token
US947191014 Jun 201318 Oct 2016Smartflash, LLCData storage and access systems
US960069711 May 201521 Mar 2017Oberthur TechnologiesElectronic entity with contact and remote communication means
USRE3926910 Jun 20025 Sep 2006Sun Microsystems, Inc.Data exchange system comprising portable data processing units
Classifications
International ClassificationG06K17/00, G06F9/06, G06K19/07, G07F7/10, G06K19/073, G07F7/08
Cooperative ClassificationG06Q20/3552, G06Q20/40975, G07F7/1008, G07F7/1016, G06Q20/35765, G06Q20/4097, G06Q20/3574, G06Q20/355, G06K19/0719, G06Q20/341, G06K2017/0041
European ClassificationG06K19/07G, G06Q20/355, G06Q20/341, G06Q20/40975, G06Q20/3574, G06Q20/35765, G06Q20/3552, G06Q20/4097, G07F7/10E, G07F7/10D
Legal Events
DateCodeEventDescription
27 Aug 1998AKDesignated states
Kind code of ref document: A1
Designated state(s): AL AM AT AU AZ BA BB BG BR BY CA CH CN CU CZ DE DK EE ES FI GB GE GH GM GW HU ID IL IS JP KE KG KP KR KZ LC LK LR LS LT LU LV MD MG MK MN MW MX NO NZ PL PT RO RU SD SE SG SI SK SL TJ TM TR TT UA UG UZ VN YU ZW
27 Aug 1998ALDesignated countries for regional patents
Kind code of ref document: A1
Designated state(s): GH GM KE LS MW SD SZ UG ZW AM AZ BY KG KZ MD RU TJ TM AT BE CH DE DK ES FI FR GB GR IE IT LU MC NL PT SE BF BJ CF CG CI CM GA GN ML MR NE SN TD TG
8 Oct 1998DFPERequest for preliminary examination filed prior to expiration of 19th month from priority date (pct application filed before 20040101)
20 Jan 1999121Ep: the epo has been informed by wipo that ep was designated in this application
18 Aug 1999WWEWipo information: entry into national phase
Ref document number: 1998907003
Country of ref document: EP
18 Aug 1999ENPEntry into the national phase in:
Ref country code: JP
Ref document number: 1998 536394
Kind code of ref document: A
Format of ref document f/p: F
19 Aug 1999ENPEntry into the national phase in:
Ref country code: CA
Ref document number: 2281576
Kind code of ref document: A
Format of ref document f/p: F
Ref document number: 2281576
Country of ref document: CA
20 Sep 1999WWEWipo information: entry into national phase
Ref document number: 62996/98
Country of ref document: AU
15 Dec 1999WWPWipo information: published in national office
Ref document number: 1998907003
Country of ref document: EP
23 Dec 1999REGReference to national code
Ref country code: DE
Ref legal event code: 8642
8 Nov 2001WWGWipo information: grant in national office
Ref document number: 62996/98
Country of ref document: AU
6 May 2004WWGWipo information: grant in national office
Ref document number: 1998907003
Country of ref document: EP