EP1026640B1 - Portable electronic device - Google Patents

Portable electronic device Download PDF

Info

Publication number
EP1026640B1
EP1026640B1 EP00102636A EP00102636A EP1026640B1 EP 1026640 B1 EP1026640 B1 EP 1026640B1 EP 00102636 A EP00102636 A EP 00102636A EP 00102636 A EP00102636 A EP 00102636A EP 1026640 B1 EP1026640 B1 EP 1026640B1
Authority
EP
European Patent Office
Prior art keywords
data
command message
nonvolatile memory
security
writing
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Lifetime
Application number
EP00102636A
Other languages
German (de)
French (fr)
Other versions
EP1026640A2 (en
EP1026640A3 (en
Inventor
Takafumi c/o Toshiba K. K. Intel. Prop. Watanabe
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Toshiba Corp
Original Assignee
Toshiba Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Toshiba Corp filed Critical Toshiba Corp
Publication of EP1026640A2 publication Critical patent/EP1026640A2/en
Publication of EP1026640A3 publication Critical patent/EP1026640A3/en
Application granted granted Critical
Publication of EP1026640B1 publication Critical patent/EP1026640B1/en
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G07CHECKING-DEVICES
    • G07FCOIN-FREED OR LIKE APPARATUS
    • G07F7/00Mechanisms actuated by objects other than coins to free or to actuate vending, hiring, coin or paper currency dispensing or refunding apparatus
    • G07F7/08Mechanisms 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/10Mechanisms 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/1008Active credit-cards provided with means to personalise their use, e.g. with PIN-introduction/comparison system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION 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/00Payment architectures, schemes or protocols
    • G06Q20/30Payment architectures, schemes or protocols characterised by the use of specific devices or networks
    • G06Q20/34Payment 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/341Active cards, i.e. cards including their own processing means, e.g. including an IC or chip
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION 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/00Payment architectures, schemes or protocols
    • G06Q20/30Payment architectures, schemes or protocols characterised by the use of specific devices or networks
    • G06Q20/34Payment 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/355Personalisation of cards for use
    • G06Q20/3552Downloading or loading of personalisation data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION 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/00Payment architectures, schemes or protocols
    • G06Q20/30Payment architectures, schemes or protocols characterised by the use of specific devices or networks
    • G06Q20/34Payment 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/357Cards having a plurality of specified features
    • G06Q20/3576Multiple memory zones on card
    • G06Q20/35765Access rights to memory zones
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION 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/00Payment architectures, schemes or protocols
    • G06Q20/30Payment architectures, schemes or protocols characterised by the use of specific devices or networks
    • G06Q20/36Payment architectures, schemes or protocols characterised by the use of specific devices or networks using electronic wallets or electronic money safes
    • G06Q20/367Payment architectures, schemes or protocols characterised by the use of specific devices or networks using electronic wallets or electronic money safes involving electronic purses or money safes
    • G06Q20/3672Payment architectures, schemes or protocols characterised by the use of specific devices or networks using electronic wallets or electronic money safes involving electronic purses or money safes initialising or reloading thereof

Definitions

  • the present invention generally relates to a portable electronic device, and a method for issuing the device. More particularly, the present invention relates to a device and method for achieving high security during application operation and high efficiency while being issued.
  • a portable electronic device such as an IC card prevents an unauthorized third person from reading and rewriting data stored in an internal memory, writing new data into the internal memory by a security function realized by, such as, a personal identification number (PIN) code, and encoding data to be transmitted to or from a card reader/writer.
  • PIN personal identification number
  • An IC card needs to be written with specific data necessary for operation of each application.
  • an IC card may require entry of an owner's PIN code and cryptographic key for an application so that the IC card can become usable for the application.
  • This process of writing the specific data into the IC card is called "issuance.”
  • An issuer usually issues a large number of IC cards with specific data at a time.
  • Each issued IC card requires satisfaction of the security function except for the owner's PIN code. Therefore, because a preparatory process such as a data encoding process must occur before the issuing process, this preparatory process makes issuing the card inefficient.
  • EP 0 847 031 A 1 discloses a method for programming a microprocessor card for an additional application after the card was issued.
  • the issued card includes data which were written into the card according to the application when personalizing the card.
  • a key K is written into the card, and it is assumed that a certain area of the memory of the microprocessor card is used when the card is issued. If the costumer later decides that the microprocessor card is used for an additional application such as a card for public transport or a user card for a retail company, a corresponding application is programmed after issuance and personalization of the card.
  • the described example is a bank card or a credit card which should be used as a use card for public transport later.
  • the key K can be used to allow the later programming of the additional application using a security function provided by the key K written into the card at the issuance (personalization).
  • Handbuch Der Chip patch 1995, pages 233-235 describes a generalized process for making smart cards and a portable electronic device according to the preamble of claim 1.
  • the present invention aims to solve the inherent limitations of existing issuing systems by use of a specific application program and a method for issuing the device that substantially obviates one or more of the problems due to limitations and disadvantages of the past approaches.
  • an unissued IC card can be written with the specific data without satisfying with the security function and (2) the security function becomes valid after the issuance and each IC card requires satisfaction of the security function in case of data writing or data rewriting. That is, an IC card with which achieve high security during application operation and high efficiency during issuance is provided.
  • FIG. 1 is an exemplary block diagram depicting the configuration of an IC card processing apparatus 100 according to the principles of the present invention.
  • IC card processing apparatus 100 communicates with an IC card 102.
  • IC card processing apparatus 100 comprises a computer 104 which generally controls IC card processing apparatus 100.
  • IC card 102 and computer 104 communicate with each other using a card reader/writer 106.
  • IC card 102 and computer 104 may be physically connected, or not physically connected, such as an antenna.
  • IC card processing apparatus also comprises a keyboard 108 for inputting a command and data, a cathode ray tube (CRT) display 110 for displaying data, a printer 112 for printing data, and a floppy disk drive (FDD) 114 for storing data, all of which are connected to computer 106.
  • keyboard 108 for inputting a command and data
  • CRT cathode ray tube
  • printer 112 for printing data
  • FDD floppy disk drive
  • FIG. 2 is an exemplary block diagram depicting the function of IC card 102.
  • IC card 102 comprises a reading/writing unit 200, a PIN setting/collating unit 202, an encoding/decoding unit 204, and a supervisor 206.
  • Supervisor 206 controls various functions executed by units 200, 202, and 204.
  • Reading/writing unit 200 reads data from and writes data into a data memory 302 (further described below) and a program memory 304 (further described below) with specific commands or specific data provided by computer 104 via card reader/writer 106.
  • PIN setting/collating unit 202 sets an owner's PIN code in data memory 302 when an IC card is issued, replaces the PIN code when requested by the owner, and collates a PIN code provided by computer 104 in comparison with the set PIN code when the IC card is used.
  • Encoding/decoding unit 204 encodes data provided by IC card 102 to computer 104, and decodes encoded data provided from computer 104 to IC card 102.
  • Supervisor 206 receives a command (and data) from card reader/writer 106, interprets that command, and instructs units 200, 202, and 204 to execute various functions, such as read, write, encode, or decode.
  • FIG. 3 is an exemplary block diagram depicting the configuration of IC module 300.
  • IC module 300 comprises a CPU 302, a data memory 304, a program memory 306, and a contact unit 308.
  • CPU 302 controls IC module 300.
  • Data memory 304 is a nonvolatile memory for storing various data, such as an EEPROM.
  • Program memory 306 is a mask ROM printed a control program.
  • a mask ROM is a ROM chip printed with data for a program when produced.
  • Contact unit 308 is an interface between IC 310 and card reader/writer 106.
  • An IC 310 contains CPU 302, data memory 304, and program memory 306.
  • IC module 300 is composed of contact unit 308 and IC 310 connected with contact unit 308.
  • IC card 102 is formed with IC module 300 and a plastic card (not shown) for packing IC module 300.
  • FIG. 4 is a diagram depicting a mapping example in data memory 304 after the issuance.
  • Data memory 304 comprises a system area 400, a dedicated file (DF) / elementary file (EF) definition area 402, and a data area 404.
  • DF dedicated file
  • EF elementary file
  • System area 400 stores fixed data and initial value of variable data, both of which are necessary to use IC card 102. Both data are stored in system area 400 before the issuance.
  • DF/EF definition area 402 stores both DF definition information and EF definition information.
  • DF definition information defines an application, and EF definition information defines data to be used for the application.
  • EF definition information defines data to be used for the application.
  • two pieces of EF definition information, EF1-1 and EF1-2, are given respective EF identifiers "EF1" and "EF2.”
  • the information is stored in DE/EF definition information area 402 correspondingly to DF definition information named "DF1.”
  • DF/EF definition area 402 also comprises an unused area for storing DF definition information and EF definition information. This information is added when IC card 102 is additionally issued regarding a new application, or when new data is additionally written into a current application.
  • Data area 404 stores data and CPU 302 manages the stored data using EF definition information. Data area 404 also stores one or more programs for each application. Each application is managed on the basis of DF definition information so that validity or invalidity of the security function of an application can be set separately among applications.
  • FIG. 5 is a diagram depicting an example of DF definition information.
  • DF definition information comprises a DF name 500, DF size information 502, security format information 504, and a security flag 506. Every DF has a unique DF name 500 by which CPU 302 looks up a corresponding DF.
  • DF size information 502 is an area in data memory 304 which both a DF and EFs subordinate to the DF can use. When a new EF is added subordinately to a DF, the size of the new EF is subtracted from the size stored in DF size information.
  • Security format information 504 stores information regarding message formats of writing or rewriting commands to be executed under a DF.
  • Security flag 506 is set while security of an application is valid.
  • security flag 506 is set, only a writing or a rewriting command having the same message format as designated by corresponding security format information 504 is accepted, however, writing or rewriting command having other format will be refused, and not accepted.
  • FIG. 6 is a diagram depicting an example of EF definition information generated subordinately to a DF definition information.
  • EF definition information comprises DF information 600, an EF identifier 602, address information 604, EF size information 606, and EF format information 608.
  • DF information 600 indicates a dominant DF to an EF. Every EF has a unique EF identifier 602 by which control clement 302 looks up a corresponding EF.
  • Address information 604 stores an address in a data area managed on the basis of a corresponding EF definition information.
  • EF size information 606 indicates the size of a data area managed on the basis of a corresponding EF definition information.
  • EF format information 608 stores information regarding the structure of an EF definition information.
  • An international organization for standardization (ISO) provides a record structure EF and a transparent structure EF in ISO7816-4. More information on IS07816-4 may be found in: International Organization for Standardization, "International Standard ISO/IEC 7816: Integrated circuit(s) cards with contacts.”
  • FIGs. 7(a)-(d) are diagrams depicting a writing or rewriting command message format examples.
  • a format #1 is a basic command of writing or rewriting.
  • the format #1 comprises a command header area and data area.
  • the command header indicates whether the command is a writing command or a rewriting command.
  • the data area comprises data to be written or rewritten to data memory 304.
  • the format #1 is accepted when security flag 506 is not valid.
  • formats #2-#4 respectively shown in FIG. 7(b)-(d) are accepted when security flag 506 is valid.
  • a format #2 comprises encoded data area to conceal data.
  • security verification is carried out through decoding of the encoded data.
  • a format #3 comprises a spare data area to realize justifiability of data.
  • security verification is carried out by determining the justifiability of the spare data.
  • a format #4 comprises an encoded data area, and spare data area to realize concealment and justifiability of data. In this case, security verification is carried out judging from encoding results and justifiability of the spare data.
  • the formats #2-#4 are designated correspondingly to each DF by security format information 504.
  • FIG. 8 is a diagram depicting a message format example of a command that validates security flag 510.
  • the command is composed of single command header area. Immediately after an execution of the command, security flag 510 of the DF definition information is validated.
  • FIG. 9 is an exemplary flowchart depicting process for validating security flag 510 of the DF definition information.
  • Computer 104 sends a command message to CPU 302 via card reader/writer 106 and contact unit 306 to validate security flag 510 (shown in FIG. 6).
  • CPU 302 receives the command message (step S1).
  • CPU 302 collates the format type of the command message. That is, CPU 302 determines whether the received command message is a command message for validating security flag 510 (step S2).
  • CPU 302 validates security flag 510 which is included in a DF definition information under a current processing, hereinafter referred to 'current DF' (step S3).
  • FIG. 10 is an exemplary flowchart depicting a process generated by a command message for writing or rewriting.
  • Computer 104 sends a command message for writing or rewriting (shown in FIG. 7(a)-(d)) to CPU 302 via card reader/writer 108 and contact unit 306.
  • CPU 302 receives the command message (step T1).
  • CPU 302 collates the format type of the command message.
  • CPU 302 determines whether the type of the command message is the format #1 type (step T2). If the message is format #1, CPU 302 determines whether security flag 510 regarding a current DF definition information is validated (step T3). When the security flag 510 is determined not yet to be validated, CPU 302 writes or rewrites as designated by command header area 800 (step T4).
  • an unissued IC card can be written or rewritten with data for application operation without satisfying the security function and accordingly issuance becomes highly efficient.
  • step T3 When the security flag 510 is determined to be already validated in step T3, CPU 302 sends a reply status indicating "the format type of the received command message is not acceptable.” to computer 104 (step T5). Thus format #1 will be refused when security flag 510 is validated.
  • CPU 302 determines the format type of command message not to be the format #1 (step T2)
  • CPU 302 writes or rewrites data designated by security format information 504 in the current DF definition information using received command message (step T6).
  • CPU 302 determines whether the command message can pass the verification by the security function (step T7). When the command message passes the verification, CPU 302 writes or rewrites data designated in command header area (step T4).
  • CPU 302 sends a replying status indicating "the received command message is not acceptable" to computer 104 (step T8).
  • an unissued IC card can be written with the specific data without satisfying with the security function and the security function becomes valid after the issuance and each IC card requires satisfaction of the security function in case of data writing or data rewriting. That is, a mechanism in which an IC card with which achieves high security during application operation and high efficiency during issuance.

Landscapes

  • Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Accounting & Taxation (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Strategic Management (AREA)
  • General Business, Economics & Management (AREA)
  • Theoretical Computer Science (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Finance (AREA)
  • Storage Device Security (AREA)

Description

    BACKGROUND OF THE INVENTION I. Field of the Invention
  • The present invention generally relates to a portable electronic device, and a method for issuing the device. More particularly, the present invention relates to a device and method for achieving high security during application operation and high efficiency while being issued.
  • II. Background and Material Information
  • A portable electronic device such as an IC card prevents an unauthorized third person from reading and rewriting data stored in an internal memory, writing new data into the internal memory by a security function realized by, such as, a personal identification number (PIN) code, and encoding data to be transmitted to or from a card reader/writer.
  • An IC card needs to be written with specific data necessary for operation of each application. For example, an IC card may require entry of an owner's PIN code and cryptographic key for an application so that the IC card can become usable for the application. This process of writing the specific data into the IC card is called "issuance." An issuer usually issues a large number of IC cards with specific data at a time. Each issued IC card requires satisfaction of the security function except for the owner's PIN code. Therefore, because a preparatory process such as a data encoding process must occur before the issuing process, this preparatory process makes issuing the card inefficient.
  • EP 0 847 031 A 1 discloses a method for programming a microprocessor card for an additional application after the card was issued. The issued card includes data which were written into the card according to the application when personalizing the card. At that time, preferably a key K is written into the card, and it is assumed that a certain area of the memory of the microprocessor card is used when the card is issued. If the costumer later decides that the microprocessor card is used for an additional application such as a card for public transport or a user card for a retail company, a corresponding application is programmed after issuance and personalization of the card. The described example is a bank card or a credit card which should be used as a use card for public transport later. The key K can be used to allow the later programming of the additional application using a security function provided by the key K written into the card at the issuance (personalization).
  • Handbuch Der Chipkarte, 1995, pages 233-235 describes a generalized process for making smart cards and a portable electronic device according to the preamble of claim 1.
  • SUMMARY OF THE INVENTION
  • In view of the foregoing, the present invention aims to solve the inherent limitations of existing issuing systems by use of a specific application program and a method for issuing the device that substantially obviates one or more of the problems due to limitations and disadvantages of the past approaches.
  • This object is achieved by the device according to claim 1.
  • Further developments of the invention are given in the dependent claims.
  • There is provided a mechanism in which (1) an unissued IC card can be written with the specific data without satisfying with the security function and (2) the security function becomes valid after the issuance and each IC card requires satisfaction of the security function in case of data writing or data rewriting. That is, an IC card with which achieve high security during application operation and high efficiency during issuance is provided.
  • It is to be understood that both the foregoing general description and the following detailed description are exemplary and explanatory only and are not restrictive of the invention, as claimed. Further features and/or variations may be provided in addition to those set forth herein. For example, the present invention may be directed to various combinations and subcombinations of the disclosed features and/or combinations and subcombinations of several further features disclosed below in the detailed description.
  • BRIEF DESCRIPTION OF THE DRAWINGS
  • The accompanying drawings, which are incorporated in and constitute a part of this specification, illustrate various embodiments and/or features of the invention and together with the description, serve to explain the principles of the invention. In the drawings:
  • FIG. 1 is an exemplary block diagram depicting the configuration of an IC card processing apparatus 100 according to the principles of the present invention;
  • FIG. 2 is an exemplary block diagram depicting the function of IC card 102;
  • FIG. 3 is an exemplary block diagram depicting the configuration of IC module 300;
  • FIG. 4 is a diagram depicting a mapping example in data memory 304 after the issuance;
  • FIG. 5 is a diagram depicting an example of DF definition information;
  • FIG. 6 is a diagram depicting an example of EF definition information generated subordinately to a DF definition information;
  • FIGs. 7(a)-(d) are diagrams depicting writing or rewriting command message format examples;
  • FIG. 8 is a diagram depicting a message format example of a command that validates security flag 510;
  • FIG. 9 is an exemplary flowchart depicting a process for validating security flag 510 of the DF definition information; and
  • FIG. 10 is an exemplary flowchart depicting a process generated by a command message for writing or rewriting.
  • DETAILED DESCRIPTION
  • The various aspects and features of the present invention will be hereinafter described with reference to the accompanying drawings.
  • FIG. 1 is an exemplary block diagram depicting the configuration of an IC card processing apparatus 100 according to the principles of the present invention. IC card processing apparatus 100 communicates with an IC card 102. IC card processing apparatus 100 comprises a computer 104 which generally controls IC card processing apparatus 100. IC card 102 and computer 104 communicate with each other using a card reader/writer 106. For example, IC card 102 and computer 104 may be physically connected, or not physically connected, such as an antenna. IC card processing apparatus also comprises a keyboard 108 for inputting a command and data, a cathode ray tube (CRT) display 110 for displaying data, a printer 112 for printing data, and a floppy disk drive (FDD) 114 for storing data, all of which are connected to computer 106.
  • FIG. 2 is an exemplary block diagram depicting the function of IC card 102.
  • IC card 102 comprises a reading/writing unit 200, a PIN setting/collating unit 202, an encoding/decoding unit 204, and a supervisor 206. Supervisor 206 controls various functions executed by units 200, 202, and 204.
  • The functions of units 200, 202, and 204 are now further described. Reading/writing unit 200 reads data from and writes data into a data memory 302 (further described below) and a program memory 304 (further described below) with specific commands or specific data provided by computer 104 via card reader/writer 106.
  • PIN setting/collating unit 202 sets an owner's PIN code in data memory 302 when an IC card is issued, replaces the PIN code when requested by the owner, and collates a PIN code provided by computer 104 in comparison with the set PIN code when the IC card is used.
  • Encoding/decoding unit 204 encodes data provided by IC card 102 to computer 104, and decodes encoded data provided from computer 104 to IC card 102.
  • Supervisor 206 receives a command (and data) from card reader/writer 106, interprets that command, and instructs units 200, 202, and 204 to execute various functions, such as read, write, encode, or decode.
  • FIG. 3 is an exemplary block diagram depicting the configuration of IC module 300.
  • IC module 300 comprises a CPU 302, a data memory 304, a program memory 306, and a contact unit 308. CPU 302 controls IC module 300. Data memory 304 is a nonvolatile memory for storing various data, such as an EEPROM. Program memory 306 is a mask ROM printed a control program. A mask ROM is a ROM chip printed with data for a program when produced. Contact unit 308 is an interface between IC 310 and card reader/writer 106.
  • An IC 310 contains CPU 302, data memory 304, and program memory 306. IC module 300 is composed of contact unit 308 and IC 310 connected with contact unit 308. IC card 102 is formed with IC module 300 and a plastic card (not shown) for packing IC module 300.
  • FIG. 4 is a diagram depicting a mapping example in data memory 304 after the issuance.
  • Data memory 304 comprises a system area 400, a dedicated file (DF) / elementary file (EF) definition area 402, and a data area 404.
  • System area 400 stores fixed data and initial value of variable data, both of which are necessary to use IC card 102. Both data are stored in system area 400 before the issuance.
  • DF/EF definition area 402 stores both DF definition information and EF definition information. DF definition information defines an application, and EF definition information defines data to be used for the application. In FIG. 4, two pieces of EF definition information, EF1-1 and EF1-2, are given respective EF identifiers "EF1" and "EF2." The information is stored in DE/EF definition information area 402 correspondingly to DF definition information named "DF1."
  • DF/EF definition area 402 also comprises an unused area for storing DF definition information and EF definition information. This information is added when IC card 102 is additionally issued regarding a new application, or when new data is additionally written into a current application.
  • Data area 404 stores data and CPU 302 manages the stored data using EF definition information. Data area 404 also stores one or more programs for each application. Each application is managed on the basis of DF definition information so that validity or invalidity of the security function of an application can be set separately among applications.
  • FIG. 5 is a diagram depicting an example of DF definition information.
  • DF definition information comprises a DF name 500, DF size information 502, security format information 504, and a security flag 506. Every DF has a unique DF name 500 by which CPU 302 looks up a corresponding DF. DF size information 502 is an area in data memory 304 which both a DF and EFs subordinate to the DF can use. When a new EF is added subordinately to a DF, the size of the new EF is subtracted from the size stored in DF size information. Security format information 504 stores information regarding message formats of writing or rewriting commands to be executed under a DF.
  • Security flag 506 is set while security of an application is valid. When security flag 506 is set, only a writing or a rewriting command having the same message format as designated by corresponding security format information 504 is accepted, however, writing or rewriting command having other format will be refused, and not accepted.
  • FIG. 6 is a diagram depicting an example of EF definition information generated subordinately to a DF definition information.
  • EF definition information comprises DF information 600, an EF identifier 602, address information 604, EF size information 606, and EF format information 608.
  • DF information 600 indicates a dominant DF to an EF. Every EF has a unique EF identifier 602 by which control clement 302 looks up a corresponding EF. Address information 604 stores an address in a data area managed on the basis of a corresponding EF definition information. EF size information 606 indicates the size of a data area managed on the basis of a corresponding EF definition information. EF format information 608 stores information regarding the structure of an EF definition information. An international organization for standardization (ISO) provides a record structure EF and a transparent structure EF in ISO7816-4. More information on IS07816-4 may be found in: International Organization for Standardization, "International Standard ISO/IEC 7816: Integrated circuit(s) cards with contacts."
  • FIGs. 7(a)-(d) are diagrams depicting a writing or rewriting command message format examples.
  • As shown in FIG. 7(a), a format #1 is a basic command of writing or rewriting. The format #1 comprises a command header area and data area. The command header indicates whether the command is a writing command or a rewriting command. The data area comprises data to be written or rewritten to data memory 304. The format #1 is accepted when security flag 506 is not valid.
  • On the other hand, formats #2-#4 respectively shown in FIG. 7(b)-(d) are accepted when security flag 506 is valid.
  • As shown in FIG. 7(b), a format #2 comprises encoded data area to conceal data. In this case, security verification is carried out through decoding of the encoded data.
  • As shown in FIG. 7(c), a format #3 comprises a spare data area to realize justifiability of data. In this case, security verification is carried out by determining the justifiability of the spare data.
  • As shown in FIG. 7(d), a format #4 comprises an encoded data area, and spare data area to realize concealment and justifiability of data. In this case, security verification is carried out judging from encoding results and justifiability of the spare data.
  • The formats #2-#4 are designated correspondingly to each DF by security format information 504.
  • FIG. 8 is a diagram depicting a message format example of a command that validates security flag 510.
  • The command is composed of single command header area. Immediately after an execution of the command, security flag 510 of the DF definition information is validated.
  • FIG. 9 is an exemplary flowchart depicting process for validating security flag 510 of the DF definition information.
  • Computer 104 sends a command message to CPU 302 via card reader/writer 106 and contact unit 306 to validate security flag 510 (shown in FIG. 6). Next, CPU 302 receives the command message (step S1). CPU 302 collates the format type of the command message. That is, CPU 302 determines whether the received command message is a command message for validating security flag 510 (step S2). When CPU 302 determines that the command message is a command message to validate security flag 510, CPU 302 validates security flag 510 which is included in a DF definition information under a current processing, hereinafter referred to 'current DF' (step S3).
  • FIG. 10 is an exemplary flowchart depicting a process generated by a command message for writing or rewriting.
  • Computer 104 sends a command message for writing or rewriting (shown in FIG. 7(a)-(d)) to CPU 302 via card reader/writer 108 and contact unit 306. Next, CPU 302 receives the command message (step T1). CPU 302 collates the format type of the command message. CPU 302 then determines whether the type of the command message is the format #1 type (step T2). If the message is format #1, CPU 302 determines whether security flag 510 regarding a current DF definition information is validated (step T3). When the security flag 510 is determined not yet to be validated, CPU 302 writes or rewrites as designated by command header area 800 (step T4).
  • Therefore, an unissued IC card can be written or rewritten with data for application operation without satisfying the security function and accordingly issuance becomes highly efficient.
  • When the security flag 510 is determined to be already validated in step T3, CPU 302 sends a reply status indicating "the format type of the received command message is not acceptable." to computer 104 (step T5). Thus format #1 will be refused when security flag 510 is validated.
  • When CPU 302 determines the format type of command message not to be the format #1 (step T2), CPU 302 writes or rewrites data designated by security format information 504 in the current DF definition information using received command message (step T6).
  • CPU 302 then determines whether the command message can pass the verification by the security function (step T7). When the command message passes the verification, CPU 302 writes or rewrites data designated in command header area (step T4).
  • When the command message can not pass the verification, CPU 302 sends a replying status indicating "the received command message is not acceptable" to computer 104 (step T8).
  • As described above, consistent with the principles of the present invention, an unissued IC card can be written with the specific data without satisfying with the security function and the security function becomes valid after the issuance and each IC card requires satisfaction of the security function in case of data writing or data rewriting. That is, a mechanism in which an IC card with which achieves high security during application operation and high efficiency during issuance.
  • Other embodiments of the present invention will be apparent to those skilled in the art from consideration of the specification and practice of the invention disclosed herein. It is intended that the specification and examples be considered as exemplary only, with a true scope of the present invention being indicated by the following claims.

Claims (11)

  1. A portable electronic device containing an application program, comprising:
    executing means (302) adapted for executing a security function against unauthorized use, which security function is validateable by a command message received from outside the device;
    first storing means adapted for storing specific data necessary to use the application program, which specific data are not yet stored in the first storing means, and
    second storing means adapted for storing validity data indicating that the security function is valid after receiving the command, the first and second storing means being implemented in a nonvolatile memory (304); and
    first determining means (302) adapted for determining whether the validity data (506) is stored in the nonvolatile memory;
       characterized by:
    second determining means (302) adapted for determining whether the command message provided from outside the device includes the validity data (506) for the security function; and
    first writing means (302) adapted for writing or rewriting data into the nonvolatile memory (304) following the command message when the first determining means determines the command message does not include the validity data for the security function and when the second determining means determines that the validity data (506) is not already stored in the nonvolatile memory.
  2. The device of claim 1, wherein:
    said specific data necessary to use the application program is a PIN code identifying the owner of the device.
  3. The device of claim 1 or 2, wherein:
    said executing means (302) is adapted to execute a plurality of security functions different from each other depending on corresponding application programs; and
    said specific data necessary to use the application program is a cryptographic key identifying a corresponding application program.
  4. The device of one of claims 1 to 3, wherein:
    said portable electronic device is an IC card (102).
  5. The device of one of claims 1 to 4, further comprising:
    first output means adapted for outputting a status indicating that the command message is not acceptable when the second determining means (302) determines that the command message does not include the validity data for the security function and when the first determining means (302) determines that the validity data is not already stored in the nonvolatile memory (304).
  6. The device of one of claims 1 to 5, further comprising:
    third determining means (302) adapted for determining whether verification of the validity data for the security function has succeeded when the second determining means (302) determines the command message includes the validity data for the security function; and
    second writing means (302) adapted for writing or rewriting data into the nonvolatile memory (304) following the command message when the third determining means determines the verification was successful.
  7. The device of claim 6, further comprising:
    second output means adapted for outputting a status indicating that the command message is not acceptable when the third determining means determines the verification of the validity data for the security function was not successful.
  8. The device of one of claims 6 or 7, wherein a command message acceptable after the validity data was written into the nonvolatile memory, comprises:
    a) a writing or rewriting command,
       data to be written or rewritten into the nonvolatile memory, and
       additional data guaranteeing the justifiability of the data based on verification of the data,
    or comprises alternatively:
    b) a writing or rewriting command, and
       encoded data to be written or rewritten into the nonvolatile memory after being decoded, based on verification of the data,
    or comprises alternatively:
    c) a writing or rewriting command,
       encoded data to be written or rewritten into the nonvolatile memory after being decoded and
       additional data guaranteeing the justifiability of the data,
    wherein the verification of the data is performed based on the encoded data and the additional data.
  9. The device of one of claims 1 to 8, wherein the nonvolatile memory (304) stores a plurality of security programs different from each other depending on a corresponding application program.
  10. The device of claim 9, wherein each security program is separately validated in response to a prescribed command message for validation, and wherein each security program corresponds to an application program.
  11. The device of claim 9 or 10, wherein at least one available format of the command message is separately defined, and wherein each format corresponds to an application program.
EP00102636A 1999-02-08 2000-02-08 Portable electronic device Expired - Lifetime EP1026640B1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2997699 1999-02-08
JP02997699A JP3545627B2 (en) 1999-02-08 1999-02-08 Portable electronic devices

Publications (3)

Publication Number Publication Date
EP1026640A2 EP1026640A2 (en) 2000-08-09
EP1026640A3 EP1026640A3 (en) 2003-09-03
EP1026640B1 true EP1026640B1 (en) 2005-11-30

Family

ID=12291003

Family Applications (1)

Application Number Title Priority Date Filing Date
EP00102636A Expired - Lifetime EP1026640B1 (en) 1999-02-08 2000-02-08 Portable electronic device

Country Status (4)

Country Link
US (1) US7096366B1 (en)
EP (1) EP1026640B1 (en)
JP (1) JP3545627B2 (en)
DE (1) DE60024341T2 (en)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100476876B1 (en) * 2002-11-08 2005-03-17 박정웅 Card provided with a password input key
JP4624732B2 (en) * 2003-07-16 2011-02-02 パナソニック株式会社 how to access
US7590837B2 (en) * 2003-08-23 2009-09-15 Softex Incorporated Electronic device security and tracking system and method
US9336393B2 (en) * 2003-08-23 2016-05-10 Softex Incorporated System and method for protecting files stored on an electronic device
DE102004039828A1 (en) * 2004-08-17 2006-02-23 Giesecke & Devrient Gmbh Local data medium e.g. smart card, security verifying method, involves implementing instruction set in medium, and verifying whether predetermined safety requirements are met for data medium, by using functionalities of set
JP4987459B2 (en) * 2006-12-25 2012-07-25 フェリカネットワークス株式会社 Information processing terminal and computer program
SG146551A1 (en) * 2007-03-29 2008-10-30 Toshiba Kk Portable electronic device and control method of portable electronic device
US9202059B2 (en) 2011-03-01 2015-12-01 Apurva M. Bhansali Methods, systems, and apparatuses for managing a hard drive security system

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS60160491A (en) * 1984-01-31 1985-08-22 Toshiba Corp Ic card
US4744062A (en) * 1985-04-23 1988-05-10 Hitachi, Ltd. Semiconductor integrated circuit with nonvolatile memory
US4800520A (en) * 1985-10-29 1989-01-24 Kabushiki Kaisha Toshiba Portable electronic device with garbage collection function
US4839792A (en) * 1986-06-20 1989-06-13 Kabushiki Kaisha Toshiba Portable electronic apparatus with a device for determining data validity
JP2941361B2 (en) * 1990-06-07 1999-08-25 株式会社東芝 Portable electronic devices
JPH0452890A (en) * 1990-06-15 1992-02-20 Mitsubishi Electric Corp Ic card
FR2666671B1 (en) 1990-09-12 1994-08-05 Gemplus Card Int METHOD FOR MANAGING AN APPLICATION PROGRAM LOADED IN A MICROCIRCUIT MEDIUM.
FR2673476B1 (en) * 1991-01-18 1996-04-12 Gemplus Card Int SECURE METHOD FOR LOADING MULTIPLE APPLICATIONS INTO A MICROPROCESSOR MEMORY CARD.
JPH06274397A (en) * 1993-03-24 1994-09-30 Toshiba Corp File control system
JP3568970B2 (en) * 1993-04-12 2004-09-22 株式会社東芝 IC card issuing device
JPH08263600A (en) * 1995-03-22 1996-10-11 Toshiba Corp Method and device for issuing portable storage medium
EP0798673A1 (en) 1996-03-29 1997-10-01 Koninklijke KPN N.V. Method of securely loading commands in a smart card
EP0795844A1 (en) 1996-03-11 1997-09-17 Koninklijke KPN N.V. Method of securely modifying data on a smart card
EP0798674B1 (en) * 1996-03-29 2002-03-06 Kabushiki Kaisha Toshiba File managing method requiring a change in key data and ic card device using the method
EP0818761A1 (en) 1996-07-12 1998-01-14 Koninklijke KPN N.V. Integrated circuit card, secure application module, system comprising a secure application module and a terminal and a method for controlling service actions to be carried out by the secure application module on the integrated circuit card
DE19650549A1 (en) 1996-12-05 1998-06-10 Ods Gmbh & Co Kg Process for the secure subsequent programming of a microprocessor card for an additional application
US6199762B1 (en) * 1998-05-06 2001-03-13 American Express Travel Related Services Co., Inc. Methods and apparatus for dynamic smartcard synchronization and personalization

Also Published As

Publication number Publication date
DE60024341T2 (en) 2006-08-03
JP2000227946A (en) 2000-08-15
JP3545627B2 (en) 2004-07-21
EP1026640A2 (en) 2000-08-09
US7096366B1 (en) 2006-08-22
DE60024341D1 (en) 2006-01-05
EP1026640A3 (en) 2003-09-03

Similar Documents

Publication Publication Date Title
JP4309479B2 (en) A system for sending values to the magnetic stripe of a transaction card
US7866552B2 (en) Method and system using a bitmap for passing contactless payment card transaction variables in standardized data formats
EP1113387A2 (en) Smart card having a non-volatile memory with a novel mapping
CN100438409C (en) Intelligent card with financial-transaction message processing ability and its method
US20110264580A1 (en) Method and System Using a Bitmap for Passing Contactless Payment Card Transaction Variables in Standardized Data Formats
EP0213534A2 (en) IC card
EP0439609A1 (en) System for collating personal identification number
EP0912953A1 (en) A method and system for using an application programmable smart card for financial transactions in multiple countries
JPH06302180A (en) Data access system for electronic device
JP4891587B2 (en) Portable electronic device, IC card and IC module
JP5833118B2 (en) Electronic ticket storage device, electronic ticket confirmation system and method
EP1026640B1 (en) Portable electronic device
US5828053A (en) Portable storage medium and portable storage medium issuing system
US7942333B2 (en) IC card secure personalization method
US6662283B1 (en) Secure memory management method
JPH0654507B2 (en) Portable electronic device
EP1384197B1 (en) Method of manufacturing smart cards
US20040245331A1 (en) Method and device for processing data for customizing an application of a protable communication device, for example a smart card
US7296289B2 (en) Setting or changing an access condition for an access management apparatus and method of a portable electronic device
WO2001016874A1 (en) Smart card transaction manager
JP4334538B2 (en) IC card
KR100588408B1 (en) System and Method for Auto-deleting Information Stored in Smart Card
JPH06309531A (en) Checking method for instruction format given to ic card
AU2002254795B2 (en) Method of manufacturing smart cards
JPH03160528A (en) Ic card

Legal Events

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

Free format text: ORIGINAL CODE: 0009012

17P Request for examination filed

Effective date: 20000208

AK Designated contracting states

Kind code of ref document: A2

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

AX Request for extension of the european patent

Free format text: AL;LT;LV;MK;RO;SI

PUAL Search report despatched

Free format text: ORIGINAL CODE: 0009013

AK Designated contracting states

Kind code of ref document: A3

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

AX Request for extension of the european patent

Extension state: AL LT LV MK RO SI

RIC1 Information provided on ipc code assigned before grant

Ipc: 7G 07F 7/08 B

Ipc: 7G 07F 7/10 A

Ipc: 7G 07F 19/00 B

17Q First examination report despatched

Effective date: 20040119

AKX Designation fees paid

Designated state(s): DE FR GB

GRAP Despatch of communication of intention to grant a patent

Free format text: ORIGINAL CODE: EPIDOSNIGR1

GRAS Grant fee paid

Free format text: ORIGINAL CODE: EPIDOSNIGR3

GRAA (expected) grant

Free format text: ORIGINAL CODE: 0009210

AK Designated contracting states

Kind code of ref document: B1

Designated state(s): DE FR GB

REG Reference to a national code

Ref country code: GB

Ref legal event code: FG4D

REF Corresponds to:

Ref document number: 60024341

Country of ref document: DE

Date of ref document: 20060105

Kind code of ref document: P

ET Fr: translation filed
PLBE No opposition filed within time limit

Free format text: ORIGINAL CODE: 0009261

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

Free format text: STATUS: NO OPPOSITION FILED WITHIN TIME LIMIT

26N No opposition filed

Effective date: 20060831

PGFP Annual fee paid to national office [announced via postgrant information from national office to epo]

Ref country code: GB

Payment date: 20140206

Year of fee payment: 15

GBPC Gb: european patent ceased through non-payment of renewal fee

Effective date: 20150208

REG Reference to a national code

Ref country code: FR

Ref legal event code: PLFP

Year of fee payment: 17

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: GB

Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES

Effective date: 20150208

REG Reference to a national code

Ref country code: FR

Ref legal event code: PLFP

Year of fee payment: 18

REG Reference to a national code

Ref country code: FR

Ref legal event code: PLFP

Year of fee payment: 19

PGFP Annual fee paid to national office [announced via postgrant information from national office to epo]

Ref country code: DE

Payment date: 20190129

Year of fee payment: 20

Ref country code: FR

Payment date: 20190111

Year of fee payment: 20

REG Reference to a national code

Ref country code: DE

Ref legal event code: R071

Ref document number: 60024341

Country of ref document: DE