DE3780070T2 - PIN CHECK TIME DETERMINATION COMPREHENSIVE CHIP CARD IDENTIFICATION SYSTEM. - Google Patents
PIN CHECK TIME DETERMINATION COMPREHENSIVE CHIP CARD IDENTIFICATION SYSTEM.Info
- Publication number
- DE3780070T2 DE3780070T2 DE8787105926T DE3780070T DE3780070T2 DE 3780070 T2 DE3780070 T2 DE 3780070T2 DE 8787105926 T DE8787105926 T DE 8787105926T DE 3780070 T DE3780070 T DE 3780070T DE 3780070 T2 DE3780070 T2 DE 3780070T2
- Authority
- DE
- Germany
- Prior art keywords
- pin
- identification number
- card
- addresses
- data
- 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 - Fee Related
Links
- 238000012545 processing Methods 0.000 claims abstract description 39
- 238000000034 method Methods 0.000 claims description 14
- 230000004044 response Effects 0.000 claims description 8
- 238000010586 diagram Methods 0.000 description 4
- 238000012360 testing method Methods 0.000 description 3
- 102100040605 1,2-dihydroxy-3-keto-5-methylthiopentene dioxygenase Human genes 0.000 description 1
- 101100023121 Arabidopsis thaliana MFDX1 gene Proteins 0.000 description 1
- 101100023122 Arabidopsis thaliana MFDX2 gene Proteins 0.000 description 1
- 101000966793 Homo sapiens 1,2-dihydroxy-3-keto-5-methylthiopentene dioxygenase Proteins 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 239000011248 coating agent Substances 0.000 description 1
- 238000000576 coating method Methods 0.000 description 1
- 230000001010 compromised effect Effects 0.000 description 1
- 101150031113 fdxB gene Proteins 0.000 description 1
- 239000012467 final product Substances 0.000 description 1
- 238000011835 investigation Methods 0.000 description 1
- 230000001681 protective effect Effects 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
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/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/1025—Identification of user by a PIN code
-
- 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/1025—Identification of user by a PIN code
- G07F7/1083—Counting of PIN attempts
Landscapes
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Business, Economics & Management (AREA)
- General Business, Economics & Management (AREA)
- Computer Networks & Wireless Communication (AREA)
- Accounting & Taxation (AREA)
- Strategic Management (AREA)
- Microelectronics & Electronic Packaging (AREA)
- Theoretical Computer Science (AREA)
- Credit Cards Or The Like (AREA)
- Storage Device Security (AREA)
- Pinball Game Machines (AREA)
- Coupling Device And Connection With Printed Circuit (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
- Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
Abstract
Description
Die vorliegende Erfindung betrifft ein Identifikationssystem für Chipkarten.The present invention relates to an identification system for chip cards.
Eine herkömmliche Magnetkarte ist als ein derartiges Gegenstandsidentifikationssystem wohlbekannt. Die Magnetkarte weist einen magnetischen Beschichtungsstreifen auf, auf dem ein Schlüsselkode, eine Geheimzahl, eine Kontonummer etc. magnetisch aufgezeichnet sind. Diese magnetisch aufgezeichneten Inhalte, z.B. der Schlüsselkode sind zumindest dem Bankpersonal bekannt, da ein Karteninhaber der Bank gegenüber seinen Schlüsselkode bekanntgeben muß. Überdies kann auf die magnetisch aufgezeichneten Informationen von jedermann verhältnismäßig leicht zugegriffen werden. Im Hinblick auf derartig leichte Zugreifbarkeit lassen sich die privaten Geheiminformationen auf der herkömmlichen Magnetkarte nicht zuverlässig geheimgehalten.A conventional magnetic card is well known as such an object identification system. The magnetic card has a magnetic coating strip on which a key code, a secret number, an account number, etc. are magnetically recorded. These magnetically recorded contents, e.g. the key code, are known at least to the bank personnel, since a cardholder must disclose his key code to the bank. Moreover, the magnetically recorded information can be accessed relatively easily by anyone. In view of such easy accessibility, the private secret information on the conventional magnetic card cannot be reliably kept secret.
Anstelle einer herkömmlichen Magnetkarte wurde vor kurzem eine Chipkarte mit einem IC-Modul (IC = integrierter Schaltkreis) in FR-A-2471003 vorgeschlagen. Entsprechend kann niemand leicht Zugriff auf die in dem IC-Modul gespeicherten Geheiminformationen erlangen.Instead of a conventional magnetic card, a chip card with an IC module (IC = integrated circuit) was recently proposed in FR-A-2471003. Accordingly, no one can easily gain access to the secret information stored in the IC module.
Obwohl es sehr schwierig ist, die Geheiminformationen aus der Chipkarte auszulesen, gibt es keine Möglichkeit, den befugten Karteninhaber zu identifizieren, wenn die Chipkarte der se gefälscht ist.Although it is very difficult to read the secret information from the chip card, there is no way to identify the authorized cardholder if the chip card is counterfeit.
Da die Sicherheit im Gebrauch äußerst wichtig ist, wurde bei einer derartigen Chipkarte bis jetzt die Kartengültigkeit auf folgende Art und Weise identifiziert, um einen unbefugten Gebrauch der Chipkarte zu verhindern. Das heißt, wenn die Chipkarte zum Kauf eines Gegenstandes oder dergleichen verwendet wird, die Chipkarte in ein Kartenterminal eingesetzt wird und die private Identifikationsnummer "PIN" (persönliche Identifikationsnummer) in diesem Zustand eingegeben wird, um sie mit der registrierten PIN "R-PIN", die bereits in der Chipkarte gespeichert ist, zu vergleichen. Stimmt die eingegebene "PIN" mit dem registrierten "R-PIN" überein, dann wird dem Karteninhaber die Chipkarte zum Gebrauch freigegeben. Ergibt sich im Gegensatz hierzu keine Übereinstimmung, dann wird ein erneuter Eingabevorgang der "PIN" für eine gewisse Anzahl von Wiederholungen, z.B. fünf, ermöglicht. Stimmt die "PIN" mit der "R- PIN" selbst nach einer vorbestimmten Anzahl von Wiederholungen der "PIN"-Neueingabe nicht überein, dann wird diese Chipkarte zum Gebrauch ungültig gemacht oder zurückgewiesen.Since security in use is extremely important, the validity of such a chip card has been identified in the following way to prevent unauthorized use of the chip card. That is, when the chip card is used to purchase an item or the like is inserted into a card terminal and the private identification number "PIN" (personal identification number) is entered in this state to compare it with the registered PIN "R-PIN" already stored in the chip card. If the entered "PIN" matches the registered "R-PIN", the chip card is released for use by the cardholder. On the contrary, if there is no match, a re-entry of the "PIN" is allowed for a certain number of repetitions, e.g. five. If the "PIN" does not match the "R-PIN" even after a predetermined number of repetitions of the "PIN" re-entry, this chip card is invalidated or rejected for use.
Gemäß dem voranstehend beschriebenen Identifikationsverfahren für eine herkömmliche Karte kann bei Übereinstimmung der "PIN" mit der "R-PIN" die Verarbeitungsroutine in der Chipkarte bald zum nächsten Verarbeitungsschritt weitergehen. Bei Nichtübereinstimmung dieser Nummern jedoch wird eine Wiederholungszahl "RTN" um nur +1 hochgezählt, und gleichzeitig muß eine Vorrichtung vorgesehen werden, die bestimmt, ob die "RTN"-Zahl eine vorbestimmte Zahl erreicht hat oder nicht und dergleichen, so daß es eine Weile dauert, bis zum nächsten Verarbeitungsschritt weitergeschaltet werden kann. Wie nachstehend ausgeführt ist, wird in den beiden Fällen, nämlich bei Übereinstimmung der eingegebenen "PIN" mit der registrierten "R- PIN", und bei Nichtübereinstimmung ersterer mit letzterer, intern eine Differenz zwischen der Anzahl der Verarbeitungsschritte erstellt. Als Ergebnis unterscheiden sich die Zeitperioden, die für diese Verarbeitungsschritte erforderlich sind, voneinander. Dies unterstellt, daß wenn die Zeitdauer der Datenübertragung an den nächsten Verarbeitungsschritt auf irgendeine Art und Weise von einer Person verfolgt wird, die illegal und experimentell versucht, die PIN zu bestimmen, indem sie ihre Aufmerksamkeit auf eine derartige Zeitdifferenz richtet, es möglicherweise für diese leicht erkennbar ist, ob das Ergebnis des Vergleiches der Eingabe-"PIN" und der registrierten "PIN" richtig ist oder nicht.According to the above-described identification method for a conventional card, if the "PIN" and the "R-PIN" coincide, the processing routine in the IC card can soon proceed to the next processing step. However, if these numbers do not coincide, a repetition number "RTN" is incremented by only +1, and at the same time, a device must be provided for determining whether the "RTN" number has reached a predetermined number or not and the like, so that it takes a while to proceed to the next processing step. As explained below, in the two cases, namely, if the input "PIN" coincides with the registered "R-PIN" and if the former does not coincide with the latter, a difference is internally created between the number of processing steps. As a result, the time periods required for these processing steps differ from each other. This assumes that if the time period of data transmission to the next processing step is somehow tracked by a person who illegally and experimentally tries to determine the PIN by drawing his attention to such a time difference, It may be easy for them to determine whether the result of the comparison of the input "PIN" and the registered "PIN" is correct or not.
Daher kann durch eine illegale Untersuchung Kenntnis über die "PIN" erlangt werden, so daß die Sicherheit der Chipkarte erheblich beeinträchtigt ist und das Risiko besteht, daß ein illegaler Gebrauch der Chipkarte schließlich gelingt.Therefore, an illegal investigation can reveal the "PIN", so that the security of the chip card is significantly compromised and there is a risk that an illegal use of the chip card will ultimately succeed.
Bei der vorliegenden Erfindung wurden die voranstehenden Probleme in Betracht gezogen, und ihr liegt die Aufgabe zugrunde, ein Chipkartenidentifikationssystem zur Verfügung zu stellen, bei dem die illegale Entschlüsselung der persönlichen Identifikationsnummer vollständig blockiert werden kann, ein illegaler Gebrauch der Chipkarte verhindert wird, und die Sicherheit des Kartengebrauchs verbessert werden kann.The present invention has taken the above problems into consideration and has as its object to provide a smart card identification system in which illegal decryption of the personal identification number can be completely blocked, illegal use of the smart card can be prevented, and security of card use can be improved.
Diese Aufgabe der Erfindung wird dadurch gelöst, daß ein Identifikationssystem für Chipkarten bereitgestellt wird, das eine Vorrichtung zum Vergleich einer ersten, von einem Karteninhaber eingegebenen Identifikationsnummer mit einer zweiten, zuvor in der Chipkarte gespeicherten Identifikationsnummer umfaßt, um zu bestimmen, ob diese erste Identifikationsnummer mit der zweiten Identifikationsnummer übereinstimmt, sowie eine Speichervorrichtung zur Speicherung zumindest der zweiten Identifikationsnummer, eine Vorrichtung zur Messung einer während eines Kartenidentifiziervorganges verstrichenen Zeit, und eine Vorrichtung zur Steuerung der Zeitmeßvorrichtung, um eine erste Verarbeitungszeitperiode im wesentlichen gleich einer zweiten Verarbeitungszeitperiode einzustellen, wobei die erste Verarbeitungszeitperiode durch eine erste Dauer definiert ist, nachdem der Karteninhaber die erste Identifikationsnummer eingibt, während der die Vergleichsvorrichtung bestimmt, daß die erste Identifikationsnuinmer mit der zweiten Identifikationsnummer übereinstimmt, und eine zweite Verarbeitungszeitperiode durch eine Dauer definiert ist, während der die Vergleichsvorrichtung bestimmt, daß die erste, von dem Karteninhaber eingegebene Identifikationsnummer mit der zweiten Identifikationsnummer nicht übereinstimmt.This object of the invention is achieved by providing an identification system for chip cards, which comprises a device for comparing a first identification number entered by a card holder with a second identification number previously stored in the chip card in order to determine whether this first identification number matches the second identification number, as well as a storage device for storing at least the second identification number, a device for measuring a time elapsed during a card identification process, and a device for controlling the time measuring device in order to set a first processing time period substantially equal to a second processing time period, the first processing time period being defined by a first duration after the card holder enters the first identification number during which the comparison device determines that the first identification number matches the second identification number, and a second processing time period is defined by a period during which the comparison device determines that the first identification number entered by the cardholder does not match the second identification number.
Zum besseren Verständnis der vorliegenden Erfindung wird auf die nachfolgende Beschreibung in Verbindung mit den Zeichnungen verwiesen.For a better understanding of the present invention, reference is made to the following description in conjunction with the drawings.
Es zeigen:Show it:
Fig. 1 ein schematisches Blockschaltbild des gesamten Chipkartenidentifikationssystems gemäß der Erfindung;Fig. 1 is a schematic block diagram of the entire chip card identification system according to the invention;
Fig. 2 eine Speicheraufteilung des in Fig. 1 gezeigten Speichers;Fig. 2 shows a memory distribution of the memory shown in Fig. 1;
Fig. 3 ein Flußdiagramm zur Erläuterung des in Fig. 1 gezeigten Kartenidentifikationssystems; undFig. 3 is a flow chart for explaining the card identification system shown in Fig. 1; and
Fig. 4 ein schematisches Blockschaltbild des Scramblers im in Fig. 1 gezeigten Identifikationssystem.Fig. 4 is a schematic block diagram of the scrambler in the identification system shown in Fig. 1.
Der Grundgedanke des Chipkartenidentifikationssystems gemäß der vorliegenden Erfindung ist wie folgt. Bei diesem Chipkartenidentifikationssystem wird die über das Kartenterminal in die Chipkarte eingegebene persönliche Identifikationsnummer (PIN) mit der registrierten persönlichen Identifikationsnummer (R-PIN) verglichen, welche zuvor in der Chipkarte gespeichert wurde. Dann wird auf der Grundlage des Vergleichsergebnisses bestimmt, ob diese Nummern übereinstimmen oder nicht. Bei Nichtübereinstimmung wird ein Neueingabevorgang der "PIN" zugelassen und die Zahl der Wiederversuche gezählt. Es wird entschieden, ob die Wiederversuchszahl eine vorbestimmte Zahl erreicht hat oder nicht. Hat sie die vorbestimmte Zahl erreicht, dann wird der Gebrauch der Chipkarte ungültig gemacht. Dieses Chipkartenidentifikationssystem hat folgendes Merkmal: Eine erste Verarbeitungszeitperiode wird von einer Zeitperiode definiert, die erforderlich ist, um die Schritte von der Eingabe der "PIN" bis zur Ausgabe eines Signals, das die Übereinstimmung des Vergleichsergebnisses darstellt, zu verarbeiten. Eine zweite Verarbeitungszeitperiode wird von einer weiteren Zeitperiode definiert, die erforderlich ist, um die Schritte von der Eingabe der "PIN" bis zur Ausgabe eines Nichtübereinstimmungssignals zu verarbeiten, und von Iterationsschritten einschließlich der Zeit für den Schritt der Hochzählung der Eingabe-Wiederversuchszahl der "PIN" und der Zeit für den Schritt der Bestimmung, ob die Wiederversuchszahl die vorbestimmte Zahl erreicht hat oder nicht. Es wird entschieden, daß die erste Verarbeitungszeitperiode im wesentlichen gleich der zweiten Verarbeitungszeitperiode ist. Überdies sind beide Verarbeitungszeitperioden bezüglich der verstrichenen Zeit konstant.The basic idea of the smart card identification system according to the present invention is as follows. In this smart card identification system, the personal identification number (PIN) entered into the smart card via the card terminal is compared with the registered personal identification number (R-PIN) previously stored in the smart card. Then, based on the comparison result, it is determined whether these numbers match or not. If they do not match, a re-entry process of the "PIN" is performed. allowed and the number of retries is counted. It is judged whether the retry number has reached a predetermined number or not. If it has reached the predetermined number, then the use of the smart card is invalidated. This smart card identification system has the following feature: A first processing time period is defined by a time period required to process the steps from the input of the "PIN" to the output of a signal representing the agreement of the comparison result. A second processing time period is defined by another time period required to process the steps from the input of the "PIN" to the output of a non-agreement signal, and iteration steps including the time for the step of counting up the input retry number of the "PIN" and the time for the step of determining whether the retry number has reached the predetermined number or not. It is judged that the first processing time period is substantially equal to the second processing time period. Moreover, both processing time periods are constant in terms of elapsed time.
Fig. 1 zeigt einen Schaltungsaufbau der Chipkarte 100 gemäß der Erfindung. In einer Schaltung wird eine Systembusleitung 11 verwendet. Wie in dem Schaltbild gezeigt ist, sind verbunden mit der Systembusleitung 11: ein Antwort-zur-Rückstellung-Daten-ROM 12; Anwendungs-ROM 13; Testprogramm-ROM 14; Systemprogramm-ROM 15; Arbeits-RAM 16; Zentralsteuerungseinheit 17; Speicher-Lese/Schreib-Steuerung 18; Entschlüssler 19; Eingangssteuerung 21 über Eingangspuffer 20; und Ausgangssteuerung 23 über Ausgangspuffer 22. Das Datenein-/ausgabe- Terminal 1/0 ist mit Eingangssteuerung 21 und Ausgangssteuerung 23 verbunden. Antwort-zur-Rückstellung-Daten-ROM 12 speichert verschiedene Betriebszustandsdaten für eine Chipkarte 100. Zum Beispiel speichert ROM 12 die Daten bezüglich des Schreibens von Daten, Versorgungsspannung, maximaler Strom, maximale Versorgungs- Spannung, maximale Datenübertragungsmenge, maximale Antwortwartezeit, und dergleichen. Nach Beendigung der Selbstinitialisierung von Chipkarte 100 werden diese Zustandsdaten als Antwort-zur-Rückstellung-Daten gemäß einem vorbestimmten Format an ein Kartenterminal (nicht dargestellt) übertragen.Fig. 1 shows a circuit structure of the chip card 100 according to the invention. In a circuit, a system bus line 11 is used. As shown in the circuit diagram, connected to the system bus line 11 are: a response-to-reset data ROM 12; application ROM 13; test program ROM 14; system program ROM 15; work RAM 16; central control unit 17; memory read/write controller 18; decryptor 19; input controller 21 via input buffer 20; and output controller 23 via output buffer 22. The data input/output terminal 1/0 is connected to input controller 21 and output controller 23. Response-to-reset data ROM 12 stores various operation status data for an IC card 100. For example, ROM 12 stores the data regarding data writing, power supply voltage, maximum current, maximum power supply voltage, maximum data transfer amount, maximum response waiting time, and the like. After completion of self-initialization of IC card 100, these status data are transmitted to a card terminal (not shown) as response-to-reset data according to a predetermined format.
Anwendungs-ROM 13 speichert Kartenklassifikationsdaten "APN", die den Typ von Chipkarte 100 angeben. Nachdem Anfangsparameter auf der Grundlage der Antwort-zur-Rückstellung-Daten gesetzt wurden, werden Kartenklassifikationsdaten gemäß einem vorbestimmten Format nach Austausch von Attributdaten mit dem Kartenterminal übertragen.Application ROM 13 stores card classification data "APN" indicating the type of smart card 100. After initial parameters are set based on the response-to-reset data, card classification data is transmitted according to a predetermined format after exchanging attribute data with the card terminal.
Testprogramm-ROM 14 speichert das Programm zur Durchführung der Kartentestroutine.Test program ROM 14 stores the program for performing the card test routine.
Systemprogramm-ROM 15 speichert nicht nur verschiedene Systemprogramme, sondern auch ein Kodesignal "ACK" oder "NAC", das angibt, ob ein von dem Kartenterminal übertragenes Signal korrekt ist oder nicht.System program ROM 15 stores not only various system programs but also a code signal "ACK" or "NAC" that indicates whether a signal transmitted from the card terminal is correct or not.
Arbeits-RAM 16 speichert verschiedene Verarbeitungsdaten, die in Chipkarte 100 verwendet werden.Working RAM 16 stores various processing data used in chip card 100.
Zentralsteuerungseinheit 17 gibt als Antwort auf ein Datenempfangssignal, das von dem Kartenterminal durch einen Eingangspuffer 20 zugeführt wird, und als Antwort auf die Betriebsbedingungen Betriebsbefehle an verschiedene Schaltungen aus.Central control unit 17 issues operating commands to various circuits in response to a data reception signal supplied from the card terminal through an input buffer 20 and in response to the operating conditions.
Speicher-Lese-/Schreib-Steuerung 18 steuert die Daten-Schreib/Lese-Vorgänge in den/aus dem Speicher 24 als Antwort auf einen Befehl von der Zentralsteuerungseinheit 17.Memory read/write controller 18 controls the data write/read operations to/from memory 24 in response to a command from central control unit 17.
Entschlüssler 19 entschlüsselt auf der Grundlage eines vorbestimmten Algorithmus die Eingangsdaten, die von dem Kartenterminal durch Eingangspuffer 20 unter Verwendung eines privaten Schlüsselkodes "PRK" oder dergleichen von der Geheimdatenzone 243 im Speicher 24 zugeführt werden.Decryptor 19 decrypts, based on a predetermined algorithm, the input data supplied from the card terminal through input buffer 20 using a private key code "PRK" or the like from the secret data zone 243 in the memory 24.
Zeitglied 25 ist mit der Zentralsteuerungseinheit 17 verbunden. Zeitglied 25 bewirkt eine Voreinstellung der Zeit, die zur Durchführung des Kartenidentifikationsprozesses erforderlich ist, auf eine bestimmte Zeit. Bevor mit der Eingabe der "PIN" begonnen wird, wird diese vorbestimmte Zeit als Antwort auf einen Befehl von der Zentralsteuerungseinheit 17 eingestellt. Wird die "PIN" eingegeben, dann beginnt Zeitglied 25 seine Zählung. Nachdem eine vorbestimmte Zeit verstrichen ist, unterbricht Zeitglied 25 den Betrieb der Zentralsteuerungseinheit 17. Es ist zu bemerken, daß diese vorbestimmte Zeit, die in Zeitglied 25 eingestellt ist, dadurch bestimmt wird, daß die maximale zur Identifikation der "PIN" benötigte Zeit in Betracht gezogen wird.Timer 25 is connected to the central control unit 17. Timer 25 operates to preset the time required to perform the card identification process to a predetermined time. Before the entry of the "PIN" begins, this predetermined time is set in response to a command from the central control unit 17. When the "PIN" is entered, timer 25 begins its count. After a predetermined time has elapsed, timer 25 stops the operation of the central control unit 17. It is to be noted that this predetermined time set in timer 25 is determined by taking into account the maximum time required to identify the "PIN".
Der von der Steuerung 18 lesbare Inhalt von Speicher 24 wird an einen Eingangsanschluß von Komparators 26 gelegt. Die von dem Entschlüssler 19 entschlüsselten Eingangsdaten, die in dem Arbeits-RAM 16 gespeicherten Daten und der spezifische im Daten-ROM 12 gespeicherte Kode werden an den anderen Eingangsanschluß von Komparator 26 gelegt. Der Vergleichsausgang von Komparator 26 wird an eine Zentralsteuerungseinheit 17 geschickt.The contents of memory 24 readable by controller 18 are applied to one input terminal of comparator 26. The input data decoded by decoder 19, the data stored in working RAM 16 and the specific code stored in data ROM 12 are applied to the other input terminal of comparator 26. The comparison output of comparator 26 is sent to a central control unit 17.
Wird ein Chipkartensystem mit der oben beschriebenen Schaltungsanordnung in ein Kartenterminal (nicht dargestellt) geladen, dann werden ein Rücksetzsignal "Reset" und ein Systemtakt "Clock" von dem Kartenterminal an die Chipkarte 100 gelegt und zur gleichen Zeit werden eine Spannungsquelle Vcc und eine Spannungsquelle Vpp damit verbunden. Die Spannungsquelle Vcc wird zum Antrieb des Chipkartensystems verwendet. Die Spannungsquelle Vpp wird zum Schreiben von Daten in den Speicher 24 verwendet. Die Versorgungsspannung Vpp wird im Kartenterminal auf der Grundlage der Antwort-zur-Rückstellung-Daten eingestellt, die im Daten-ROM 12 gespeichert sind. Andererseits wird ein Systembetriebssignal von Systemtakt "Clock" über einen Frequenzteiler 27 an verschiedene Schaltungen in dem Chipkartensystem gelegt. Somit wird ein frequenzgeteilter Takt "Φ" von dem Frequenzteiler 27 abgeleitet.If a chip card system with the circuit arrangement described above is loaded into a card terminal (not shown), a reset signal "Reset" and a system clock "Clock" are applied from the card terminal to the chip card 100 and at the same time a voltage source Vcc and a voltage source Vpp are connected to it. The voltage source Vcc is used to drive the smart card system. The power source Vpp is used to write data into the memory 24. The power supply voltage Vpp is set in the card terminal based on the response-to-reset data stored in the data ROM 12. On the other hand, a system operation signal of system clock "Clock" is applied to various circuits in the smart card system via a frequency divider 27. Thus, a frequency-divided clock "φ" is derived from the frequency divider 27.
In der bevorzugten Ausführungsform, wie sie in Fig. 2 dargestellt ist, besteht der Speicher 24 aus einer Zonenadreßtabelle 241, einer öffentlichen Datenzone 242, einer Geheimdatenzone 243, einer Transaktionsdatenzone 244 und einer Kreditdatenzone 245. Die Zonenadreßtabelle 241 speichert eine vorbestimmte Zonenadresse als Testdaten, die zum Beispiel zur Identifikation der Chipkarte verwendet werden. Die Identifikationsdaten werden aus einer vorbestimmten Datenzone auf der Grundlage der Adreßdaten ausgelesen und dann mit den oben beschriebenen Testdaten identifiziert, wodurch die Kartenidentifikation durchgeführt wird. Die offene Datenzone 242 speichert offene Daten. Die Geheimdatenzone 243 speichert zum Beispiel die registrierte persönliche Identifikationsnummer "R-PIN", die Datenwiederversuchsnummer "RTN", die persönliche Initialisierungs-Identifikationsnummer "I-PIN", die benutzt wird, bis die persönliche Identifikationsnummer "PIN" verwendet wird, die Kontonummer "PAN" (Primary Account Number, Primärkontonummer), den Entschlüsselungskode "PRK" (privater Schlüsselkode) und dergleichen. Die Transaktionsdatenzone 244 speichert verschiedene Daten bezüglich der normalen Transaktion. Die Kreditdatenzone 245 speichert die Daten, die die Kredittransaktion betreffen, z.B. Daten wie eine Zulassung bei einer Kredittransaktion.In the preferred embodiment, as shown in Fig. 2, the memory 24 consists of a zone address table 241, a public data zone 242, a secret data zone 243, a transaction data zone 244 and a credit data zone 245. The zone address table 241 stores a predetermined zone address as test data used for, for example, identifying the smart card. The identification data is read out from a predetermined data zone based on the address data and then identified with the test data described above, thereby performing the card identification. The open data zone 242 stores open data. The secret data zone 243 stores, for example, the registered personal identification number "R-PIN", the data retry number "RTN", the personal initialization identification number "I-PIN" used until the personal identification number "PIN" is used, the account number "PAN" (Primary Account Number), the decryption key "PRK" (Private Key Code), and the like. The transaction data zone 244 stores various data related to the normal transaction. The credit data zone 245 stores the data related to the credit transaction, e.g., data such as an approval for a credit transaction.
Der Betrieb des Chipkartensystem wird nunmehr unter Bezugnahme auf das Schaltbild aus Fig. 1 und ein in Fig. 3 gezeigtes Flußdiagramm beschrieben werden.The operation of the smart card system will now be described with reference to the circuit diagram of Fig. 1 and a flow chart shown in Fig. 3.
Der Betrieb der Chipkarte 100, nachdem sie in das Kartenterminal (nicht dargestellt) geladen wurde, bis zur Eingabe der persönlichen Identifikationsnummer "PIN" in diesem Zustand, d.h. der Betrieb zur Karteninitialisierung, wird zunächst kurz beschrieben. In diesem Fall wird, wenn die Chipkarte 100 in das Kartenterminal eingesetzt ist, ein Initialisierungssignal, das zuvor in dem Kartenterminal gesetzt wurde, an die Chipkarte 100 übertragen. Dann wird die Chipkarte 100 in dem auf diesem Initialisierungssignal beruhenden Betriebszustand in Betrieb genommen. Insbesondere wird das im Daten-ROM 12 gespeicherte Antwort-zur-Rückstellung-Signal unter Steuerung der Zentralsteuerungseinheit 17 in der Chipkarte 100 ausgelesen. Diese Antwort-zur-Rückstellung-Daten werden von dem I/O- Terminal über die Ausgangssteuerung 23 an das Kartenterminal geschickt.The operation of the chip card 100 after it is loaded into the card terminal (not shown) until the personal identification number "PIN" is entered in this state, i.e., the card initialization operation, will first be briefly described. In this case, when the chip card 100 is inserted into the card terminal, an initialization signal previously set in the card terminal is transmitted to the chip card 100. Then, the chip card 100 is put into operation in the operating state based on this initialization signal. Specifically, the response-to-reset signal stored in the data ROM 12 is read out under the control of the central control unit 17 in the chip card 100. This response-to-reset data is sent from the I/O terminal to the card terminal via the output controller 23.
Wenn bestimmt wird, daß die an das Kartenterminal geschickten Antwort-zur-Rückstellung-Daten korrekt sind, dann werden die spezifischen Betriebsbedingungen zur Verwendung nur in der Chipkarte gesetzt und gleichzeitig ein Anfragekode "ENQ" zurück an die Chipkarte geschickt. Dieser "ENQ"-Kode wird in den Arbeits-RAM 16 geschrieben. In diesem Zustand wird eine Überprüfung in der Zentralsteuerungseinheit 17 durchgeführt, ob der "ENQ"-Kode legal im normalen Betrieb empfangen werden kann oder nicht. Ist die Antwort JA, dann wird "ACK" von dem Systemprogramm-ROM 15 abgeleitet. Bei NEIN wird das Signal "NAC" von ROM 15 abgeleitet. Das Signal "ACK" oder "NAC" wird dann durch Ausgangspuffer 22 und Ausgangssteuerung 23 an das Kartenterminal geschickt. Wenn das Signal "ACK" von dem Kartenterminal empfangen wird, dann wird ein Terminalkode "TC", der je nach der Klassifikation des Kartenterminals unterschiedlich ist, zurückgeschickt. Andererseits wird bei Empfang des Signals "NAC" das Kartenterminal von der Chipkarte 100 abgetrennt. Wenn der Terminalkode "TC" von dem Kartenterminal geschickt wird, dann wird ein im Anwendungs-ROM 13 gespeicherter Anwendungsname "APN" in der Chipkarte 100 unter Steuerung der Zentralsteuerungseinheit 17 ausgelesen. Dieser Anwendungsname "APN" ist je nach der Klassifikation der Karte unterschiedlich. Somit wird der ausgelesene Anwendungsname "APN" einmal in Ausgangspuffer 22 festgehalten, und daraufhin an das Kartenterminal zurückgesandt. Wenn anschließend in dem Kartenterminal auf der Grundlage von "APN" bestimmt wird, daß die Anwendungsart mit dem Inhalt von "APN" übereinstimmt, wird ein Anweisungskode zurückgesandt. Andererseits wird bei Nichtübereinstimmung die Verbindung zwischen Kartenterminal und Chipkarte unterbrochen.If it is determined that the response-to-reset data sent to the card terminal is correct, then the specific operating conditions for use only in the IC card are set and at the same time an inquiry code "ENQ" is sent back to the IC card. This "ENQ" code is written into the working RAM 16. In this state, a check is made in the central control unit 17 as to whether or not the "ENQ" code can be legally received in normal operation. If the answer is YES, then "ACK" is derived from the system program ROM 15. If NO, the signal "NAC" is derived from ROM 15. The signal "ACK" or "NAC"is then sent to the card terminal through output buffer 22 and output controller 23. When the signal "ACK" is received from the card terminal, a terminal code "TC" which differs depending on the classification of the card terminal is returned. On the other hand, when the signal "NAC" is received, the card terminal is disconnected from the smart card 100. When the terminal code "TC" is sent from the card terminal, an application name "APN" stored in the application ROM 13 in the smart card 100 is read out under the control of the central control unit 17. This application name "APN" differs depending on the classification of the card. Thus, the read out application name "APN" is once held in output buffer 22, and then sent back to the card terminal. Then, when it is determined in the card terminal on the basis of "APN" that the application type matches the content of "APN", an instruction code is returned. On the other hand, if there is a mismatch, the connection between the card terminal and the chip card is interrupted.
Bei Empfang eines solchen Anweisungskodes wird die Eingabe der "PIN" von dem Kartenterminal zugelassen.Upon receipt of such an instruction code, the card terminal will allow the entry of the "PIN".
In diesem Zustand geht die Verarbeitung zu Schritt A1 in dem in Fig. 3 gezeigten Flußdiagramm. In Schritt A1 wird Zeitglied 25 von einem Befehl gesetzt, der von der Zentralsteuerungseinheit 17 aus Fig. 1 vor Eingabe der "PIN" geschickt wird. In diesem Fall werden die im Zeitglied 25 zu setzenden Zeitdaten von dem Systemprogramm-ROM 15 abgeleitet.In this state, the processing goes to step A1 in the flow chart shown in Fig. 3. In step A1, timer 25 is set by a command sent from central control unit 17 of Fig. 1 before input of "PIN". In this case, time data to be set in timer 25 is derived from system program ROM 15.
Danach wird bei Eingabe der "PIN" über eine auf dem Kartenterminal vorgesehene Tastatur (nicht dargestellt) diese "PIN" von dem I/O-Terminal der Chipkarte 100 über die Eingangssteuerung 21 an Eingangspuffer 20 übertragen. Gleichzeitig mit dem Beginn der Eingabe der "PIN" zu diesem Zeitpunkt beginnt Zeitglied 25 seine Zählung, wie in Schritt A2 definiert. Dann geht es weiter zu Schritt A3.Then, when the "PIN" is entered via a keyboard provided on the card terminal (not shown), this "PIN" is transmitted from the I/O terminal of the chip card 100 via the input control 21 to input buffer 20. Simultaneously with the start of the input of the "PIN" at this time, timer 25 starts its count as defined in step A2. Then it goes on to step A3.
Von Schritt A2 an beginnen die oben beschriebenen ersten und zweiten Verarbeitungszeitperioden.From step A2, the first and second processing time periods described above begin.
In Schritt A3, wenn durch die Zentralsteuerungseinheit 17 bestätigt ist, daß die "PIN" eingegeben wurde, wird die in Eingangspuffer 20 festgehaltene "PIN" an Komparator 26 gelegt und gleichzeitig wird ein Lesebefehl zum Auslesen der "R-PIN" aus der Geheimdatenzone 243 im Speicher 24 an die Speicher- Lese-/Schreib-Steuerung 18 gegeben.In step A3, when it is confirmed by the central control unit 17 that the "PIN" has been input, the "PIN" held in the input buffer 20 is applied to the comparator 26, and at the same time, a read command for reading the "R-PIN" from the secret data zone 243 in the memory 24 is given to the memory read/write controller 18.
Die "R-PIN" wird durch Steuerung 18 aus der Geheimdatenzone 243 ausgelesen und an Komparator 26 gelegt. Komparator 26 vergleicht die eingegebene "PIN", wie sie vom Kartenterminal geschickt wird, mit der registrierten "R-PIN", wie sie aus dem Speicher 24 ausgelesen wurde. Das Ergebnis dieses Vergleiches wird an die Zentralsteuerungseinheit 17 geschickt. In diesem Fall geht bei Übereinstimmung der "PIN" mit der "R-PIN" die Verarbeitung weiter zu Schritt A4, wo der Inhalt der Wiederversuchszahl "RTN" der Geheimdatenzone 243 im Speicher 24 auf "0" gesetzt wird. Danach wird im nächsten Schritt A5 ein Übereinstimmungsbefehl für die eingegebene "PIN" an Ausgangspuffer 22 übertragen. Danach geht der Betrieb weiter zu Schritt A6.The "R-PIN" is read out from the secret data zone 243 by controller 18 and applied to comparator 26. Comparator 26 compares the input "PIN" as sent from the card terminal with the registered "R-PIN" as read out from memory 24. The result of this comparison is sent to central control unit 17. In this case, if the "PIN" matches the "R-PIN", the processing proceeds to step A4, where the content of the retry number "RTN" of the secret data zone 243 in memory 24 is set to "0". Thereafter, in the next step A5, a match command for the input "PIN" is transmitted to output buffer 22. After that, the operation proceeds to step A6.
In Schritt A6 wird eine Überprüfung durchgeführt, ob die gezählte Zeit von Zeitglied 25 eine voreingestellte Zeit übersteigt oder nicht. Ist die Antwort NEIN, dann wird der Zustand von Schritt A6 gehalten. Danach, wenn die gezählte Zeit von Zeitglied 25 die voreingestellte Zeit durchlaufen hat, geht es weiter zu Schritt A7, wo der Zählvorgang von Zeitglied 25 angehalten wird. Dann, im nächsten Schritt A8, wird der Inhalt von Ausgangspuffer 22 an das Kartenterminal übertragen. Anschließend werden Transaktionsvorgänge, wie Geldtransaktionen und dergleichen, in dem Kartenterminal durchgeführt.In step A6, a check is made as to whether the counted time of timer 25 exceeds a preset time or not. If the answer is NO, then the state of step A6 is maintained. After that, if the counted time of timer 25 has passed the preset time, it goes to step A7 where the counting operation of timer 25 is stopped. Then, in the next step A8, the content of output buffer 22 is transferred to the card terminal. Subsequently, transaction processes such as money transactions and the like are carried out in the card terminal.
Wie oben beschrieben ist die Zeitperiode, zwischen der die PIN in Schritt A2 eingegeben wird und Zeitglied 25 bei Schritt A7 angehalten wird, als die erste Verarbeitungszeitperiode definiert. Die erste Verarbeitungszeitperiode ist immer konstant und verändert sich nicht mit dem Gebrauch der Karte über eine Zeitperiode.As described above, the time period between when the PIN is entered in step A2 and timer 25 is stopped at step A7 is defined as the first processing time period. The first processing time period is always constant and does not change with the use of the card over a period of time.
Die zweite Verarbeitungszeitperiode wird nunmehr beschrieben. Die zweite Verarbeitungszeitperiode verändert sich ebenfalls nicht während der Lebensdauer der Karte.The second processing time period is now described. The second processing time period also does not change during the life of the card.
Wird in Schritt A3 entschieden, daß die eingegebene "PIN" nicht mit der "R-PIN" übereinstimmt, dann geht die Verarbeitung weiter zu Schritt A9.If it is decided in step A3 that the entered "PIN" does not match the "R-PIN", then the processing proceeds to step A9.
In Schritt A9 wird die Datenwiederversuchsnummer "RTN" in der Geheimdatenzone 243 von Speicher 24 um nur 1 hochgezählt und die neue Wiederversuchszahl wird in die Geheimdatenzone 243 neueingeschrieben. Im nächsten Schritt A10 findet eine Überprüfung statt, ob die neue Daten-Wiederversuchsnummer "RTN" eine vorbestimmte Zahl "n" erreicht hat oder nicht. Ist sie kleiner als die vorbestimmte Zahl "n", dann geht die Verarbeitung zu Schritt All und ein Nichtübereinstimmungsbefehl für die "PIN" wird an den Ausgangspuffer 22 übertragen.In step A9, the data retry number "RTN" in the secret data zone 243 of memory 24 is incremented by only 1 and the new retry number is rewritten in the secret data zone 243. In the next step A10, a check is made as to whether or not the new data retry number "RTN" has reached a predetermined number "n". If it is less than the predetermined number "n", then the processing goes to step All and a mismatch command for the "PIN" is transmitted to the output buffer 22.
Im nächsten Schritt A6 wird gleichzeitig eine Überprüfung durchgeführt, ob die gezählte Zeit von Zeitglied 25 die oben beschriebene voreingestellte Zeit verfehlt hat. Ist die Antwort NEIN, dann wird der Zustand von Schritt A6 gleichfalls gehalten. Danach, wenn die voreingestellte Zeit von Zeitglied 25 verstrichen ist, geht der Betrieb zu Schritt A7, um damit den Zählbetrieb von Zeitglied 25 anzuhalten.In the next step A6, a check is simultaneously carried out to see whether the counted time of timer 25 has missed the preset time described above. If the answer is NO, then the state of step A6 is also maintained. Then, if the preset time of timer 25 has elapsed, the operation goes to step A7 to stop the counting operation of timer 25.
Die zweite Verarbeitungszeitperiode ist so definiert, daß sie die Zeit einschließt, ab der die PIN in Schritt A2 eingegeben, der Ereignisbefehl in Schritt A11 übertragen und das Zeitglied 25 in Schritt A7 angehalten wird.The second processing time period is defined to include the time from when the PIN is entered in step A2, the event command is transmitted in step A11 and the timer 25 is stopped in step A7.
Im nächsten Schritt A8 wird der Inhalt von Ausgangspuffer 22 an das Kartenterminal übertragen. Danach zeigt das Kartenterminal eine Nachricht auf dem Anzeigeabschnitt (nicht dargestellt) des Terminals an, um den Karteninhaber zur erneuten Eingabe der "PIN" aufzufordern. In diesem Zustand werden bei erneuter Eingabe der "PIN" die Verarbeitungsvorgänge ähnlich den obengenannten wiederholt. Andererseits geht, wenn in Schritt A10 bestimmt wird, daß die Datenwiederversuchsnummer gleich einer vorbestimmten Zahl "n" (z.B. fünf) oder mehr ist, die Verarbeitung zu Schritt A12, bei dem der Zählbetrieb von Zeitglied 25 angehalten wird. Im nächsten Schritt A13 wird der Gebrauch von Chipkarte ungültig gemacht und die Chipkarte 100 dann aus dem Kartenterminal ausgeworfen. Mit anderen Worten, der Gebrauch der Chipkarte 100 wird verweigert.In the next step A8, the content of output buffer 22 is transferred to the card terminal. Thereafter, the card terminal displays a message on the display section (not shown) of the terminal to request the cardholder to re-enter the "PIN". In this state, when the "PIN" is re-entered, the processing operations similar to those mentioned above are repeated. On the other hand, if it is determined in step A10 that the data retry number is equal to a predetermined number "n" (e.g., five) or more, the processing goes to step A12 where the counting operation of timer 25 is stopped. In the next step A13, the use of the smart card is invalidated and the smart card 100 is then ejected from the card terminal. In other words, the use of the smart card 100 is refused.
Zur weiteren Verbesserung der Sicherheit verschiedener Arten von Daten, z.B. "PIN", die vorübergehend in der Chipkarte 100 gespeichert sind, wird gemäß der Erfindung ein Scrambler 180 (Verwürfler) in Adreßleitungen an den Speicher 24 eingeführt, wodurch die Schreib-/Lese-Vorgänge verschiedener Arten von Daten in den/aus dem Speicher vollzogen werden, indem die Schreib/Lese-Adressen zu Speicheradressen verändert werden, die sich von dem Befehlsadressen unterscheiden. Eine derartige Verbesserung der Datensicherheit ist das Endziel der Erfindung.In order to further improve the security of various types of data, e.g. "PIN" temporarily stored in the smart card 100, according to the invention, a scrambler 180 is introduced into address lines to the memory 24, whereby the write/read operations of various types of data into/from the memory are performed by changing the write/read addresses to memory addresses different from the command addresses. Such improvement of data security is the ultimate goal of the invention.
Insbesondere ist Scrambler 180 in der Speicher-Lese/Schreib- Steuerung 18 vorgesehen. Scrambler 180 besteht aus Haltespeicherabschnitten 182 und 183 mit z.B. acht Adreßleitungen ADI&sub0; bis ADI&sub7; und Speicherabschnitt 184, gebildet aus einem Masken-ROM oder dergleichen, zum Empfang der Ausgänge von Haltespeicherabschnitten 182 und 183. Speicherabschnitt 184 führt eine vorbestimmte Verwürflungsverarbeitung durch und gibt die verwürfelten Daten über acht Adreßleitungen ADX&sub0; bis ADX&sub7; an den Speicher 24 aus. Die Adressen an den Speicher 24 werden von Scrambler 180 verwürfelt, wodurch die ursprünglichen Adressen und die verschlüsselten Adressen verschieden gemacht werden.Specifically, scrambler 180 is provided in memory read/write controller 18. Scrambler 180 is composed of latch sections 182 and 183 having, for example, eight address lines ADI₀ to ADI₇, and memory section 184 formed of a mask ROM or the like for receiving the outputs of latch sections 182 and 183. Memory section 184 performs predetermined scrambling processing and outputs the scrambled data to memory 24 via eight address lines ADX₀ to ADX₇. The addresses to memory 24 are scrambled by scrambler 180, thereby making the original addresses and the scrambled addresses different.
Der detaillierte Betrieb von Scrambler 180 wird nunmehr erläutert.The detailed operation of Scrambler 180 will now be explained.
Zunächst, wenn die 8-Bit-Adreßdaten, bestehend aus vier oberen Bits und vier unteren Bits, als Antwort auf einen Schreibbefehl von einer CPU, d.h. von der Zentralsteuerungseinheit 17, an die Adreßleitungen ADI&sub0; bis ADI&sub7; eingegeben werden, dann werden diese Adreßdaten einmal in den Haltespeicherbereichen 182 und 183 festgehalten. Danach werden die 8-Bit-Adreßdaten als Antwort auf einen Schreibbefehl von der Zentralsteuerungseinheit 17 an den Speicherabschnitt 184 gelegt. Speicherabschnitt 184 speichert andere Adreßdaten, die an Adreßleitungen ADX&sub0; bis ADX&sub7; für Speicher 24 entsprechend den erstgenannten Adreßdaten ausgegeben werden, welche von Adreßleitungen ADI&sub0; bis ADI&sub7; eingegeben wurden. Es versteht sich, daß die ersteren Adreßdaten, die in die Adreßleitungen ADI&sub0; bis ADI&sub7; eingegeben werden, die sogenannten "ursprünglichen Adreß"-Daten sind, während die letztgenannten Daten, die an Adreßleitungen ADX&sub0; bis ADX&sub7; ausgegeben werden&sub1; die sogenannten "verschlüsselten Adreß"-Daten sind.First, when the 8-bit address data consisting of four upper bits and four lower bits is input to the address lines ADI₀ to ADI₇ in response to a write command from a CPU, i.e., the central control unit 17, this address data is once held in the holding memory areas 182 and 183. Thereafter, the 8-bit address data is applied to the memory section 184 in response to a write command from the central control unit 17. The memory section 184 stores other address data output to address lines ADX₀ to ADX₇ for memory 24 corresponding to the former address data input from address lines ADI₀ to ADI₇. It is understood that the former address data input to the address lines ADI₀ to ADI₇ is the so-called "original address" data, while the latter data output to address lines ADX₀ to ADX₇ is the so-called "encrypted address" data.
In der bevorzugten Ausführungsform wird bei Eingabe von "0" in die Adreßleitung ADI&sub0; "1" an die Adreßleitung ADX&sub4; ausgegeben. Bei Eingabe von "1" in die Adreßleitung ADI&sub1; wird "1" an die Adreßleitung ADX&sub2; ausgegeben. Bei Eingabe von "0" in die Adreßleitung ADI&sub2; wird "1" an die Adreßleitung ADX&sub1; ausgegeben. Bei Eingabe von "0" in die Adreßleitung ADI&sub3; wird "1" an die Adreßleitung ADX&sub7; ausgegeben. Bei Eingabe von "0" in die Adreßleitung ADI&sub4; wird "1" an die Adreßleitung ADX&sub3; ausgegeben. Bei Eingabe von "1" in die Adreßleitung ADI&sub5; wird "1" an die Adreßleitung ADX&sub5; ausgegeben. Bei Eingabe von "0" in die Adreßleitung ADI&sub6; wird "1" an die Adreßleitung ADX&sub6; ausgegeben. Bei Eingabe von "0" in die Adreßleitung ADI&sub7; wird "1" an die Adreßleitung ADX&sub0; ausgegeben.In the preferred embodiment, when "0" is input to the address line ADI₀, "1" is output to the address line ADX₄. When "1" is input to the address line ADI₁, "1" is output to the address line ADX₂. When "0" is input to the address line ADI₂, "1" is output to the address line ADX₁. When "0" is input to the address line ADI₃, "1" is output to the address line ADX₃. When "0" is input to the address line ADI₃, "1" is output to the address line ADX₃. When "1" is input to the address line ADI₅, "1" is output to the address line ADX₅. When "0" is input to the address line ADI₆, "1" is output to the address line ADX₆. When "0" is input to the address line ADI₆, "1" is output to the address line ADX₆.
Im Endprodukt dieser Ausführungsform wird Scrambler 180 maskiert und sein interner Abschnitt kann von außen überhaupt nicht gesehen werden. Mit anderen Worten kann nach Entfernen des äußeren Schutzteils von Chipkarte 100 das IC-Modul der anderen Schaltungselemente betrachtet werden. Der IC-Chip von Scrambler 180 ist jedoch so eingestellt, daß er selbst in diesem Zustand nicht zu sehen ist, da er maskiert ist.In the final product of this embodiment, scrambler 180 is masked and its internal portion cannot be seen from the outside at all. In other words, after removing the external protective part of smart card 100, the IC module of the other circuit elements can be observed. However, the IC chip of scrambler 180 is set so that it cannot be seen even in this state because it is masked.
Das voranstehend definierte Verwürfelungsverfahren ist nicht ausschließlich auf dieses Verfahren beschränkt, sondern andere Verwürfelungsverfahren können offensichtlich ebenfalls verwendet werden.The scrambling method defined above is not exclusively limited to this method, but other scrambling methods can obviously also be used.
Als Ergebnis des voranstehend beschriebenen Verwürfelungsverfahrens werden die an die Adreßleitungen ADI&sub0; bis ADI&sub7; eingegebenen Adreßdaten (verschlüsselte Adresse) zu den völlig unterschiedlichen ADreßdaten (ursprüngliche Adresse) verändert und über Adreßleitungen ADX&sub0; bis ADX&sub7; an den Speicher 24 ausgegeben. Daher werden bei Schreiben von Daten in den Speicher 24 die Daten in Adressen geschrieben, die völlig verschieden von den Adressen sind, die den Befehlen auf der CPU, d.h. der Zentralsteuerungseinheit 17, entsprechen.As a result of the scrambling process described above, the address data (encrypted address) input to the address lines ADI₀ to ADI₇ is changed to the completely different address data (original address) and output to the memory 24 via address lines ADX₀ to ADX₇. Therefore, when data is written to the memory 24, the data is written to addresses which are completely different from the addresses corresponding to the instructions on the CPU, ie the central control unit 17.
Nimmt man in diesem Fall als praktisches Beispiel an, daß die CPU Daten in die Adressen 3B(H) bis 41(H) im Speicher 24 geschrieben hat, dann werden die Adreßdaten, die wirklich von Speicher 24 empfangen werden, jeweils verändert, so daß 3B(H) zu 67(H) , 3C(H) zu 71(H), 3D(H) zu 61(H), 3E(H) zu 75(H), 3F(H) zu 65(H), 49(H) zu 9B(H), und 41(H) zu 8B(H) verändert wird.In this case, as a practical example, assume that the CPU has written data to addresses 3B(H) to 41(H) in memory 24, then the address data actually received by memory 24 is changed so that 3B(H) is changed to 67(H), 3C(H) to 71(H), 3D(H) to 61(H), 3E(H) to 75(H), 3F(H) to 65(H), 49(H) to 9B(H), and 41(H) to 8B(H).
Obwohl voranstehend das Schreiben der Daten in den Speicherabschnitt beschrieben ist, wird dasselbe Verwürfelungsverfahren auch auf den Datenlesevorgang angewandt.Although the writing of data into the memory section is described above, the same scrambling method is also applied to the data reading process.
Daher werden bei dem obengenannten Scrambleraufbau durch Zwischenfügung des Scramblers in die Adreßleitungen zwischen der Zentralsteuerungseinheit 17 und dem Speicherabschnitt 184 zur Übertragung der Eingangsadreßdaten für den Speicher die Schreib/Lese-Vorgänge von Daten in den/aus dem Speicher 24 für die Ausgangsspeicheradressen durchgeführt, die verschieden von den Eingangsadressen gemäß Befehlen von der CPU sind, ohne das Programm zu verändern. Zum Beispiel werden, selbst wenn kontinuierliche Adressen von der CPU gegeben würden, um das Schreiben von Daten in den Speicher 24 anzuweisen, die Daten auf der Grundlage der diskontinuierlichen Adressen im Speicher 24 geschrieben. Somit ist, selbst wenn der Inhalt von Speicher 24 illegal in einem illegalen Versuch ausgelesen würden, der Inhalt von Speicher 24 nicht erkennbar, und ein Versuch einer illegalen Analyse des Speicherinhaltes kann verhindert werden. Somit läßt sich der illegale Gebrauch von Chipkarte 100 sicher verhindern und die Sicherheit im Gebrauch der Chipkarte erheblich verbessern.Therefore, in the above-mentioned scrambler structure, by interposing the scrambler in the address lines between the central control unit 17 and the memory section 184 for transmitting the input address data for the memory, the write/read operations of data into/from the memory 24 are performed for the output memory addresses different from the input addresses according to instructions from the CPU without changing the program. For example, even if continuous addresses are given from the CPU to instruct writing of data into the memory 24, the data is written in the memory 24 based on the discontinuous addresses. Thus, even if the contents of the memory 24 are illegally read out in an illegal attempt, the contents of the memory 24 are not recognizable, and an attempt to illegally analyze the memory contents can be prevented. This means that the illegal use of chip card 100 can be reliably prevented and the security of the use of the chip card can be significantly improved.
Wie im einzelnen oben beschrieben, können gemäß dem Chipkartenidentifikationssystem der Erfindung sogar in jedem Fall der Übereinstimmung oder Nichtübereinstimmung der persönlichen Identifikationsnummer "PIN", die von dem Kartenterminal eingegeben wird, mit der registrierten persönlichen Identifikationsnummer "R-PIN", die zuvor in der Chipkarte gespeichert wurde, die ersten und zweiten Verarbeitungszeitperioden, die für die Übereinstimmungs-/Nichtübereinstimmungsvorgänge benötigt werden, unter Verwendung des Zeitgliedes auf im wesentlichen dieselben Zeitperioden eingestellt werden. Daher ist es möglich, das traditionelle Problem zu eliminieren, daß die "PIN" unter Kenntnis der Differenz zwischen den Verarbeitungszeitperioden, wenn das Ergebnis der Kartenidentifikation die Übereinstimmung angibt und wenn es die Nichtübereinstimmung angibt, entschlüsselt werden kann. Daher kann ein Versuch einer illegalen Entschlüsselung der "PIN" verhindert werden und ein illegaler Gebrauch der Chipkarte sicher vermieden werden. Daher läßt sich die Sicherheit im Gebrauch der Karte erheblich verbessern.As described in detail above, according to the smart card identification system of the invention, even in any case of agreement or non-agreement of the personal identification number "PIN" input from the card terminal with the registered personal identification number "R-PIN" previously stored in the smart card, the first and second processing time periods required for the agreement/non-agreement operations can be set to substantially the same time periods using the timer. Therefore, it is possible to eliminate the traditional problem that the "PIN" can be decrypted by knowing the difference between the processing time periods when the result of the card identification indicates the agreement and when it indicates the non-agreement. Therefore, an attempt to illegally decrypt the "PIN" can be prevented and illegal use of the smart card can be safely avoided. Therefore, the security in using the card can be greatly improved.
Claims (7)
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP61096530A JPS62251963A (en) | 1986-04-25 | 1986-04-25 | Certificating system for ic card |
Publications (2)
Publication Number | Publication Date |
---|---|
DE3780070D1 DE3780070D1 (en) | 1992-08-06 |
DE3780070T2 true DE3780070T2 (en) | 1993-02-18 |
Family
ID=14167685
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE8787105926T Expired - Fee Related DE3780070T2 (en) | 1986-04-25 | 1987-04-23 | PIN CHECK TIME DETERMINATION COMPREHENSIVE CHIP CARD IDENTIFICATION SYSTEM. |
Country Status (5)
Country | Link |
---|---|
US (1) | US4839506A (en) |
EP (1) | EP0243873B1 (en) |
JP (1) | JPS62251963A (en) |
AT (1) | ATE77891T1 (en) |
DE (1) | DE3780070T2 (en) |
Families Citing this family (34)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE3879269T2 (en) * | 1987-05-15 | 1993-10-21 | Oki Electric Ind Co Ltd | IC cards and information stores therefor. |
JPH01114995A (en) * | 1987-10-29 | 1989-05-08 | Toppan Printing Co Ltd | Identification card |
US5089951A (en) * | 1987-11-05 | 1992-02-18 | Kabushiki Kaisha Toshiba | Microcomputer incorporating memory |
JPH01125687A (en) * | 1987-11-10 | 1989-05-18 | Mitsubishi Electric Corp | Legitimate owner confirming method |
CH675169A5 (en) * | 1988-02-22 | 1990-08-31 | Asea Brown Boveri | |
US4983816A (en) * | 1988-02-24 | 1991-01-08 | Kabushiki Kaisha Toshiba | Portable electronic device |
JPH0770065B2 (en) * | 1988-04-20 | 1995-07-31 | シャープ株式会社 | Optical pickup device |
JPH0758502B2 (en) * | 1988-06-30 | 1995-06-21 | 三菱電機株式会社 | IC card |
JP2501874B2 (en) * | 1988-06-30 | 1996-05-29 | 三菱電機株式会社 | IC card |
CA1326304C (en) * | 1989-01-17 | 1994-01-18 | Marcel Graves | Secure data interchange system |
JP2724008B2 (en) * | 1989-12-01 | 1998-03-09 | 沖電気工業株式会社 | Personal identification processing system and personal identification processing method |
FR2667715A1 (en) * | 1990-10-09 | 1992-04-10 | Gemplus Card Int | METHOD AND DEVICE FOR INCREASING THE PROTECTION OF A MEMORY CARD. |
JP2746801B2 (en) * | 1992-08-27 | 1998-05-06 | 三菱電機株式会社 | IC card and password verification method for IC card |
DE4243888A1 (en) * | 1992-12-23 | 1994-06-30 | Gao Ges Automation Org | Data carrier and method for checking the authenticity of a data carrier |
GB2276254B (en) * | 1993-03-20 | 1997-10-01 | Motorola Inc | Data storage device |
GB2284385A (en) * | 1993-12-06 | 1995-06-07 | George Derek Roy Tregellas | Electronic transaction card. |
JP2951844B2 (en) * | 1994-06-30 | 1999-09-20 | 日本信販株式会社 | Credit card system and credit card issuing method using the system |
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 |
CH690048A5 (en) * | 1995-11-28 | 2000-03-31 | C Sam S A En Formation C O Jue | Safety device controlling access to a computer or a network terminal. |
JP3169384B2 (en) * | 1996-07-24 | 2001-05-21 | 沖電気工業株式会社 | Semiconductor device |
KR100572912B1 (en) * | 1998-08-17 | 2006-04-24 | 코닌클리즈케 필립스 일렉트로닉스 엔.브이. | Data carrier device with test means for testing the access authorization of a data reading device |
AU3259101A (en) | 2000-02-18 | 2001-08-27 | Cypak Ab | Method and device for identification and authentication |
US20040205350A1 (en) * | 2000-08-28 | 2004-10-14 | Paul Waterhouse | Low cost secure ID card and system |
WO2003003194A1 (en) * | 2001-06-27 | 2003-01-09 | Sony Corporation | Integrated circuit device, information processing device, information recording device memory management method, mobile terminal device, semiconductor integrated circuit device, and communication method using mobile terminal device |
US8396809B1 (en) | 2002-05-14 | 2013-03-12 | Hewlett-Packard Development Company, L.P. | Method for reducing purchase time |
US6934664B1 (en) | 2002-05-20 | 2005-08-23 | Palm, Inc. | System and method for monitoring a security state of an electronic device |
KR100476876B1 (en) * | 2002-11-08 | 2005-03-17 | 박정웅 | Card provided with a password input key |
US8052056B2 (en) * | 2002-12-18 | 2011-11-08 | International Business Machines Corporation | Apparatus and method of entering an authorization code into a card terminal |
US7478752B2 (en) * | 2002-12-18 | 2009-01-20 | International Business Machines Corporation | Method of entering an authorization code into a chip card terminal |
JP4583305B2 (en) * | 2005-12-28 | 2010-11-17 | シャープ株式会社 | Recording method, recording apparatus, and IC card |
JP4987459B2 (en) * | 2006-12-25 | 2012-07-25 | フェリカネットワークス株式会社 | Information processing terminal and computer program |
CN103051454A (en) * | 2012-12-19 | 2013-04-17 | 天地融科技股份有限公司 | Electronic equipment and password authentication method thereof |
JP6194764B2 (en) * | 2013-11-08 | 2017-09-13 | 富士通株式会社 | Information processing apparatus, control method, and control program |
Family Cites Families (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3953769A (en) * | 1974-07-29 | 1976-04-27 | Sargent & Greenleaf, Inc. | Electronic security control system |
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 |
FR2401459A1 (en) * | 1977-08-26 | 1979-03-23 | Cii Honeywell Bull | PORTABLE INFORMATION MEDIA EQUIPPED WITH A MICROPROCESSOR AND A PROGRAMMABLE DEAD MEMORY |
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 |
DE3014882C2 (en) * | 1980-04-17 | 1983-08-11 | Porst, Hannsheinz, 8500 Nürnberg | Authorization ID |
DE3041109A1 (en) * | 1980-10-31 | 1982-06-09 | GAO Gesellschaft für Automation und Organisation mbH, 8000 München | IDENTIFICATION ELEMENT |
JPS592062B2 (en) * | 1980-12-06 | 1984-01-17 | オムロン株式会社 | PIN code identification device in transaction processing equipment |
JPS5975380A (en) * | 1982-10-21 | 1984-04-28 | Dainippon Printing Co Ltd | Ic card |
US4591704A (en) * | 1983-04-18 | 1986-05-27 | Engineered Systems, Inc. | Data scrambling system and method |
JPH0670818B2 (en) * | 1984-09-07 | 1994-09-07 | カシオ計算機株式会社 | Verification card and its authentication method |
US4614861A (en) * | 1984-11-15 | 1986-09-30 | Intellicard International, Inc. | Unitary, self-contained card verification and validation system and method |
JPS61139873A (en) * | 1984-12-13 | 1986-06-27 | Casio Comput Co Ltd | Authorization system |
US4667087A (en) * | 1986-03-31 | 1987-05-19 | Max A. Quintana | Secure credit card |
-
1986
- 1986-04-25 JP JP61096530A patent/JPS62251963A/en active Pending
-
1987
- 1987-04-16 US US07/039,325 patent/US4839506A/en not_active Expired - Lifetime
- 1987-04-23 EP EP87105926A patent/EP0243873B1/en not_active Expired - Lifetime
- 1987-04-23 AT AT87105926T patent/ATE77891T1/en not_active IP Right Cessation
- 1987-04-23 DE DE8787105926T patent/DE3780070T2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
US4839506A (en) | 1989-06-13 |
EP0243873A2 (en) | 1987-11-04 |
EP0243873A3 (en) | 1988-11-23 |
JPS62251963A (en) | 1987-11-02 |
ATE77891T1 (en) | 1992-07-15 |
DE3780070D1 (en) | 1992-08-06 |
EP0243873B1 (en) | 1992-07-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE3780070T2 (en) | PIN CHECK TIME DETERMINATION COMPREHENSIVE CHIP CARD IDENTIFICATION SYSTEM. | |
DE3700663C2 (en) | ||
DE3809170C2 (en) | ||
DE69529103T2 (en) | Method for handling security of a memory card, and memory card and suitable transaction device | |
DE2760486C2 (en) | ||
DE68913284T2 (en) | Portable electronic device and method for collating their secret information. | |
DE3044463C2 (en) | ||
DE2837201C2 (en) | ||
DE69433471T2 (en) | Card-type storage medium and output device for card-type storage medium | |
DE3732615C2 (en) | ||
DE2738113A1 (en) | Processing device for banking operations | |
DE2901521A1 (en) | PERSONAL IDENTIFICATION SYSTEM | |
DE60035852T2 (en) | Method and system for electronic authentication | |
CH629902A5 (en) | PROCEDURE FOR IDENTITY VERIFICATION. | |
DE3876665T2 (en) | CHIP CARD SYSTEM. | |
EP1099197A1 (en) | Device for supplying output data in reaction to input data, method for checking authenticity and method for encrypted data transmission | |
DE2528668A1 (en) | DEVICE FOR A LEGAL CARD HOLDER VERIFICATION SYSTEM | |
WO2006015573A1 (en) | Data carrier for the contactless transmission of encrypted data signals | |
EP0224639A1 (en) | Method to control the memory access of an IC card and implementing device | |
AT401205B (en) | SYSTEM FOR IDENTIFYING A CARD USER | |
EP1185960B1 (en) | Method and device for saving and retrieving pin codes | |
DE19851074C2 (en) | System and method for the secure identification and registration of people as well as a suitable registration device | |
DE2245027C2 (en) | Cash dispenser with testing device | |
DE69900566T2 (en) | Procedure for personalizing an IC card | |
EP1066607A1 (en) | Device and method for securely dispensing items with a monetary value |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
8364 | No opposition during term of opposition | ||
8339 | Ceased/non-payment of the annual fee |