CA1245764A - Identification system - Google Patents
Identification systemInfo
- Publication number
- CA1245764A CA1245764A CA000497037A CA497037A CA1245764A CA 1245764 A CA1245764 A CA 1245764A CA 000497037 A CA000497037 A CA 000497037A CA 497037 A CA497037 A CA 497037A CA 1245764 A CA1245764 A CA 1245764A
- Authority
- CA
- Canada
- Prior art keywords
- unit
- card
- rsa
- data
- identification code
- 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
Links
Classifications
-
- G—PHYSICS
- G07—CHECKING-DEVICES
- G07F—COIN-FREED OR LIKE APPARATUS
- G07F7/00—Mechanisms actuated by objects other than coins to free or to actuate vending, hiring, coin or paper currency dispensing or refunding apparatus
- G07F7/08—Mechanisms actuated by objects other than coins to free or to actuate vending, hiring, coin or paper currency dispensing or refunding apparatus by coded identity card or credit card or other personal identification means
- G07F7/10—Mechanisms actuated by objects other than coins to free or to actuate vending, hiring, coin or paper currency dispensing or refunding apparatus by coded identity card or credit card or other personal identification means together with a coded signal, e.g. in the form of personal identification information, like personal identification number [PIN] or biometric data
- G07F7/1008—Active credit-cards provided with means to personalise their use, e.g. with PIN-introduction/comparison system
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/30—Payment architectures, schemes or protocols characterised by the use of specific devices or networks
- G06Q20/34—Payment architectures, schemes or protocols characterised by the use of specific devices or networks using cards, e.g. integrated circuit [IC] cards or magnetic cards
- G06Q20/341—Active cards, i.e. cards including their own processing means, e.g. including an IC or chip
-
- G—PHYSICS
- G07—CHECKING-DEVICES
- G07F—COIN-FREED OR LIKE APPARATUS
- G07F7/00—Mechanisms actuated by objects other than coins to free or to actuate vending, hiring, coin or paper currency dispensing or refunding apparatus
- G07F7/08—Mechanisms actuated by objects other than coins to free or to actuate vending, hiring, coin or paper currency dispensing or refunding apparatus by coded identity card or credit card or other personal identification means
- G07F7/0806—Details of the card
- G07F7/0813—Specific details related to card security
- G07F7/082—Features insuring the integrity of the data on or in the card
Abstract
Abstract of the Disclosure An identification system wherein validity between a first unit and a second unit is identified when the first unit is electrically communicated with the second unit. The first unit includes a generator for generat-ing identification code information, a calculator for calculating, based upon the identification code informa-tion, an estimation time required for processing the identification code information in the second unit, a time counter for measuring an actual time required for completely processing the identification code informa-tion in the second unit, and an unit for identifying validity between said first and second units by com-paring the actual processing time to the estimation pro-cessing time. The second unit includes at least a processor for processing the identification code infor-mation sent from the first unit.
Description
6~
The present invention generally relates to an identification system and, more specifically, to a system suitable for identifying whether or not an identification article such as an IC card, or an article identifying unit is indeed authorized.
A conventional magentic card is well known in such an article identification system. The magnetic card has a magnetic coating strip on which a key code, a confidential number, an account number and so on are magnetically recorded~ These magnetically recorded contents, e.g., the key code are known to at least bank personnel because a card holder as a user has his duty to disclose his key code to the bank. In general, the magnetically recorded information may be relatively easily accessed by anyone.
In view of such an easy access, the private confidential information of the conventional magnetic card may not be kept secret.
Instead of the conventional magnetic card, an IC
card incorporating an IC (integrated circuit) module has recenkly been proposed. ~ccordingly, no one can easily gain access to the confidential information stored in the IC module.
Although it is hard to read out the confidential information from the IC card, there is no way to identify the authorized card holder if the IC card per se is forged.
Moreover, another difficulty exists in whether the IC card terminal as the card identifying unit is authorized or not.
An object of the present invention is to provide an identification system in which when the identification system performs the identification for the apparatus to be identified, this identification can be realized by simple hardware and software and furthermore the con-fidential data cannot be easily anal~ed nor imitated by an authorized person.
The foregoing problems are overcome and other advantages are provided by an identification system wherein validity between a first unit and a second unit is identified when the first unit is electrically com-municated with the seco~nd unit, the first unit includ-ing means for generating identification code information, means for calculating, based upon the identification code information, an estimation time required for pro-cessing the identification code information in the second unit, means for measuring an actual time required for completely processing the identification code infor-mation in the second unit, and means for identifying ~0 validity between the first and second units by com-paring the actual processing time to the estimation pro-cessing time, and the second unit including means for processing the identification code information sent from the first unit.
The aforementioned aspects and other features of the invention are explained in the following descrip-~ tion, taken in connection with the accompanying t' '7~
drawings, wherein:
Fig. 1 is a schematic block diagram of an iden-tification system according to one preferred embodiment of the invention;
Fig. 2 is a schematic block diagram of the card terminal shown in Fig. l;
Fig. 3 is a schematic block diagram of the IC shown in Fig. l;
Figs. 4A and 4B show a flow chart of operations of the card terminal shown in Fig. 2; and Figs. 5A and 5B show a flow chart of operations of the IC card shown in Flg. 3.
BASIC IDEA OF THE INVENTION_ Before proceeding with various embodiments, a basic idea of the present invention will now be summarized.
The identification system according to the present invention is mainly constituted by a first unit and a second unit detachedly and electrically connected to the first unit. The first unit, e.g., an IC card terminal veriEies whether or not the second unit, e.g., an IC
card is authorized in the following way, when the first unit is communicated with the second unit.
The first unit includes:
a generator for generating identification code information such as encryption data;
an estimation device for estimating a time required for processing or decrypting the identification code 7~
information;
a timer unit for measuring an actual time required for processing or decrypting the identiEication code information in the second unit; and a decision unit for deciding whether the second unit is authorized by comparing the actual time with the estimated time.
The second unit includes a processor for processing or decrypting the identification code information.
It should be noted that the functions of both the first -and second units are interchangeable, and any appliances may be applied to the Eirst and second units.
For instance, this identiEication system may be utilized in an IC card system. The first unit corresponds to a card terminal while the second unit corresponds to an IC card. Conversely, the first unit is an IC card including all of the above-described cir-cuit elements and the second unit is a card terminal including the processor.
It is of course possible that for instance, both of an IC card and a card terminal include all of both -the above-described circuit elements, i.e., a combination of the encryptor and the decryptor. That is/ the card ter-minal first produces the encryption data and sends it to the IC card. Then IC card decrypts this encryption data and thereafter produces and transfers another encryption data to the card terminal. Finally the card terminal decrypts this encryption data.
To identify whether the card terminal and/or the IC
card is authorized, these units compare the actually measured time with the estimation time.
ARRANGEMENT OF IDENTIFICATION SYSTEM
Referring now to Fig. 1, one identification system 100 according to the invention ~ill be described.
Fig. 1 shows the system using a card terminal 1 as an identification unit and an IC card 2 incorporating an IC (integrated circuit) module for processing iden-tification data as a unit to be identified.
Identification system 100 is constituted of the following circuitry. When IC card 2 is inserted into card terminal 1, their internal circuits are mutually connected through a connector 3. Card terminal 1 comprises a control unit 11, an identification code generator 12, a processing time estimation unit 13, an actual processing time counter 14, a comparison unit 15, a transmission unit 16, and a reception unit 17. Con-trol unit 11 controls the operations of all blocks ofcard terminal 1 and controls each block in accordance with a predetermined ssquence. Control unit 11 supplies a control signal for identification code generation "ct"
to generator 12, a start signal "st" and a stop signal "sp" to counter 1~, and start signal "st" to trans-mission unit 16. Identification code generator 12 operates in accordance with a command from control unit ~ r~
11 and generates data, namely, identification code as a base which is processed by IC card 2 and outputs this data to processing time estimation unit 13 and trans-mission unit 16. ~nit 13 estimates the processing time of IC card 2 from the identification code generated by generator 12 and supplies the value of this estimated processing time to comparison unit 15. Counter 14 starts the count-up operation in response to the start signal "st" from control unit 11 and thereafter stops the count-ing operation by the stop signal sp and supplies the count value to comparison unit 15. Comparison unit 15 compares the estimated processing time decided by unit 13 with the actual processing time o:E counter 1~ and outputs the result oE the comparison to control unit 11.
Transmission unit 16 operates in response to the start signal "st" from control uni-t 11 and sends the identifi-cation code data generated by generator 12 to IC card 2.
Reception unit 17 receives the result of the process sent from IC card 2 and transmits it to control unit 11.
On the other hand, IC card 2 connected to card ter-minal 1 through connector 3 comprises a receiver end 21, a transmitter end 22, and an identiEication code processor 23. Receiver end 21 receives the identifi-cation code data sent from transmission unit 16 of card terminal 1 and converts the received content to the desirable form which can be processed by processor 23 and then supplies it thereto. Processor 23 processes ~;~f~76~
the identification code data from receiver end 21 in accordance with a specific algorithm which this pro-cessor itself owns and sends the result to reception unit 17 of card terminal 1 from transmitter end 22.
OPERATION OF IDENTIFICATION SYSTME
The operation of identification system 100 will now be described.
When IC card 2 is inserted into card terminal 1, receiver end 21 and transmitter end 22 in IC card 2 are respectively electrically connected to transmission unit 16 and reception unit 17 in card terminal 1 through con-nector 3. When IC card 2 is inserted into card terminal 1 as mentioned above, control unit 11 outputs control signal ct ~or identification code and initializes iden-tification code generator 12. Generator 12 generatesdifferent numerals such as, e.g., random numbers or the like as identification code data "n" every time an IC
card is used, or a personal identification number is keyed-in with using the same IC card, and outputs these numerals to processing time estimation unit 13 and trans-mission unit 16. Unit 13 obtains the theoretical value of the operation processing time or estimated processin~
time in IC card 2 on the basis of identification code data "n" from generator 12. This theoretical value can be obtained by, for instance, setting as follows.
(A) It is assumed that identification code pro-cessor 23 in IC card 2 executes the processing content of the numerical calculation ~n + (~/n) .......... tl) (where, ~ and ~ are constants) (B) It is assumed that processor 23 performs the numerical calculations in combination of several fun-damental operations (multiplication, division, and addi-tion in this example).
In this case, it is assumed that the time required for multiplication is tl, the time required for division is t2, and the time required for addition is t3.
It is assumed that the actual time required Eor the individual operation depends on the architecture and algorithm of processor 23 and is not influenced by the numerical values to be calculated, namely, the numericaJ.
values of the fundamental operations.
tC) It is assumed that the time required to trans-fer data from transmission unit 16 in card terminal 1 to receiver end 21 in IC card 2 and the time required -to transfer data from transmitter end 22 in IC card 2 to reception unit 17 in card terminal 1 are T.
By preliminarily giving the respective elements of times tl, t2, and t3 necessary for various kinds of oper-ations and of transfer time T to processing time estima-tion unit 13 on the basis of the above-mentioned set-ting, the processing time can be estimated by the formula n x tl + 1 x t2 + 1 x t3 + T ..... t2) i7~
g when identification code data "n" was given fro~ genera-tor 12~ In this case, calculating formula (1) itself which is executed in processor 23 in IC card 2 does not need to be stored in processin~ time estimation unit13 in card terminal 1 but it is sufficient that unit 13 stores the information indicating how many times the individual fundamental calculation, for example, n x tl appears.
After processing time estimation unit 13 in card terminal 1 has finished the calculations, control unit 11 outputs start signal "st" and initializes counter 14 and at the same time sends the identification code data "n" generated by generator 12 to receiver end 21 in IC
card 2 from transmission unit 16. IC card 2 transmits the identification code data "n" received by receiver end 21 to processor 23 in IC card 2. The above-mentioned numerical value calculations are executed in processor 23 and the results of the calculations are sent to reception unit 17 in card terminal 1 ~rom trans-mitter end 22. In this case, the identification code data "n" is an encryption data. This encryption data is generated in identification code generator 12 on the basis of the "RSA" encryption system. In other words, identification code generator 12 performs "RSA" type of encryption based upon the "RSA" algorithm.
The resul~s of the calculations sent to reception unit 17 are then sent to control unit 11 as soon as all ;76~
data have been received. When control unit 11 receives the reception data from IC card 2, it outputs stop signal sp to stop the counting operation of counter 14. The actual measurement value of the processing time counted by counter 14 is sent to comparison unit 15 and compared with the theoretical value pre-calculated by processing time estimation unit 13. The result of the comparison of comparison unit 15 is sent to control unit 11 and the processing content to be executed next is decided on the basis of this result of the comparison. Namely, in the case where the processing time of IC card 2 substan-tially coincides with the theoretical value as the result of the comparison o~ comparison unit 15, control unit 11 determines that IC card 2 is the authorized IC card and then instructs the card user to input his personal identification number (PIN) or confidential number. By inputting the correct personal identifi-cation number, the card business such as the sales of articles or the like is then executed. Conversely, in the case where the actual processing time of IC card ~
largely differs from the theoretical value as the result of the comparison of comparison unit 15, control unit 11 determines that IC card 2 is the unauthorized card, so that it returns IC card 2 to the user without performing the subsequent processing steps.
DETAILED DESCRIPTION OF CARD TERMINAL
_ A circuit arrangement of card terminal 1 will be '6~
first described in detail with reference to Fig. 2. In Fig. 2, a bus line 111 is provided. To bus line 111~
there are connected actual processing time counter 14, processing time estimation unit 13, a system program memory 114, control unit 11, a key-in controller 117 to control a key-in unit 116, a display controller 119 to control a display unit 118, and a random number data generator 120. In the store where card terminal 1 is set, the card user inputs his personal identification number (PIN) or confidential number using key-in unit 116. The PIN number input in this way is displayed on display unit 118 under control of display controller ll9. Processing time estimation unit 13 includes a RAM
131 to store operating data.
An RSA encrypter 121 to store a predetermined encryption algorithm on the basis of the foregoing RSA
encryption system is connected to bus line 111. IC card
The present invention generally relates to an identification system and, more specifically, to a system suitable for identifying whether or not an identification article such as an IC card, or an article identifying unit is indeed authorized.
A conventional magentic card is well known in such an article identification system. The magnetic card has a magnetic coating strip on which a key code, a confidential number, an account number and so on are magnetically recorded~ These magnetically recorded contents, e.g., the key code are known to at least bank personnel because a card holder as a user has his duty to disclose his key code to the bank. In general, the magnetically recorded information may be relatively easily accessed by anyone.
In view of such an easy access, the private confidential information of the conventional magnetic card may not be kept secret.
Instead of the conventional magnetic card, an IC
card incorporating an IC (integrated circuit) module has recenkly been proposed. ~ccordingly, no one can easily gain access to the confidential information stored in the IC module.
Although it is hard to read out the confidential information from the IC card, there is no way to identify the authorized card holder if the IC card per se is forged.
Moreover, another difficulty exists in whether the IC card terminal as the card identifying unit is authorized or not.
An object of the present invention is to provide an identification system in which when the identification system performs the identification for the apparatus to be identified, this identification can be realized by simple hardware and software and furthermore the con-fidential data cannot be easily anal~ed nor imitated by an authorized person.
The foregoing problems are overcome and other advantages are provided by an identification system wherein validity between a first unit and a second unit is identified when the first unit is electrically com-municated with the seco~nd unit, the first unit includ-ing means for generating identification code information, means for calculating, based upon the identification code information, an estimation time required for pro-cessing the identification code information in the second unit, means for measuring an actual time required for completely processing the identification code infor-mation in the second unit, and means for identifying ~0 validity between the first and second units by com-paring the actual processing time to the estimation pro-cessing time, and the second unit including means for processing the identification code information sent from the first unit.
The aforementioned aspects and other features of the invention are explained in the following descrip-~ tion, taken in connection with the accompanying t' '7~
drawings, wherein:
Fig. 1 is a schematic block diagram of an iden-tification system according to one preferred embodiment of the invention;
Fig. 2 is a schematic block diagram of the card terminal shown in Fig. l;
Fig. 3 is a schematic block diagram of the IC shown in Fig. l;
Figs. 4A and 4B show a flow chart of operations of the card terminal shown in Fig. 2; and Figs. 5A and 5B show a flow chart of operations of the IC card shown in Flg. 3.
BASIC IDEA OF THE INVENTION_ Before proceeding with various embodiments, a basic idea of the present invention will now be summarized.
The identification system according to the present invention is mainly constituted by a first unit and a second unit detachedly and electrically connected to the first unit. The first unit, e.g., an IC card terminal veriEies whether or not the second unit, e.g., an IC
card is authorized in the following way, when the first unit is communicated with the second unit.
The first unit includes:
a generator for generating identification code information such as encryption data;
an estimation device for estimating a time required for processing or decrypting the identification code 7~
information;
a timer unit for measuring an actual time required for processing or decrypting the identiEication code information in the second unit; and a decision unit for deciding whether the second unit is authorized by comparing the actual time with the estimated time.
The second unit includes a processor for processing or decrypting the identification code information.
It should be noted that the functions of both the first -and second units are interchangeable, and any appliances may be applied to the Eirst and second units.
For instance, this identiEication system may be utilized in an IC card system. The first unit corresponds to a card terminal while the second unit corresponds to an IC card. Conversely, the first unit is an IC card including all of the above-described cir-cuit elements and the second unit is a card terminal including the processor.
It is of course possible that for instance, both of an IC card and a card terminal include all of both -the above-described circuit elements, i.e., a combination of the encryptor and the decryptor. That is/ the card ter-minal first produces the encryption data and sends it to the IC card. Then IC card decrypts this encryption data and thereafter produces and transfers another encryption data to the card terminal. Finally the card terminal decrypts this encryption data.
To identify whether the card terminal and/or the IC
card is authorized, these units compare the actually measured time with the estimation time.
ARRANGEMENT OF IDENTIFICATION SYSTEM
Referring now to Fig. 1, one identification system 100 according to the invention ~ill be described.
Fig. 1 shows the system using a card terminal 1 as an identification unit and an IC card 2 incorporating an IC (integrated circuit) module for processing iden-tification data as a unit to be identified.
Identification system 100 is constituted of the following circuitry. When IC card 2 is inserted into card terminal 1, their internal circuits are mutually connected through a connector 3. Card terminal 1 comprises a control unit 11, an identification code generator 12, a processing time estimation unit 13, an actual processing time counter 14, a comparison unit 15, a transmission unit 16, and a reception unit 17. Con-trol unit 11 controls the operations of all blocks ofcard terminal 1 and controls each block in accordance with a predetermined ssquence. Control unit 11 supplies a control signal for identification code generation "ct"
to generator 12, a start signal "st" and a stop signal "sp" to counter 1~, and start signal "st" to trans-mission unit 16. Identification code generator 12 operates in accordance with a command from control unit ~ r~
11 and generates data, namely, identification code as a base which is processed by IC card 2 and outputs this data to processing time estimation unit 13 and trans-mission unit 16. ~nit 13 estimates the processing time of IC card 2 from the identification code generated by generator 12 and supplies the value of this estimated processing time to comparison unit 15. Counter 14 starts the count-up operation in response to the start signal "st" from control unit 11 and thereafter stops the count-ing operation by the stop signal sp and supplies the count value to comparison unit 15. Comparison unit 15 compares the estimated processing time decided by unit 13 with the actual processing time o:E counter 1~ and outputs the result oE the comparison to control unit 11.
Transmission unit 16 operates in response to the start signal "st" from control uni-t 11 and sends the identifi-cation code data generated by generator 12 to IC card 2.
Reception unit 17 receives the result of the process sent from IC card 2 and transmits it to control unit 11.
On the other hand, IC card 2 connected to card ter-minal 1 through connector 3 comprises a receiver end 21, a transmitter end 22, and an identiEication code processor 23. Receiver end 21 receives the identifi-cation code data sent from transmission unit 16 of card terminal 1 and converts the received content to the desirable form which can be processed by processor 23 and then supplies it thereto. Processor 23 processes ~;~f~76~
the identification code data from receiver end 21 in accordance with a specific algorithm which this pro-cessor itself owns and sends the result to reception unit 17 of card terminal 1 from transmitter end 22.
OPERATION OF IDENTIFICATION SYSTME
The operation of identification system 100 will now be described.
When IC card 2 is inserted into card terminal 1, receiver end 21 and transmitter end 22 in IC card 2 are respectively electrically connected to transmission unit 16 and reception unit 17 in card terminal 1 through con-nector 3. When IC card 2 is inserted into card terminal 1 as mentioned above, control unit 11 outputs control signal ct ~or identification code and initializes iden-tification code generator 12. Generator 12 generatesdifferent numerals such as, e.g., random numbers or the like as identification code data "n" every time an IC
card is used, or a personal identification number is keyed-in with using the same IC card, and outputs these numerals to processing time estimation unit 13 and trans-mission unit 16. Unit 13 obtains the theoretical value of the operation processing time or estimated processin~
time in IC card 2 on the basis of identification code data "n" from generator 12. This theoretical value can be obtained by, for instance, setting as follows.
(A) It is assumed that identification code pro-cessor 23 in IC card 2 executes the processing content of the numerical calculation ~n + (~/n) .......... tl) (where, ~ and ~ are constants) (B) It is assumed that processor 23 performs the numerical calculations in combination of several fun-damental operations (multiplication, division, and addi-tion in this example).
In this case, it is assumed that the time required for multiplication is tl, the time required for division is t2, and the time required for addition is t3.
It is assumed that the actual time required Eor the individual operation depends on the architecture and algorithm of processor 23 and is not influenced by the numerical values to be calculated, namely, the numericaJ.
values of the fundamental operations.
tC) It is assumed that the time required to trans-fer data from transmission unit 16 in card terminal 1 to receiver end 21 in IC card 2 and the time required -to transfer data from transmitter end 22 in IC card 2 to reception unit 17 in card terminal 1 are T.
By preliminarily giving the respective elements of times tl, t2, and t3 necessary for various kinds of oper-ations and of transfer time T to processing time estima-tion unit 13 on the basis of the above-mentioned set-ting, the processing time can be estimated by the formula n x tl + 1 x t2 + 1 x t3 + T ..... t2) i7~
g when identification code data "n" was given fro~ genera-tor 12~ In this case, calculating formula (1) itself which is executed in processor 23 in IC card 2 does not need to be stored in processin~ time estimation unit13 in card terminal 1 but it is sufficient that unit 13 stores the information indicating how many times the individual fundamental calculation, for example, n x tl appears.
After processing time estimation unit 13 in card terminal 1 has finished the calculations, control unit 11 outputs start signal "st" and initializes counter 14 and at the same time sends the identification code data "n" generated by generator 12 to receiver end 21 in IC
card 2 from transmission unit 16. IC card 2 transmits the identification code data "n" received by receiver end 21 to processor 23 in IC card 2. The above-mentioned numerical value calculations are executed in processor 23 and the results of the calculations are sent to reception unit 17 in card terminal 1 ~rom trans-mitter end 22. In this case, the identification code data "n" is an encryption data. This encryption data is generated in identification code generator 12 on the basis of the "RSA" encryption system. In other words, identification code generator 12 performs "RSA" type of encryption based upon the "RSA" algorithm.
The resul~s of the calculations sent to reception unit 17 are then sent to control unit 11 as soon as all ;76~
data have been received. When control unit 11 receives the reception data from IC card 2, it outputs stop signal sp to stop the counting operation of counter 14. The actual measurement value of the processing time counted by counter 14 is sent to comparison unit 15 and compared with the theoretical value pre-calculated by processing time estimation unit 13. The result of the comparison of comparison unit 15 is sent to control unit 11 and the processing content to be executed next is decided on the basis of this result of the comparison. Namely, in the case where the processing time of IC card 2 substan-tially coincides with the theoretical value as the result of the comparison o~ comparison unit 15, control unit 11 determines that IC card 2 is the authorized IC card and then instructs the card user to input his personal identification number (PIN) or confidential number. By inputting the correct personal identifi-cation number, the card business such as the sales of articles or the like is then executed. Conversely, in the case where the actual processing time of IC card ~
largely differs from the theoretical value as the result of the comparison of comparison unit 15, control unit 11 determines that IC card 2 is the unauthorized card, so that it returns IC card 2 to the user without performing the subsequent processing steps.
DETAILED DESCRIPTION OF CARD TERMINAL
_ A circuit arrangement of card terminal 1 will be '6~
first described in detail with reference to Fig. 2. In Fig. 2, a bus line 111 is provided. To bus line 111~
there are connected actual processing time counter 14, processing time estimation unit 13, a system program memory 114, control unit 11, a key-in controller 117 to control a key-in unit 116, a display controller 119 to control a display unit 118, and a random number data generator 120. In the store where card terminal 1 is set, the card user inputs his personal identification number (PIN) or confidential number using key-in unit 116. The PIN number input in this way is displayed on display unit 118 under control of display controller ll9. Processing time estimation unit 13 includes a RAM
131 to store operating data.
An RSA encrypter 121 to store a predetermined encryption algorithm on the basis of the foregoing RSA
encryption system is connected to bus line 111. IC card
2 is also connected to bus line 111 from an IC card interface controller 122 through a connector 123.
Description of IC card 2 is omitted since it has already been explained in detail above.
RSA encrypter 121 is connected to bus line 111 through a register 124 (A-REG) and also connected through a register 125 (B-REG) to an MPUK memor~ 126 in which an MPUK (Manufacturer Public Key Code) is stored or to an IPUK memory 127 in which an IPUK (Issuer Public Rey Code) code is stored. The MPUK code is individually 57~
set by the manufacturer (manufacturing company of card terminal 1). The IP~K code is set by the manufacturer on the basis of an instruction from the issuer (for instance, credit card company that issues the IC card).
Either one of MPUK memory 126 and IPUK memory 127 is designated by a con-trol command which is sent through bus line 111 and its stored code is read out to B-REG
125. RSA encrypter 121 encrypts the data set into A-REG
124 in accordance with the key code read out from B-REG
125 and outputs to bus line 111 and IC card interface controller 122. Bus line 111 and controller 122 are connected to comparison unit 15 through a C re~ister 128 (C-REG) and a D register 129 (D-REG), respectively.
Comparison unit 15 discriminates whether the encrypted data set in C-REG 128 and D-REG 129 coincide or not and outputs the result of the comparison to control unit 11.
DETAILED UESCRIPTION OF IC CARD
.
A circuit arrangement of IC card 2 will then be described with reference to Fig. 3.
In Fig. 3, connector 3 is connected to a bus line 249 through a card terminal interface 52. To bus line 249, there are connected identification code processor 23, a processor RAM 254, a system program ROM 255, an PTN (Retry Number) memory 256 to store the number of retry times of data RTN, and a CA memory 257 in which a CA (Card Authenticator) code is stored. This CA code is the code of, e.g., 64 bits which dif~ers for every card i7~
to identify individual IC card 2. The CA code is set when the IC card is manufactured and used to encrypt and decrypt the message. To bus line 243, there are also connected an MPRK memory 258 to store an MPRK (Manu-facturer Private Key Code~, an IPRK memory 259 to storean IPRK (Issuer Private Key Code), a PIN memory 260 to store the personal identification number (PIN), an a register 261 (a-REG), a b register 262 (b-REG), and an RSA decrypter 263 to decrypt the encryption data en-crypted by RS~ encrypter 121 in Fig. 2 on the basis ofthe RSA encryption system.
The MPRK code which is stored into MPRK memory 258 i5 the code to decrypt the encryption which is set by the manufacturer- This MPRK code corresponds to the MPUK code which is set into MPUK memory 126 in Fig. 2.
The IPUK code which is stored into IPRK memory 259 is the code to decrypt the encryption which is set by the issuer. This IPUK code corresponds to the IPUK code which is set into IPUK memory 127 in Fig. 2. The per-sonal identification number PIN which is stored into PINmemory 260 is set to arbitrary numbers by the card user in a well-known manner. The personal identification number PIN sent from the card terminal is written into a~REG 261 and the data held therein i5 sent to a com-parison unit 264 together with the content set intoPIN memory 260. Comparison unit 264 discriminates whether both input data from PIN memory 260 and a-REG
76~
261 coincide or not and outputs the result of the com-parison to a card controller 265. Card controller 2~5 selects between MPRK memory 258 and IPRK memory 259 in response to the signal from comparison unit 264 and makes RSA decrypter 263 operative. The code read out from MPRK memory 258 or IPRK memory 259 is sent to RSA
decrypter through a c register 266 (c-REG). The data from card terminal 1 (see Figs. 1 and 2) is inputted to RSA decrypter 263 through b-REG 262. RSA decrypter 263 decrypts the data held in b-REG 262 in accordance with the code stored into c-REG 266 from MPRK memory 258 or IPRK memory 259.
DETAILED OPERATIONS OF CARD TERMINAL AND IC CARD
Referring now to ~low charts illustrated in E'iys. 4 and 5, operations of card terminal 1 and IC card 2 as shown in Figs. 2 and 3 will be described in detail.
As an initial condition, store staff or bank clerk turns on card terminal 1 to initialize the internal cir-cuitry of card terminal 1. Then card terminal 1 is ready ~or accepting IC card 2 through connector 3. As shown in step Al in Fig. 4, the entire system is in the waiting condition until personal identification number PIN is input from key-in unit 116. When PIN is input from key-in unit 116 by the card user, card terminal 1 sends this PIN to IC card 2 through IC card interface controller 122 and connector 3 as shown in step A2.
Thereafter, as shown in step A3, the remaining system 7~
enters the waiting condition until an "OK" message or an "INVALID" message is sent from IC card 2.
On one hand, when PIN is sent from card terminal 1, IC card 2 stores this PIN into a-REG 261 as shown in step Bl in Fig. 5. A check is made to see if data rein-put number of times RTN stored in RTN memory 256 has become "5" or not in next step B2. ~hen RTN has already become "5", step B3 follows and the "INVALID" message is sent to card terminal 1 and the processes of the IC card are finished. The content of RTN memory 256 is "0" in the initial condition and the result of the discrimina-tion in step B2 is normally "NO", so that step B4 follows. In step B4, personal identification number PIN
stored in a-REG 261 Erom card terminal 1 is compared with personal identiEication number PIN preset in PIN
memory 260. A check is made to see if both PIN coincide or not in step B5. If NO, step B6 follows and the con-tent of RTN memory 256 is inclemented by "~1". There-after, the "NO" message is sent to card terminal 1 as shown in step B7. If both PIN coincide in step B5, the content of RTN memory 256 is cleared in step ~. As described above, IC card 2 checks the card user to see iE he is the authorized person or not and sends the check message to card terminal 1. Then, in step B10, IC
card 2 enters the waiting condition until the encryption data, i.e., iden-tification code is sen-t from card ter-minal 1.
Description of IC card 2 is omitted since it has already been explained in detail above.
RSA encrypter 121 is connected to bus line 111 through a register 124 (A-REG) and also connected through a register 125 (B-REG) to an MPUK memor~ 126 in which an MPUK (Manufacturer Public Key Code) is stored or to an IPUK memory 127 in which an IPUK (Issuer Public Rey Code) code is stored. The MPUK code is individually 57~
set by the manufacturer (manufacturing company of card terminal 1). The IP~K code is set by the manufacturer on the basis of an instruction from the issuer (for instance, credit card company that issues the IC card).
Either one of MPUK memory 126 and IPUK memory 127 is designated by a con-trol command which is sent through bus line 111 and its stored code is read out to B-REG
125. RSA encrypter 121 encrypts the data set into A-REG
124 in accordance with the key code read out from B-REG
125 and outputs to bus line 111 and IC card interface controller 122. Bus line 111 and controller 122 are connected to comparison unit 15 through a C re~ister 128 (C-REG) and a D register 129 (D-REG), respectively.
Comparison unit 15 discriminates whether the encrypted data set in C-REG 128 and D-REG 129 coincide or not and outputs the result of the comparison to control unit 11.
DETAILED UESCRIPTION OF IC CARD
.
A circuit arrangement of IC card 2 will then be described with reference to Fig. 3.
In Fig. 3, connector 3 is connected to a bus line 249 through a card terminal interface 52. To bus line 249, there are connected identification code processor 23, a processor RAM 254, a system program ROM 255, an PTN (Retry Number) memory 256 to store the number of retry times of data RTN, and a CA memory 257 in which a CA (Card Authenticator) code is stored. This CA code is the code of, e.g., 64 bits which dif~ers for every card i7~
to identify individual IC card 2. The CA code is set when the IC card is manufactured and used to encrypt and decrypt the message. To bus line 243, there are also connected an MPRK memory 258 to store an MPRK (Manu-facturer Private Key Code~, an IPRK memory 259 to storean IPRK (Issuer Private Key Code), a PIN memory 260 to store the personal identification number (PIN), an a register 261 (a-REG), a b register 262 (b-REG), and an RSA decrypter 263 to decrypt the encryption data en-crypted by RS~ encrypter 121 in Fig. 2 on the basis ofthe RSA encryption system.
The MPRK code which is stored into MPRK memory 258 i5 the code to decrypt the encryption which is set by the manufacturer- This MPRK code corresponds to the MPUK code which is set into MPUK memory 126 in Fig. 2.
The IPUK code which is stored into IPRK memory 259 is the code to decrypt the encryption which is set by the issuer. This IPUK code corresponds to the IPUK code which is set into IPUK memory 127 in Fig. 2. The per-sonal identification number PIN which is stored into PINmemory 260 is set to arbitrary numbers by the card user in a well-known manner. The personal identification number PIN sent from the card terminal is written into a~REG 261 and the data held therein i5 sent to a com-parison unit 264 together with the content set intoPIN memory 260. Comparison unit 264 discriminates whether both input data from PIN memory 260 and a-REG
76~
261 coincide or not and outputs the result of the com-parison to a card controller 265. Card controller 2~5 selects between MPRK memory 258 and IPRK memory 259 in response to the signal from comparison unit 264 and makes RSA decrypter 263 operative. The code read out from MPRK memory 258 or IPRK memory 259 is sent to RSA
decrypter through a c register 266 (c-REG). The data from card terminal 1 (see Figs. 1 and 2) is inputted to RSA decrypter 263 through b-REG 262. RSA decrypter 263 decrypts the data held in b-REG 262 in accordance with the code stored into c-REG 266 from MPRK memory 258 or IPRK memory 259.
DETAILED OPERATIONS OF CARD TERMINAL AND IC CARD
Referring now to ~low charts illustrated in E'iys. 4 and 5, operations of card terminal 1 and IC card 2 as shown in Figs. 2 and 3 will be described in detail.
As an initial condition, store staff or bank clerk turns on card terminal 1 to initialize the internal cir-cuitry of card terminal 1. Then card terminal 1 is ready ~or accepting IC card 2 through connector 3. As shown in step Al in Fig. 4, the entire system is in the waiting condition until personal identification number PIN is input from key-in unit 116. When PIN is input from key-in unit 116 by the card user, card terminal 1 sends this PIN to IC card 2 through IC card interface controller 122 and connector 3 as shown in step A2.
Thereafter, as shown in step A3, the remaining system 7~
enters the waiting condition until an "OK" message or an "INVALID" message is sent from IC card 2.
On one hand, when PIN is sent from card terminal 1, IC card 2 stores this PIN into a-REG 261 as shown in step Bl in Fig. 5. A check is made to see if data rein-put number of times RTN stored in RTN memory 256 has become "5" or not in next step B2. ~hen RTN has already become "5", step B3 follows and the "INVALID" message is sent to card terminal 1 and the processes of the IC card are finished. The content of RTN memory 256 is "0" in the initial condition and the result of the discrimina-tion in step B2 is normally "NO", so that step B4 follows. In step B4, personal identification number PIN
stored in a-REG 261 Erom card terminal 1 is compared with personal identiEication number PIN preset in PIN
memory 260. A check is made to see if both PIN coincide or not in step B5. If NO, step B6 follows and the con-tent of RTN memory 256 is inclemented by "~1". There-after, the "NO" message is sent to card terminal 1 as shown in step B7. If both PIN coincide in step B5, the content of RTN memory 256 is cleared in step ~. As described above, IC card 2 checks the card user to see iE he is the authorized person or not and sends the check message to card terminal 1. Then, in step B10, IC
card 2 enters the waiting condition until the encryption data, i.e., iden-tification code is sen-t from card ter-minal 1.
3~4tS~76~
Next, in step A3 in Fig. 4, card terminal 1 is in the waiting condition until the check message is sent from IC card 2 as mentioned above and when the check message is sent from IC card 2, card terminal 1 checks to see if this check message is the "OK" message or not.
If NO, a check is made in step A4 to see if the check message is the "INVALID" message or not. In the case where the "OK" message is not sent and the check message is not the "INVALID" message, it is the "NO" message.
Therefore~ as shown in step A5, an instruction message to input PIN again is displayed in display unit 118. If PIN is not coincident even when it is inputted five times due to the reinput instr~lction, the "INVALID"
message is outputted from IC card 2, so that the card processing is stopped in step A6 from step A4.
If the "OK" message was sent in step A3, a random number is generated from random number data genera-tor 120 as shown in stép A8. This random number is stored into A-REG 124 and C-REG 128 in step A9. Thereafter, in step A10, MPUK memory 126 is selected by terminal con-troller 11 and the MPUK code is stored into B-REG ].25.
As shown in step A11, the random number stored into A-REG 124 is encrypted by the MPUK code stored in B-REG
125 and the encryption data is stored into A-REG 124 in step A12. Then, the IPUK code is read out from IPUK
memory 127 and stored into B-REG 125 in step A13. As shown in step A14, the data stored into A-REG 124 is 76~
again encrypted by RSA encrypter 121 in accordance with the IPUK code stored into B-REG 125 and this encryption data is sent to IC card 2 in step A15, When the resultant encryption data is sent to IC card 2 as men-tioned above, card terminal 1 enters the waitin~ con-dltion in step A16 until the decryption data is sent from IC card 2. In this case, however, actual pro-cessing time counter 14 (see Figs. 1 and 2) is ini-tiali~ed as shown in step A17-1.
When the encryption data is sent to IC card 2 from card terminal 1, IC card 2 detects the encryption data in step B10 in Fig. 5 and stores this encryption data into b-REG 262 in step Bll. In next step B12, the IPRIC
code is read out rom IPRK memory 259 and stored into c-REG 266. The encryption data held in b-REG 262 is decrypted by RSA decrypter 263 by the IPRK code as shown in step B13. In step B14, the decryption data is stored into b-REG 262 and thereafter the MPRK code stored in MPRK memory 258 is stored into c-REG 266 in step B15.
As shown in step B16, the data held in b-REG 262 is decrypted by RS~ decrypter 263 by the MPRK code. The resultant decryption data is sent to card terminal 1 in step B17. In this manner, the processes by IC card 2 are completed.
When the decryption data is sent to card terminal 1 from IC card 2 as described above, card terminal 1 checks to see if the decrypted data from IC card 2 has 57~
been received or not in step A16 in Fig. 4. When the decrypted data has been recei-~ed, the counting operation of actual processing time counter 14 is stopped (step A17-2). Next, the actual processing time for decrypting the encryption data in IC card 2 measured by time count-er 14 is compared with the estimated time sent from pro-cessing time estimation unit 13 by comparison unit 15.
If they substantially coincide or completely coincide, next step A-18 follows. If they are not coincident, the card processing is stopped in step A6.
In step A18, the decrypted data is stored into D-REG 129.
Thereafter, in step A19, the random number stored in C-REG 128 in step A9 is compared with the decrypted data stored in D-REG 129 by comparison unit 15r thereby checking whether they coincide or not :Erom the result of the somparison. If they are not coincident, this means that the data encrypted by card terminal 1 was not cor-rectly decrypted by IC card 2. In this case, however, the decryption processing time is determined to be the authorized time in step A17-3. Namely, this denotes that IC card 2 does not store the correct MPRK or IP~K
or does not have authorized RSA decrypter 263, so that it is determined that this IC card is not the authorized card issued from the authorized manufacturer and issuer and the card processing is stopped as shown in step A6.
The key codes stored in MPUK memory 126 and IPUK memory 127 respectively correspond to the key codes stored into MPRK memory 258 and IPRK memory 259 in IC card 2 by the manufacturer or issuer and are used for encryption based on the RSA algorithm. On the other hand, the key codes stored in MPRK memory 258 and IPRK memory 259 are used for decryption based on the RSA algorithm. Namely, the "PUK" (Public Key Code) and "PRK" (Private Key Code) are the key codes having the one-to-one correspondence rela-tion by a single directional function based on the RSA
10 algorithm. According to the encryption system based on the RSA algorithm, the data encrypted by the "PUK" is fairly hard to be decrypted by the same "PUK" but can be decrypted only by the "PRK" having the corresponding relation due to the function as mentioned above.
The encryption system based on the RSA algorithm has been disclosed in detail in Cael H, Meyer and Stefhen M, Matyas, "CRYPTOGRAOHY" issued by John Wiley &
Sons, Inc., 1982.
If YES in discrimination step Al9, the IC card is proved to be the authorized or valid IC card. Thus, the "OK" message is displayed in display unit 118 and the business by the card is executed (step A21).
The above description of the preferred embodiment will be summarized as follows. Two encrypted key codes, i.e., MPUK and IPUK codes which are determined by the manufacturer and issuer of the IC card respectively are stored in the card terminal. Predetermined data, namely, 7~
random number is encrypted by those two key codes and this encrypted code is sent to the IC card. The IC card decrypts the encrypted data sent from the card terminal by use of two key codes which are stored into the IC
card in correspondence to the specific key codes, i.e., IPUK and MPUIC codes stored in the card terminal. The IC
card then sends the decryptad data to card terminal.
The decrypted data sent from the IC card is detected by the card terminal. Further, in the card terminal, the estimated processing time is pre-calculated on the basis of the encryption data, and the actual decryption pro-cessing time of the IC card is compared with this esti-mated processing time, thereby identiEying the validity of the IC card. Therefore, the IC card is checked twice by two key codes. Even if one key code is stolen, it is difficult to make forged cards unless the other key code is known. Therefore, the forgery of IC cards can be surely avoided. Even in the case of the off-line, it is possible to certainly identiEy that the authorized card ~0 business was performed at the time of the card business~
According to the present inventionl it will be obviously understood that the invention can be realized even if the functions of the IC card and card terminal mentioned above are replaced, respectively.
~5 In the case of the "RSA" encryption system, relia-bility of the encryption data depends on the number of digits of the encrypted key code. It has been known ,,~
7~i~
that there is a tendency that the reliability deteriora~
-tes in a manner of an exponential function if the number of digits is decreased to reduce the burden of the hard-ware of the system. Therefore, according to the iden-tification system of the present invention, it is possi-ble to provide an iden-tiEication system in which even in the case where the number of digits of the encrypted key code is small, the distant apparatus can be identified by the simple hardware and software and also -the encrypt-ed key code cannot be easily analyzed nor imitated.
While the invention has been described above, itshould be understood that the above-described embodiment of the invention is illustrative only, and that modiEi-cations thereof rnay occur to those skilled in the art.
Accordingly, this invention is not to be regarded as limited to the embodiment disclosed herein, but is to be limited only as defined by the appended claims.
For instance, in the embodiment, the decrypted data received in reception unit 17 in card terminal 1 is not processed at all. However, instead of directly transmitting identification code data "n" from card terminal 1, it is also possible to preliminarily perform the functional operation ftn3 in card terminal 1 and calculate its inverse function n' = f~l(n) in iden-tification code processor 23 in IC card 2 and compare nand n'. This method can be applied to the RSA encryp-tion system.
In addition, the embodiment has been described with respect to the case where the invention was embodied to card terminal 1 as the identification unit and IC card 2 as the unit to be identified. However, for example, even in the case where the host computer identifies the terminal device, or the like, the invention can be also similarly embodied.
It is apparent that either the key code IPUK or MPUK may be used to encrypt the random number, while in this case, only the key code IPRK or MPRK is used in the IC card.
Next, in step A3 in Fig. 4, card terminal 1 is in the waiting condition until the check message is sent from IC card 2 as mentioned above and when the check message is sent from IC card 2, card terminal 1 checks to see if this check message is the "OK" message or not.
If NO, a check is made in step A4 to see if the check message is the "INVALID" message or not. In the case where the "OK" message is not sent and the check message is not the "INVALID" message, it is the "NO" message.
Therefore~ as shown in step A5, an instruction message to input PIN again is displayed in display unit 118. If PIN is not coincident even when it is inputted five times due to the reinput instr~lction, the "INVALID"
message is outputted from IC card 2, so that the card processing is stopped in step A6 from step A4.
If the "OK" message was sent in step A3, a random number is generated from random number data genera-tor 120 as shown in stép A8. This random number is stored into A-REG 124 and C-REG 128 in step A9. Thereafter, in step A10, MPUK memory 126 is selected by terminal con-troller 11 and the MPUK code is stored into B-REG ].25.
As shown in step A11, the random number stored into A-REG 124 is encrypted by the MPUK code stored in B-REG
125 and the encryption data is stored into A-REG 124 in step A12. Then, the IPUK code is read out from IPUK
memory 127 and stored into B-REG 125 in step A13. As shown in step A14, the data stored into A-REG 124 is 76~
again encrypted by RSA encrypter 121 in accordance with the IPUK code stored into B-REG 125 and this encryption data is sent to IC card 2 in step A15, When the resultant encryption data is sent to IC card 2 as men-tioned above, card terminal 1 enters the waitin~ con-dltion in step A16 until the decryption data is sent from IC card 2. In this case, however, actual pro-cessing time counter 14 (see Figs. 1 and 2) is ini-tiali~ed as shown in step A17-1.
When the encryption data is sent to IC card 2 from card terminal 1, IC card 2 detects the encryption data in step B10 in Fig. 5 and stores this encryption data into b-REG 262 in step Bll. In next step B12, the IPRIC
code is read out rom IPRK memory 259 and stored into c-REG 266. The encryption data held in b-REG 262 is decrypted by RSA decrypter 263 by the IPRK code as shown in step B13. In step B14, the decryption data is stored into b-REG 262 and thereafter the MPRK code stored in MPRK memory 258 is stored into c-REG 266 in step B15.
As shown in step B16, the data held in b-REG 262 is decrypted by RS~ decrypter 263 by the MPRK code. The resultant decryption data is sent to card terminal 1 in step B17. In this manner, the processes by IC card 2 are completed.
When the decryption data is sent to card terminal 1 from IC card 2 as described above, card terminal 1 checks to see if the decrypted data from IC card 2 has 57~
been received or not in step A16 in Fig. 4. When the decrypted data has been recei-~ed, the counting operation of actual processing time counter 14 is stopped (step A17-2). Next, the actual processing time for decrypting the encryption data in IC card 2 measured by time count-er 14 is compared with the estimated time sent from pro-cessing time estimation unit 13 by comparison unit 15.
If they substantially coincide or completely coincide, next step A-18 follows. If they are not coincident, the card processing is stopped in step A6.
In step A18, the decrypted data is stored into D-REG 129.
Thereafter, in step A19, the random number stored in C-REG 128 in step A9 is compared with the decrypted data stored in D-REG 129 by comparison unit 15r thereby checking whether they coincide or not :Erom the result of the somparison. If they are not coincident, this means that the data encrypted by card terminal 1 was not cor-rectly decrypted by IC card 2. In this case, however, the decryption processing time is determined to be the authorized time in step A17-3. Namely, this denotes that IC card 2 does not store the correct MPRK or IP~K
or does not have authorized RSA decrypter 263, so that it is determined that this IC card is not the authorized card issued from the authorized manufacturer and issuer and the card processing is stopped as shown in step A6.
The key codes stored in MPUK memory 126 and IPUK memory 127 respectively correspond to the key codes stored into MPRK memory 258 and IPRK memory 259 in IC card 2 by the manufacturer or issuer and are used for encryption based on the RSA algorithm. On the other hand, the key codes stored in MPRK memory 258 and IPRK memory 259 are used for decryption based on the RSA algorithm. Namely, the "PUK" (Public Key Code) and "PRK" (Private Key Code) are the key codes having the one-to-one correspondence rela-tion by a single directional function based on the RSA
10 algorithm. According to the encryption system based on the RSA algorithm, the data encrypted by the "PUK" is fairly hard to be decrypted by the same "PUK" but can be decrypted only by the "PRK" having the corresponding relation due to the function as mentioned above.
The encryption system based on the RSA algorithm has been disclosed in detail in Cael H, Meyer and Stefhen M, Matyas, "CRYPTOGRAOHY" issued by John Wiley &
Sons, Inc., 1982.
If YES in discrimination step Al9, the IC card is proved to be the authorized or valid IC card. Thus, the "OK" message is displayed in display unit 118 and the business by the card is executed (step A21).
The above description of the preferred embodiment will be summarized as follows. Two encrypted key codes, i.e., MPUK and IPUK codes which are determined by the manufacturer and issuer of the IC card respectively are stored in the card terminal. Predetermined data, namely, 7~
random number is encrypted by those two key codes and this encrypted code is sent to the IC card. The IC card decrypts the encrypted data sent from the card terminal by use of two key codes which are stored into the IC
card in correspondence to the specific key codes, i.e., IPUK and MPUIC codes stored in the card terminal. The IC
card then sends the decryptad data to card terminal.
The decrypted data sent from the IC card is detected by the card terminal. Further, in the card terminal, the estimated processing time is pre-calculated on the basis of the encryption data, and the actual decryption pro-cessing time of the IC card is compared with this esti-mated processing time, thereby identiEying the validity of the IC card. Therefore, the IC card is checked twice by two key codes. Even if one key code is stolen, it is difficult to make forged cards unless the other key code is known. Therefore, the forgery of IC cards can be surely avoided. Even in the case of the off-line, it is possible to certainly identiEy that the authorized card ~0 business was performed at the time of the card business~
According to the present inventionl it will be obviously understood that the invention can be realized even if the functions of the IC card and card terminal mentioned above are replaced, respectively.
~5 In the case of the "RSA" encryption system, relia-bility of the encryption data depends on the number of digits of the encrypted key code. It has been known ,,~
7~i~
that there is a tendency that the reliability deteriora~
-tes in a manner of an exponential function if the number of digits is decreased to reduce the burden of the hard-ware of the system. Therefore, according to the iden-tification system of the present invention, it is possi-ble to provide an iden-tiEication system in which even in the case where the number of digits of the encrypted key code is small, the distant apparatus can be identified by the simple hardware and software and also -the encrypt-ed key code cannot be easily analyzed nor imitated.
While the invention has been described above, itshould be understood that the above-described embodiment of the invention is illustrative only, and that modiEi-cations thereof rnay occur to those skilled in the art.
Accordingly, this invention is not to be regarded as limited to the embodiment disclosed herein, but is to be limited only as defined by the appended claims.
For instance, in the embodiment, the decrypted data received in reception unit 17 in card terminal 1 is not processed at all. However, instead of directly transmitting identification code data "n" from card terminal 1, it is also possible to preliminarily perform the functional operation ftn3 in card terminal 1 and calculate its inverse function n' = f~l(n) in iden-tification code processor 23 in IC card 2 and compare nand n'. This method can be applied to the RSA encryp-tion system.
In addition, the embodiment has been described with respect to the case where the invention was embodied to card terminal 1 as the identification unit and IC card 2 as the unit to be identified. However, for example, even in the case where the host computer identifies the terminal device, or the like, the invention can be also similarly embodied.
It is apparent that either the key code IPUK or MPUK may be used to encrypt the random number, while in this case, only the key code IPRK or MPRK is used in the IC card.
Claims (14)
1. An identification system wherein validity be-tween a first unit and a second unit is identified when the first unit is electrically communicated with the second unit, said first unit including:
means for generating identification code infor-mation;
means for calculating, based upon the identifica-tion code information, an estimation time required for processing the identification code information in the second unit;
means for measuring an actual time required for completely processing the identification code infor-mation in the second unit, and means for identifying validity between said first and second units by comparing the actual processing time to the estimation processing time; and said second unit including:
means for processing the identification code infor-mation sent from said first unit.
means for generating identification code infor-mation;
means for calculating, based upon the identifica-tion code information, an estimation time required for processing the identification code information in the second unit;
means for measuring an actual time required for completely processing the identification code infor-mation in the second unit, and means for identifying validity between said first and second units by comparing the actual processing time to the estimation processing time; and said second unit including:
means for processing the identification code infor-mation sent from said first unit.
2. A system as claimed in claim 1, wherein when the actual processing time is substantially equal to the estimation processing time, validity between said first and second units is identified in the identifying means.
3. A system as claimed in claim 1, wherein the identification code generating means of said first unit includes:
means for generating random number data in relation to the communicated second unit, and an encryptor for producing encryption data as the identification code data based upon the random number data.
means for generating random number data in relation to the communicated second unit, and an encryptor for producing encryption data as the identification code data based upon the random number data.
4. A system as claimed in claim 3, wherein the encryptor is an RSA encryptor utilizing an RSA data encryption algorithm.
5. A system as claimed in claim 4, further com-prising:
a first memory for storing a manufacture public key code (MPUK), and a second memory for storing an issuer public key code (IPUK), whereby the RSA encryptor encrypts the ran-dom number data by utilizing said MPUK and IPUK codes in accordance with the RSA data encryption algorithm.
a first memory for storing a manufacture public key code (MPUK), and a second memory for storing an issuer public key code (IPUK), whereby the RSA encryptor encrypts the ran-dom number data by utilizing said MPUK and IPUK codes in accordance with the RSA data encryption algorithm.
6. A system as claimed in claim 1, wherein said identification code information generating means in-cludes an encryptor for producing encryption data corresponding to the identification code information.
7. A system as claimed in claim 6, wherein the encryptor is an RSA encryptor utilizing an RSA data encryption algorithm and a first memory is provided with the RSA encryptor for storing a specific encryption key code, whereby said RSA encryptor produces the encryption data by utilizing the specific encryption key code stored in the first memory.
8. A system as claimed in claim 1, wherein the estimation processing time is determined only by an architecture and also a processing algorithm of the identification code information processing means of said second unit.
9. A system as claimed in claim 1, wherein the identification code processing means of said second unit includes a decryptor for decrypting the identification code information sent from the first unit.
10. A system as claimed in claim 9, wherein the decryptor is an RSA decryptor utilizing an RSA data decryption algorithm.
11. A system as claimed in claim 10, further comprising:
a third memory for storing an issuer private key code (IPRK), and a fourth memory for storing a manufacture private key code (MPRK), whereby the RSA decryptor decrypts the identification code information sent from the first unit by utilizing said IPRK and MPRK codes in accordance with the RSA data decryption algorithm.
a third memory for storing an issuer private key code (IPRK), and a fourth memory for storing a manufacture private key code (MPRK), whereby the RSA decryptor decrypts the identification code information sent from the first unit by utilizing said IPRK and MPRK codes in accordance with the RSA data decryption algorithm.
12. A system as claimed in claim 7, wherein the decryptor is an RSA decryptor utilizing an RSA data de-cryption algorithm and a second memory is provided with the RSA decryptor for storing a specific decryption key code, whereby said RSA decryptor decrypts the encryption data by utilizing the specific decryption key code stored in the second memory.
13. A system as claimed in claim 1, wherein said first unit is an IC card terminal and said second unit is an IC card.
14. A system as claimed in claim 13, wherein the IC card terminal is initialized by receiving a personal identification number when electrically communicated with the IC card.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP59263331A JPS61139873A (en) | 1984-12-13 | 1984-12-13 | Authorization system |
JP263331/84 | 1984-12-13 |
Publications (1)
Publication Number | Publication Date |
---|---|
CA1245764A true CA1245764A (en) | 1988-11-29 |
Family
ID=17387985
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CA000497037A Expired CA1245764A (en) | 1984-12-13 | 1985-12-06 | Identification system |
Country Status (7)
Country | Link |
---|---|
US (1) | US4710613A (en) |
EP (1) | EP0186038B1 (en) |
JP (1) | JPS61139873A (en) |
AT (1) | ATE61680T1 (en) |
CA (1) | CA1245764A (en) |
DE (1) | DE3582131D1 (en) |
FR (1) | FR2574963B1 (en) |
Families Citing this family (58)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4926480A (en) * | 1983-08-22 | 1990-05-15 | David Chaum | Card-computer moderated systems |
US4856062A (en) * | 1984-11-30 | 1989-08-08 | Kenneth Weiss | Computing and indicating device |
EP0218176B1 (en) * | 1985-10-07 | 1991-11-13 | Kabushiki Kaisha Toshiba | Portable electronic device |
JP2658018B2 (en) * | 1986-03-12 | 1997-09-30 | カシオ計算機株式会社 | Power supply control method |
JPS62251963A (en) * | 1986-04-25 | 1987-11-02 | Casio Comput Co Ltd | Certificating system for ic card |
JPS6356785A (en) * | 1986-08-28 | 1988-03-11 | Toshiba Corp | Portable storage medium processor |
DE3736882C2 (en) * | 1987-10-30 | 1997-04-30 | Gao Ges Automation Org | Method for checking the authenticity of a data carrier with an integrated circuit |
ES2041772T3 (en) * | 1987-12-17 | 1993-12-01 | Siemens Aktiengesellschaft | PROCEDURE AND DATA SUPPORT DEVICE FOR THE RECOGNITION OF THE LEGITIMACY OF MEMORY CHIPS. |
US4896319A (en) * | 1988-03-31 | 1990-01-23 | American Telephone And Telegraph Company, At&T Bell Laboratories | Identification and authentication of end user systems for packet communications network services |
US4922486A (en) * | 1988-03-31 | 1990-05-01 | American Telephone And Telegraph Company | User to network interface protocol for packet communications networks |
JP2595314B2 (en) * | 1988-06-30 | 1997-04-02 | 三菱電機株式会社 | IC card with erroneous writing prevention function |
US5109152A (en) * | 1988-07-13 | 1992-04-28 | Matsushita Electric Industrial Co., Ltd. | Communication apparatus |
US5239166A (en) * | 1989-01-17 | 1993-08-24 | Graves Marcel A | Secure data interchange system erasing a card memory upon an invalid response |
JPH04143881A (en) * | 1990-10-05 | 1992-05-18 | Toshiba Corp | Mutual authenticating system |
US6166650A (en) * | 1991-05-29 | 2000-12-26 | Microchip Technology, Inc. | Secure self learning system |
JP3329496B2 (en) * | 1992-11-04 | 2002-09-30 | 富士通株式会社 | IC card |
US5351293A (en) * | 1993-02-01 | 1994-09-27 | Wave Systems Corp. | System method and apparatus for authenticating an encrypted signal |
US5907597A (en) * | 1994-08-05 | 1999-05-25 | Smart Tone Authentication, Inc. | Method and system for the secure communication of data |
US5583933A (en) * | 1994-08-05 | 1996-12-10 | Mark; Andrew R. | Method and apparatus for the secure communication of data |
US5841866A (en) * | 1994-09-30 | 1998-11-24 | Microchip Technology Incorporated | Secure token integrated circuit and method of performing a secure authentication function or transaction |
US5915023A (en) * | 1997-01-06 | 1999-06-22 | Bernstein; Robert | Automatic portable account controller for remotely arranging for transfer of value to a recipient |
US5591949A (en) * | 1995-01-06 | 1997-01-07 | Bernstein; Robert J. | Automatic portable account controller for remotely arranging for payment of debt to a vendor |
DE19507044C2 (en) * | 1995-03-01 | 2000-04-06 | Deutsche Telekom Ag | Process for generating and distributing personal identification numbers (PIN) |
US5594227A (en) * | 1995-03-28 | 1997-01-14 | Microsoft Corporation | System and method for protecting unauthorized access to data contents |
FR2733379B1 (en) * | 1995-04-20 | 1997-06-20 | Gemplus Card Int | PROCESS FOR GENERATING ELECTRONIC SIGNATURES, ESPECIALLY FOR SMART CARDS |
CA2193846C (en) | 1995-05-17 | 2004-02-17 | Bradford L. Farris | Rolling code security system |
US6980655B2 (en) | 2000-01-21 | 2005-12-27 | The Chamberlain Group, Inc. | Rolling code security system |
US6690796B1 (en) | 1995-05-17 | 2004-02-10 | The Chamberlain Group, Inc. | Rolling code security system |
US7492905B2 (en) | 1995-05-17 | 2009-02-17 | The Chamberlain Group, Inc. | Rolling code security system |
FR2739737B1 (en) * | 1995-10-09 | 1997-11-21 | Inside Technologies | MEMORY CARD IMPROVEMENTS |
US6108326A (en) * | 1997-05-08 | 2000-08-22 | Microchip Technology Incorporated | Microchips and remote control devices comprising same |
FR2764413B1 (en) * | 1997-06-10 | 1999-07-09 | Sgs Thomson Microelectronics | INTEGRATED CIRCUIT AUTHENTICATION METHOD |
US7743262B2 (en) * | 1997-07-15 | 2010-06-22 | Silverbrook Research Pty Ltd | Integrated circuit incorporating protection from power supply attacks |
SG116449A1 (en) * | 1997-07-15 | 2005-11-28 | Silverbrook Res Pty Ltd | Ink and media cartridge with axial ink chambers. |
US7249108B1 (en) * | 1997-07-15 | 2007-07-24 | Silverbrook Research Pty Ltd | Validation protocol and system |
US7246098B1 (en) * | 1997-07-15 | 2007-07-17 | Silverbrook Research Pty Ltd | Consumable authentication protocol and system |
US7346586B1 (en) * | 1997-07-15 | 2008-03-18 | Silverbrook Research Pty Ltd | Validation protocol and system |
DE59900243D1 (en) * | 1998-02-16 | 2001-10-11 | Swisscom Mobile Ag | IDENTIFICATION CARD AND SETTLEMENT METHOD WITH AN IDENTIFICATION CARD |
EP1082710A1 (en) | 1998-06-05 | 2001-03-14 | Landis & Gyr Communications S.A. | Preloaded ic-card and method for authenticating the same |
JP4289710B2 (en) * | 1999-03-01 | 2009-07-01 | ローム株式会社 | Communication system having authentication function |
FR2795836A1 (en) * | 1999-06-30 | 2001-01-05 | Bull Cp8 | Method of evaluation of timing of data processing device by executing program contained in memory while adding time of execution to form accumulated value of time during such operation |
SG95612A1 (en) * | 1999-12-24 | 2003-04-23 | Kent Ridge Digital Labs | Remote authentication based on exchanging signals representing biometrics information |
JP4501197B2 (en) * | 2000-01-07 | 2010-07-14 | ソニー株式会社 | Information portable processing system, information portable device access device and information portable device |
FR2803674B1 (en) * | 2000-01-12 | 2002-04-19 | Schlumberger Systems & Service | ELECTRONIC CHIP FOR PORTABLE OBJECT |
US7814212B1 (en) * | 2000-04-28 | 2010-10-12 | Chan Hark C | Data delivery system using local and remote communications |
DE10041669A1 (en) * | 2000-08-10 | 2002-02-21 | Deutsche Telekom Ag | Authentication method for chip card, involves determining authenticity of chip card by comparing time dependent output signals of chip card with predetermined time dependent reference signals |
EP1383047A1 (en) * | 2002-07-18 | 2004-01-21 | Cp8 | Method for the secure execution of a program against attacks by radiation or other means |
FR2847695B1 (en) * | 2002-11-25 | 2005-03-11 | Oberthur Card Syst Sa | SECURE ELECTRONIC ENTITY INTEGRATING THE MANAGEMENT OF THE LIFE OF AN OBJECT |
US20060075254A1 (en) * | 2004-09-27 | 2006-04-06 | Cisco Technology, Inc. (A California Corporation) | Smart card functionality from a security co-processor and symmetric key in ROM |
US8422667B2 (en) | 2005-01-27 | 2013-04-16 | The Chamberlain Group, Inc. | Method and apparatus to facilitate transmission of an encrypted rolling code |
US9148409B2 (en) | 2005-06-30 | 2015-09-29 | The Chamberlain Group, Inc. | Method and apparatus to facilitate message transmission and reception using different transmission characteristics |
US9258385B2 (en) * | 2007-09-25 | 2016-02-09 | Infineon Technologies Ag | Method for loading a program module into a network device and network with network devices |
US20130333051A1 (en) * | 2011-03-04 | 2013-12-12 | Nec Corporation | Random value identification device, random value identification system, and random value identification method |
JP6065284B2 (en) * | 2012-02-22 | 2017-01-25 | パナソニックIpマネジメント株式会社 | Reader device, data processing device equipped with the reader device, and authenticity determination method |
US10652743B2 (en) | 2017-12-21 | 2020-05-12 | The Chamberlain Group, Inc. | Security system for a moveable barrier operator |
US11074773B1 (en) | 2018-06-27 | 2021-07-27 | The Chamberlain Group, Inc. | Network-based control of movable barrier operators for autonomous vehicles |
WO2020028502A1 (en) | 2018-08-01 | 2020-02-06 | The Chamberlain Group, Inc. | Movable barrier operator and transmitter pairing over a network |
US10997810B2 (en) | 2019-05-16 | 2021-05-04 | The Chamberlain Group, Inc. | In-vehicle transmitter training |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
SE381940B (en) * | 1972-04-11 | 1975-12-22 | Gretag Ag | DEVICE FOR INDIVIDUAL IDENTIFICATION OF A MAJORITY OF INDIVIDUALS |
FR2311360A1 (en) * | 1975-05-13 | 1976-12-10 | Innovation Ste Int | SYSTEM FOR STORING DATA CONFIDENTIALLY BY MEANS OF PORTABLE ELECTRONIC OBJECTS INCLUDING A CONFIDENTIAL CODE ERROR MEMORIZATION CIRCUIT |
US4123747A (en) * | 1977-05-20 | 1978-10-31 | International Business Machines Corporation | Identity verification method and apparatus |
FR2471003B1 (en) * | 1979-11-30 | 1986-01-24 | Dassault Electronique | PORTABLE OBJECT SYSTEM PRESENTING CONFIDENTIAL INFORMATION AND READING THIS INFORMATION, PARTICULARLY FOR FINANCIAL AND / OR COMMERCIAL TRANSACTIONS |
US4529870A (en) * | 1980-03-10 | 1985-07-16 | David Chaum | Cryptographic identification, financial transaction, and credential device |
US4423287A (en) * | 1981-06-26 | 1983-12-27 | Visa U.S.A., Inc. | End-to-end encryption system and method of operation |
-
1984
- 1984-12-13 JP JP59263331A patent/JPS61139873A/en active Granted
-
1985
- 1985-12-04 US US06/805,187 patent/US4710613A/en not_active Expired - Fee Related
- 1985-12-06 CA CA000497037A patent/CA1245764A/en not_active Expired
- 1985-12-10 AT AT85115722T patent/ATE61680T1/en active
- 1985-12-10 EP EP85115722A patent/EP0186038B1/en not_active Expired - Lifetime
- 1985-12-10 DE DE8585115722T patent/DE3582131D1/en not_active Expired - Fee Related
- 1985-12-13 FR FR858518546A patent/FR2574963B1/en not_active Expired
Also Published As
Publication number | Publication date |
---|---|
JPH0533416B2 (en) | 1993-05-19 |
DE3582131D1 (en) | 1991-04-18 |
EP0186038A3 (en) | 1988-08-17 |
ATE61680T1 (en) | 1991-03-15 |
EP0186038A2 (en) | 1986-07-02 |
EP0186038B1 (en) | 1991-03-13 |
US4710613A (en) | 1987-12-01 |
JPS61139873A (en) | 1986-06-27 |
FR2574963B1 (en) | 1989-12-15 |
FR2574963A1 (en) | 1986-06-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CA1245764A (en) | Identification system | |
US4650975A (en) | IC card and an identification system thereof | |
US4317957A (en) | System for authenticating users and devices in on-line transaction networks | |
EP0216298B1 (en) | Identification system | |
US5036461A (en) | Two-way authentication system between user's smart card and issuer-specific plug-in application modules in multi-issued transaction device | |
EP0007002B1 (en) | Transaction terminal systems provided with potential user authentication | |
US5146499A (en) | Data processing system comprising authentification means viz a viz a smart card, an electronic circuit for use in such system, and a procedure for implementing such authentification | |
US4259720A (en) | Security system for electronic funds transfer system | |
US4752677A (en) | Customer service system for use in IC card system | |
US4961142A (en) | Multi-issuer transaction device with individual identification verification plug-in application modules for each issuer | |
US4304990A (en) | Multilevel security apparatus and method | |
US4408203A (en) | Security system for electronic funds transfer system | |
EP0363122B1 (en) | Transaction authentication system | |
US6816058B2 (en) | Bio-metric smart card, bio-metric smart card reader and method of use | |
JP4095680B2 (en) | Security management method for card type storage device and card type storage device | |
EP0138386B1 (en) | Identification card | |
EP0723251A2 (en) | Method and apparatus for user and security device authentication | |
JPH0670818B2 (en) | Verification card and its authentication method | |
JPH0315786B2 (en) | ||
HUT63931A (en) | Method and apparatus for validating active cards, as well as machine operating by said apparatus | |
JPS61502999A (en) | Safety system and method for remote terminal networks | |
EP0211369B1 (en) | Ic card system employing remote pin entry card | |
JPH07505023A (en) | Apparatus and method for data encryption and transmission | |
JPH1020778A (en) | Encoding device, decoding device and ic card | |
KR100187518B1 (en) | Authentication apparatus of ic card terminal using dual card |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
MKEX | Expiry |