EP0329966A1 - Verfahren zum Sichern von in einem Datenspeicher abgelegten geheimen Codedaten und Schaltungsanordnung zur Durchführung des Verfahrens - Google Patents
Verfahren zum Sichern von in einem Datenspeicher abgelegten geheimen Codedaten und Schaltungsanordnung zur Durchführung des Verfahrens Download PDFInfo
- Publication number
- EP0329966A1 EP0329966A1 EP89101292A EP89101292A EP0329966A1 EP 0329966 A1 EP0329966 A1 EP 0329966A1 EP 89101292 A EP89101292 A EP 89101292A EP 89101292 A EP89101292 A EP 89101292A EP 0329966 A1 EP0329966 A1 EP 0329966A1
- Authority
- EP
- European Patent Office
- Prior art keywords
- code data
- data
- memory
- circuit
- 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.)
- Granted
Links
Images
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
- 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
Definitions
- the invention relates to a method for securing secret code data stored in a data memory prior to an analysis, in which the memory contents can be inferred from the signals at the memory outputs, according to the preamble of claim 1 and an integrated splitting with a data memory for carrying out the method .
- a generic method and a generic integrated circuit for carrying out the method are known in principle from EP-OS 0 207 320.
- Such an integrated circuit represents, for example, an essential element of a so-called chip card, which can be used in security and access systems, in billing or registration systems and in debit and credit systems.
- the integrated circuit and the data memory are accessed via external contacts on the card surface in a card reader.
- memory data are stored in a memory area referred to as code data memory on the respective cards and are used as secret code data for identification or authentication of the card user or the card.
- System security depends on how well this code data is protected against misuse. That is why very high demands are placed on the fraud security of cards and readers. Due to the security precautions corresponding to today's experience, however, a direct attempt to analyze the content of the code data memory, which usually consists of an EE-PROM memory and in particular a sub-area of said data memory of the card, little chance of success. However, it is possible to draw conclusions about this memory data from the indirect influence of the code data on the code memory outputs or on the connected peripheral logic.
- FR-PS 23 11 360 From FR-PS 23 11 360 it is known to determine an access authorization to provide a certain number of code entries by the operator and to store all inadmissible attempts in a memory provided for this purpose until the entire memory space is occupied. The unit to be protected is then put out of operation.
- EP-OS 0 128 362 A circuit arrangement with memory and security logic is known from EP-OS 0 128 362, in which after comparison of an entered control word with a stored code word, at least one memory cell of an operation data area is written, the address of which depends on the comparison result. Access attempts with incorrect control data entries are registered here because, in addition to the access release, the operation data memory is only deleted after the release procedure has been successfully completed. Due to the limited size of the operation data memory, the number of permissible incorrect entries is limited.
- the code data stored in the data memory are largely unused protects to the comparator device in which they are compared with input control data.
- a comparator device for comparing the code data with control data entered by the user and the code data is transmitted via a data transmission device, e.g. If a data line or a data bus are routed to this comparator device, for example a comparator, the code data could be read on this data transmission device.
- a data transmission device mentioned above can in particular contain the column lines of the data memory as well as the column decoder and the data bus.
- An integrated circuit described in EP-OS 0 207 320 contains a non-volatile code data memory, which is in particular of the EE-PROM type and in which a secret code is stored.
- This code data memory is connected via a data bus to an input of a comparator circuit, the other input of which is provided for the control data to be entered.
- the output of the code memory or the data bus is in this case equipped with a blocking circuit which can be controlled by a logic circuit in such a way that the outputs of the memory cells, as a rule the column lines of the memory field, are blocked in the normal state with respect to the peripheral logic.
- the lock is only released for a short period in which the secret data in the peripheral logic is actually required for the data comparison. The possibility of performing an analysis of the code data is therefore limited to a short period of time, but is not absolutely impossible.
- the output lines of the code data memory to be protected are switched to a defined potential independently of the stored information.
- the start of a code data memory access is initiated by a write operation in a counter memory, which is addressed together with the relevant code word.
- This counter memory is only reset when the control data corresponding to the code data has been entered correctly and a control process has been completed.
- the size of the counter memory determines the number of incorrect access attempts.
- An additional identification memory identifies the cells of the data memory that make up the code data memory, so that the access block is restricted to this area only.
- the object of the invention is to provide a method for absolutely saving secret code data stored in a data memory prior to analysis.
- Secret code data stored in a data memory which are compared with input control data with the aid of a comparator device and which must be passed from the data memory output to the comparator device via a data transmission device, can be analyzed while they are on the data transmission device.
- Such an analysis can be prevented in that, after initiating a data comparison, not all secret code data are transferred from the data memory to the data transmission device, but that, according to the invention, a blocking circuit is activated by the first input of control data that do not match the code data further output of code data to the data transmission device prevented.
- the code data should preferably only be output from the memory to the data transmission device after a comparison process has been registered, for example by writing a counter bit. If the registration is done by writing a counter bit, it can also be ensured by an upstream logic circuit that the counter bit described was previously not written to. Said registration, in particular by writing a counter bit, can be provided both for the permanent registration of all access attempts made and for the registration of incorrect access attempts. If the registration is to be carried out using an error counter, a logic circuit must be used to ensure that the error counter can only be reset after the correct data comparison has been carried out.
- the security of the method can be further increased by the fact that even in the case of byte-by-byte stored code data, these are transferred serially to the data bus and compared bit by bit with the control data. As soon as the first control bit does not match the corresponding code bit, the output of the next code bit to the data transmission device is then prevented.
- FIG shows in the form of a block diagram a particularly favorable embodiment of an integrated circuit for carrying out a fuse method according to the invention.
- block 1 represents a data storage device which contains at least one code data storage 1 a and in particular can contain an identification memory.
- Block 2 contains an enable counter, which can be used in particular as an error counter and which is activated to guide a comparison cycle, in particular by writing a free counter bit.
- Block 3 contains a control logic circuit which controls whether a counter bit of the release counter 2 was previously unwritten and was then written, and in this case forwards a corresponding release signal to a blocking logic circuit 9 according to the invention.
- Block 4 contains a blocking circuit which is intended to prevent the code data of the code data memory from being output to a data transmission device 6 and, in particular in the activated state, sets the data outputs of the code data memory or the data lines connected thereto to a fixed potential.
- Block 5 contains a comparator device which compares the control data entered at the input 7 with the code data located on the data transmission device 6 and provides the data corresponding to the comparison results at an output 8.
- a comparator device which compares the control data entered at the input 7 with the code data located on the data transmission device 6 and provides the data corresponding to the comparison results at an output 8.
- a blocking logic circuit 9 activates the blocking circuit 4 due to the first negative comparison result at the output 8.
- the output of the code data from the code data memory 1 a to the data transmission device 6 is made possible in particular by the blocking logic circuit 9 after the write of a previously free enable counter bit by switching off the blocking circuit 4.
- the blocking logic circuit 9 contains a switch-off logic circuit 10 which, after the comparison of correct control data with the code data of a complete code, causes the blocking circuit 4 to be activated. Because the signal at the output 8a of this switch-off logic circuit 10 is dependent on complete correct control data input, it can also be provided for resetting an error counter and, in addition to the signal at the output 8 of the comparator device 5, as an enable signal for the entire safety circuit.
- the switch-off logic circuit 10 preferably contains a counter which is reset when the blocking circuit 4 or the release counter 2 is activated, which counts by one for each correct data comparison of the comparator device 5 and which activates the blocking circuit after comparing the last code bit.
- the control logic circuit 3 monitors whether a counter bit of the release counter 2, which was not previously written, is written to. An output of this control logic circuit 3 is connected to the set input of an RS flip-flop 12, which is in the blocking logic circuit 9 is included. After a counter bit has been correctly written into the release counter 2, this flip-flop 12 is set. The inverted output QN of this flip-flop 12 is connected to the control input of the blocking circuit 4 and deactivates the blocking circuit when the flip-flop is set.
- the blocking circuit 4 contains, in particular, a switch T for each data line, which sets this data line to a fixed potential when the blocking circuit 4 is activated.
- Another embodiment of the blocking circuit 4 according to the invention is implemented in such a way that the column decoder of the code data memory 1 a is switched on for all columns when the blocking circuit 4 is activated. As a result, all outputs of the code data memory 1 a are in parallel and an association between the information of the code data to be protected and the information on the data transmission device 6 is not possible.
- code data from the code data memory 1 a can be transmitted bit by bit or byte via the data transmission device 6 to a first input of the comparator device 5.
- the comparator device 5 which can in particular consist of a known type of comparator, compares the code data present at its first input with the corresponding control data entered at its second input 7 and preferably outputs the comparison results serially at its output 8.
- the blocking logic circuit 9 triggered by the output 8 of the comparator device 5 only causes the blocking circuit 4 to be blocked if the corresponding data comparison is the last data comparison of a comparison cycle, that is to say if it is with the last correct data comparison the entire code has been compared with correct control data.
- a counter circuit 10 counts one unit further, that this counter circuit 10 is reset at the beginning of a comparison cycle, which is caused, among other things, by resetting the counter scarf device 10 can be reached with the activating control signal of the blocking circuit 4 and that the counter circuit 10 outputs a signal at its output 8a when the counter reading, which corresponds to the total number of comparison operations corresponding to the code, which causes the activation of the blocking circuit 4.
- an address counter provided in the integrated circuit can also serve as the counter circuit 10. The multiple use of such a counter leads to a chip area saving.
- This signal at the output 8a of the counter circuit 10 can also be provided as a reset signal of an enable counter 2 operated as an error counter and as an enable signal of the code security circuit.
- This release signal can release any function to be protected and can also enable, for example, the release of a CPU contained in a microprocessor, in particular release of the program decoder or the data decoder.
- the first comparison operation of the comparator device 5 with different data already causes the blocking circuit 4 to be activated.
- the activation of the blocking circuit 4 by the output signal of the switch-off logic circuit 10 and by the output signal of the comparator device 5 in the presence of a negative data comparison can in particular be achieved according to the invention in that the output 8 of the comparator device 5 is connected to an input of a logic gate 11 and the output 8a of the switch-off logic circuit 10 is connected to the other input of this logic gate 11 and that the output signal of this logic gate 11 is provided to act on the reset input of the flip-flop 12 contained in the blocking logic circuit 9.
- an OR gate fulfills the function of the logic gate 11.
Abstract
Description
- Die Erfindung betrifft ein Verfahren zum Sichern von in einem Datenspeicher abgelegten geheimen Codedaten vor einer Analyse, bei welcher aus den Signalen an den Speicherausgängen auf den Speicherinhalt geschlossen werden kann, nach dem Oberbegriff des Patentanspruches 1 und eine integrierte Spaltung mit einem Datenspeicher zur Durchführung des Verfahrens.
- Ein gattungsgemäßes Verfahren sowie eine gattungsgemäße integrierte Schaltung zur Durchführung des Verfahrens sind aus der EP-OS 0 207 320 prinzipell bekannt.
- Eine derartige integrierte Schaltung stellt beispielsweise ein wesentliches Element einer sogenannten Chip-Karte dar, die in Sicherheits- und Zugriffssystemen, in Abrechnungs- oder Registriersystemen und in Debit- und Kreditsystemen eingesetzt werden kann. Auf die integrierte Schaltung und den Datenspeicher wird über Außenkontakte auf der Kartenoberfläche in einem Kartenlesegerät zugegriffen.
- In vielen Anwendungsfällen sind in einem als Code-Datenspeicher bezeichneten Speicherbereich auf den jeweiligen Karten Speicherdaten abgelegt, die als geheime Codedaten zur Identifikation oder Autentifikation des Kartenbenützers oder der Karte verwendet werden. Die Systemsicherheit hängt davon ab, wie gut diese Codedaten gegen eine mißbräuchliche Analyse geschützt werden. Deshalb werden an die Betrugssicherheit der Karten und Lesegeräte sehr hohe Anforderungen gestellt. Aufgrund der dem heutigen Erfahrungsstand entsprechenden Sicherheitsvorkehrungen hat jedoch ein direkter Analyseversuch des Inhaltes des Code-Datenspeichers, der in der Regel aus einem EE-PROM-Speicher besteht und insbesondere einen Teilbereich des besagten Datenspeichers der Karte ausmacht, kaum Aussicht auf Erfolg. Es besteht jedoch die Möglichkeit, aus dem indirekten Einfluß der Codedaten auf die Codespeicherausgänge bzw. auf die angeschlossene Periferielogik Rückschlüsse auf diese Speicherdaten zu ziehen.
- Aus der FR-PS 23 11 360 ist zur Ermittlung einer Zugriffsberechtigung bekannt, eine bestimmte Anzahl von Codeeingaben durch die Bedienperson vorzusehen und alle unzulässigen Versuche in einem dafür bereitsgestellten Speicher so oft abzuspeichern, bis der gesamte Speicherraum belegt ist. Daraufhin wird die zu schützende Einheit außer Betrieb gesetzt.
- Aus der EP-OS 0 127 809 ist eine Schaltungsanordnung bekannt, bei der Datenvergleiche zwischen gespeicherten Codedaten und von außen eingegebenen Kontrolldaten durchgeführt werden, wobei der Adreßraum des die Codedaten aufnehmenden Speicherbereichs in mehrere, von einer Auswahllogik festgelegte Teilmengen mit jeweils mehreren Adressen unterteilt ist und wobei die die Teilmengen festlegenden Adreßleitungen mit einer Adreßkontrolleinheit verbunden sind, an der ein Freigabesignal abgreifbar ist, wenn im Verlauf der Vergleichsoperationen mindestens eine Adresse aus jeder Teilmenge angewählt wurde.
- Aus der EP-OS 0 128 362 ist eine Schaltungsanordnung mit Speicher- und Sicherheitslogik bekannt, bei der nach Vergleich eines eingegebenen Kontrollwortes mit einem abgespeicherten Codewort mindestens in eine Speicherzelle eines Operationsdatenbereiches geschrieben wird, deren Adresse vom Vergleichsergebnis abhängt. Hierbei werden Zugriffsversuche mit fehlerhaften Kontrolldateneingaben registriert, weil neben der Zugriffsfreigabe auch das Löschen des Operationsdatenspeichers nur nach erfolgreichem Abschluß der Freigabeprozedur erfolgt. Durch den begrenzten Umfang des Operationsdatenspeichers ist somit die Zahl der zulässigen Falscheingaben beschränkt.
- In den zuvor beschriebenen Schaltungsanordnungen werden jedoch die im Datenspeicher abgelegten Codedaten weitgehend unge schützt zur Vergleichereinrichtung, in der sie mit eingegebenen Kontrolldaten verglichen werden, übertragen.
- Insbesondere wenn zum Vergleich der Codedaten mit vom Benutzer eingegebenen Kontrolldaten eine Vergleichereinrichtung vorgesehen ist und die Codedaten über eine Datenübertragungseinrichtung, wie z.B. eine Datenleitung bzw. einen Datenbus zu dieser Vergleichereinrichtung, beispielsweise einem Komparator, geführt werden, könnten die Codedaten auf dieser Datenübertragungseinrichtung gelesen werden. Eine oben erwähnte Datenübertragungseinrichtung kann insbesondere die Spaltenleitungen des Datenspeichers sowie den Spaltendecoder und den Datenbus beinhalten.
- Eine in der EP-OS 0 207 320 beschriebene integrierte Schaltung enthält einen nichtflüchtigen Code-Datenspeicher, der insbesondere vom EE-PROM-Typ ist und in dem ein Geheimcode gespeichert ist. Dieser Code-Datenspeicher ist über einen Datenbus mit einem Eingang einer Vergleicherschaltung verbunden, deren anderer Eingang zur Beaufschlagung mit einzugebenden Kontrolldaten vorgesehen ist. Der Ausgang des Codespeichers bzw. der Datenbus ist hierbei derart mit einer durch eine Logikschaltung steuerbaren Sperrschaltung ausgestattet, daß die Ausgänge der Speicherzellen, in der Regel die Spaltenleitungen des Speicherfeldes, im Normalzustand gegenüber der Periferielogik gesperrt sind. Die Sperre wird nur für einen kurzen Zeitraum aufgehoben, in dem die Geheimdaten in der Periferielogik tatsächlich für den Datenvergleich benötigt werden. Die Möglichkeit, eine Analyse der Codedaten durchzuführen, ist daher auf eine kurze Zeitspanne begrenzt, aber nicht absolut ausgeschlossen. Insbesondere sind bei aktivierter Sperre die zu schützenden Ausgangsleitungen des Code-Datenspeichers unabhängig von der gespeicherten Information auf ein definiertes Potential geschaltet.
- Um die Anzahl möglicher Analyseversuche weiter einzugrenzen, wird der Beginn eines Code-Datenspeicherzugriffs durch einen Schreibvorgang in einem Zählspeicher eingeleitet, der gemeinsam mit dem betreffenden Codewort addressiert wird. Dieser Zählspeicher wird erst zurückgesetzt, wenn die den Codedaten entsprechenden Kontrolldaten fehlerfrei eingegeben wurden und ein Kontrollvorgang abgeschlossen ist. Dadurch legt der Umfang des Zählspeichers die Anzahl der fehlerhaften Zugriffsversuche fest. Ein zusätzlicher Kennspeicher kennzeichnet die den Code-Datenspeicher ausmachenden Zellen des Datenspeichers, so daß die Zugriffssperre nur auf diesen Bereich beschränkt ist.
- Eine in dieser Offenlegungsschrift beschriebene Schaltung begrenzt zwar zeitlich die Ausgabe von Codedaten aus dem Code-Datenspeicher auf den Datenbus, eine Analyse aller Codedaten wird dadurch aber nur erschwert, nicht unterbunden.
- Aufgabe der Erfindung ist die Bereitstellung eines Verfahrens zum absoluten Sichern von in einem Datenspeicher abgelegten geheimen Codedaten vor einer Analyse.
- Diese Aufgabe wird durch ein Verfahren nach dem kennzeichnenden Teil des Patentanspruches 1 sowie durch eine integrierte Schaltung nach dem kennzeichnenden Teil des Patentanspruches 6 gelöst.
- In einem Datenspeicher abgelegte geheime Codedaten, die mit Hilfe einer Vergleichereinrichtung mit eingegebenen Kontrolldaten verglichen werden und hierzu vom Datenspeicherausgang über eine Datenübertragungseinrichtung an die Vergleichereinrichtung geleitet werden müssen, können, während sie sich auf der Datenübertragungseinrichtung befinden, analysiert werden. Eine solche Analyse kann dadurch verhindert werden, daß nach Einleitung eines Datenvergleiches nicht alle geheimen Codedaten aus dem Datenspeicher auf die Datenübertragungseinrichtung gegeben werden, sondern daß erfindungsgemäß durch die erste Eingabe von Kontrolldaten, die nicht mit den Codedaten übereinstimmen, eine Sperrschaltung aktiviert wird, die eine weitere Ausgabe von Codedaten auf die Datenübertragungseinrichtung verhindert.
- Als besonders günstig erweist es sich, wenn auch nach Abschluß eines korrekten Datenvergleiches aller einen kompletten Code ausmachenden Codedaten eine weitere Ausgabe von Codedaten aus dem Speicher auf die Datenübertragungseinrichtung verhindert wird.
- Vorzugsweise sollte erst nach Registrieren eines Vergleichsvorganges, beispielsweise durch Schreiben eines Zählerbits, die Ausgabe der Codedaten aus dem Speicher auf die Datenübertragungseinrichtung ermöglicht werden. Falls die Registrierung durch das Schreiben eines Zählerbits erfolgt, kann außerdem durch eine vorgeschaltete Logikschaltung sichergestellt werden, daß das beschriebene Zählerbit zuvor noch unbeschrieben war. Die besagte Registrierung, insbesondere durch Schreiben eines Zählerbits, kann sowohl der dauerhaften Registrierung aller vorgenommener Zugriffsversuche, als auch zur Registrierung fehlerhafter Zugriffsversuche vorgesehen sein. Soll die Registrierung durch den Einsatz eines Fehlerzählers vorgenommen werden, so ist insbesondere durch eine Logikschaltung sicherzustellen, daß der Fehlerzähler nur nach erfolgtem korrekten Datenvergleich zurückgesetzt werden kann.
- Die Sicherheit des Verfahrens kann dadurch weiter erhöht werden, daß selbst bei byteweise gespeicherten Codedaten diese seriell auf den Datenbus gegeben werden und bitweise mit den Kontrolldaten verglichen werden. Sobald das erste Kontrollbit nicht mit dem entsprechenden Codebit übereinstimmt, wird dann die Ausgabe des nächsten Codebits auf die Datenübertragungseinrichtung unterbunden.
- Ist ein Fehlerzähler zum Zählen der fehlerhaften Kontrolldaten vorgesehen, wobei jede fehlerhafte Kontrolldateneingabe erfindungsgemäß das erneute Starten eines Datenvergleiches erfordert, so ist es aus Gründen der Sicherheit von Vorteil, wenn die Anzahl der für einen Vergleichszyklus erforderlichen Vergleichsoperationen möglichst groß ist gegenüber der maximal zulässigen Anzahl von fehlerhaften Kontrolldateneingaben. Mindestens aber sollte die Anzahl der für einen Vergleichszyklus erforderlichen Vergleichsoperation größer sein als die maximal zulässige Anzahl von fehlerhaften Kontrolldateneingaben.
- Die FIG zeigt in Form eines Blockschaltbildes eine besonders günstige Ausführungsform einer integrierten Schaltung zur erfindungsgemäßen Durchführung eines erfindungsgemäßen Sicherungsverfahrens.
- Hierbei stellt Block 1 eine Datenspeichereinrichtung dar, die mindestens einen Code-Datenspeicher 1a enthält und insbesondere einen Kennspeicher enthalten kann. Block 2 enthält einen Freigabezähler, der insbesondere als Fehlerzähler eingesetzt werden kann und der zur Anleitung eines Vergleichszyklusses aktiviert wird, insbesondere dadurch, daß ein freies Zählerbit geschrieben wird. Block 3 enthält eine Kontroll-Logikschaltung, die kontrolliert, ob ein Zählerbit des Freigabezählers 2 vorher ungeschrieben war und dann geschrieben worden ist und in diesem Falle ein entsprechendes Freigabesignal an eine erfindungsgemäße Sperrlogikschaltung 9 weitergibt. Block 4 enthält eine Sperrschaltung, die die Ausgabe der Codedaten des Code-Datenspeichers auf eine Datenübertragungseinrichtung 6 verhindern soll und insbesondere im aktivierten Zustand die Datenausgänge des Code-Datenspeichers oder die daran angeschlossenen Datenleitungen auf ein festes Potential legt. Block 5 enthält eine Vergleichereinrichtung, die die am Eingang 7 eingegebenen Kontrolldaten mit den auf der Datenübertragungseinrichtung 6 befindlichen Codedaten vergleicht und die den Vergleichsergebnissen entsprechenden Daten an einem Ausgang 8 bereitstellt. Ausführungsformen der in den Blöcken 1, 1a, 2, 3, 4 und 5 enthaltenen Schaltungen und der Datenübertragungseinrichtung 6 sowie deren Funktionsweise sind in der Offenlegungsschrift des europäischen Patentamtes EP-OS 0 207 320 beschrieben.
- Bei einer monolithisch integrierbaren elektronischen Schaltung, bei der ein Code-Datenspeicher 1a über eine Sperrschaltung 4 und eine Datenübertragungseinrichtung 6 an einen Eingang einer Vergleichereinrichtung 5 geschaltet ist, bei der diese Vergleicher einrichtung 5 einen weiteren Eingang 7 sowie einen die Vergleichsergebnisse bereitstellenden Ausgang 8 aufweist, wird die Ausgabe weiterer Codedaten auf die Datenübertragungseinrichtung 6 dadurch verhindert, daß eine erfindungsgemäße Sperrlogikschaltung 9 aufgrund des ersten negativen Vergleichsergebnisses am Ausgang 8 die Sperrschaltung 4 aktiviert.
- Vorzugsweise wird bei einer solchen Schaltung die Ausgabe der Codedaten aus dem Code-Datenspeicher 1a auf die Datenübertragungseinrichtung 6 insbesondere durch die Sperrlogikschaltung 9 nach dem Schreiben eines vorher freien Freigabezählerbits durch Abschalten der Sperrschaltung 4 ermöglicht.
- Als besonders günstig erweist es sich, wenn die Sperrlogikschaltung 9 eine Abschaltlogikschaltung 10 enthält, die nach dem Vergleich von korrekten Kontrolldaten mit den Codedaten eines vollständigen Codes das Aktivieren der Sperrschaltung 4 veranlaßt. Weil das Signal am Ausgang 8a dieser Abschaltlogikschaltung 10 von einer vollständigen korrekten Kontrolldateneingabe abhängig ist, kann es auch zum Rücksetzen eines Fehlerzählers und, neben dem Signal am Ausgang 8 der Vergleichereinrichtung 5, als Freigabesignal der gesamten Sicherheitsschaltung vorgesehen werden. Die Abschaltlogikschaltung 10 enthält vorzugsweise einen Zähler, der bei Aktivierung der Sperrschaltung 4 oder des Freigabezählers 2 zurückgesetzt wird, der bei jedem korrekten Datenvergleich der Vergleichereinrichtung 5 um eins weiterzählt und nach den Vergleichen des letzten Codebits die Sperrschaltung aktiviert.
- Im folgenden wird die Funktion einer erfindungsgemäßen Schaltung anhand des in der FIG dargestellten besonders günstigen Ausführungsbeispiels beschrieben.
- Die Kontroll-Logikschaltung 3 überwacht, ob ein zuvor nichtbeschriebenes Zählerbit des Freigabezählers 2 beschrieben wird. Ein Ausgang dieser Kontroll-Logikschaltung 3 ist mit dem Set-Eingang eines RS-Flip-Flop 12 verbunden, das in der Sperrlogik schaltung 9 enthalten ist. Nach dem korrekten Einschreiben eines Zählerbits in den Freigabezähler 2 wird dieses Flip-Flop 12 gestetzt. Der invertierte Ausgang QN dieses Flip-Flop 12 ist mit dem Steuereingang der Sperrschaltung 4 verbunden und deaktiviert die Sperrschaltung, wenn das Flip-Flop gestetzt wird. Die Sperrschaltung 4 enthält Insbesondere für jede Datenleitung einen Schalter T, der diese Datenleitung bei aktivierter Sperrschaltung 4 auf ein festes Potential legt. Eine andere erfindungsgemäße Ausführungsform der Sperrschaltung 4 wird derart realisiert, daß der Spaltendecoder des Code-Datenspeichers 1a im aktivierten Zustand der Sperrschaltung 4 für alle Spalten leitend geschaltet ist. Dadurch liegen alle Ausgänge des Code-Datenspeichers 1a parallel und eine Zuordnung zwischen der zu schützenden Information der Codedaten und der Information auf der Datenübertragungseinrichtung 6 ist nicht möglich. Ist die Sperrschaltung 4 deaktiviert, so können Codedaten aus dem Code-Datenspeicher 1a bit- oder byteweise über die Datenübertragungseinrichtung 6 an einen ersten Eingang der Vergleichereinrichtung 5 übertragen werden. Die Vergleichereinrichtung 5, die insbesondere aus einem Komparator bekannter Art bestehen kann, vergleicht die an ihrem ersten Eingang anstehenden Codedaten mit den entsprechenden, an ihrem zweiten Eingang 7 eingegebenen Kontrolldaten und gibt die Vergleichsergebnisse vorzugsweise seriell an ihrem Ausgang 8 aus.
- Sind die Codedaten mit den Kontrolldaten identisch, wobei vorzugsweise bitweise verglichen wird, so veranlaßt die vom Ausgang 8 der Vergleichereinrichtung 5 angesteuerte Sperrlogikschaltung 9 nur dann ein Sperren der Sperrschaltung 4, wenn der entsprechende Datenvergleich der letzte Datenvergleich eines Vergleichszyklusses ist, d.h., wenn mit dem letzten korrekten Datenvergleich der gesamte Code mit korrekten Kontrolldaten verglichen worden ist. Das wird beispielsweise dadurch erreicht, daß bei jedem Vergleichsergebnis eines korrekten Datenvergleiches eine Zählerschaltung 10 um eine Einheit weiter zählt, daß diese Zählerschaltung 10 zum Beginn eines Vergleichszyklusses zurückgesetzt ist, was unter anderem durch ein Zurücksetzen der Zählerschal tung 10 mit dem aktivierenden Steuersignal der Sperrschaltung 4 erreicht werden kann und daß die Zählerschaltung 10 bei Erreichen des Zählerstandes, der der Gesamtzahl der dem Code entsprechenden Vergleichsoperationen entspricht, ein Signal an ihren Ausgang 8a ausgibt, das die Aktivierung der Sperrschaltung 4 veranlaßt. Als Zählerschaltung 10 kann erfindungsgemäß auch ein so wieso in der integrierten Schaltung vorgesehener Adresszähler dienen. Die Mehrfachnutzung eines solchen Zählers führt zu einer Chipflächenersparnis.
- Dieses Signal am Ausgang 8a der Zählerschaltung 10 kann auch als Rücksetzsignal eines als Fehlerzähler betriebenen Freigabezählers 2 sowie als Freigabesignal der Code-Sicherungsschaltung vorgesehen sein. Dieses Freigabesignal kann irgendeine zu schützende Funktion freigeben, kann auch beispielsweise die Freigabe einer in einem Mikroprozessor enthaltenen CPU, insbesondere eine Freigabe des Programmdecoders oder des Datendecoders ermöglichen.
- Unterscheiden sich die Codedaten von den entsprechenden Kontrolldaten, so veranlaßt bereits die erste Vergleichsoperation der Vergleichereinrichtung 5 mit unterschiedlichen Daten eine Aktivierung der Sperrschaltung 4.
- Die Aktivierung der Sperrschaltung 4 durch das Ausgangssignal der Abschaltlogikschaltung 10 sowie durch das Ausgangssignal der Vergleichereinrichtung 5 bei Vorliegen eines negativen Datenvergleiches kann erfindungsgemäß insbesondere dadurch realisiert werden, daß der Ausgang 8 der Vergleichereinrichtung 5 an einen Eingang eines Logikgatters 11 und der Ausgang 8a der Abschaltlogikschaltung 10 an den anderen Eingang dieses Logikgatters 11 geschaltet ist und daß das Ausgangssignal dieses Logikgatters 11 zur Beaufschlagung des Reset-Einganges des in der Sperrlogikschaltung 9 enthaltenen Flip-Flop 12 vorgesehen ist.
- Soll die Sperrschaltung 4 bei Vorliegen eines High-Signales am Ausgang 8 der Vergleichereinrichtung 5 sowie am Ausgang 8a der Abschaltlogikschaltung 10 aktiviert werden, so erfüllt beispielsweise ein Oder-Gatter die Funktion des Logikgatters 11.
Claims (10)
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE3805977 | 1988-02-25 | ||
DE3805977 | 1988-02-25 |
Publications (2)
Publication Number | Publication Date |
---|---|
EP0329966A1 true EP0329966A1 (de) | 1989-08-30 |
EP0329966B1 EP0329966B1 (de) | 1995-09-20 |
Family
ID=6348186
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
EP89101292A Expired - Lifetime EP0329966B1 (de) | 1988-02-25 | 1989-01-25 | Verfahren zum Sichern von in einem Datenspeicher abgelegten geheimen Codedaten und Schaltungsanordnung zur Durchführung des Verfahrens |
Country Status (6)
Country | Link |
---|---|
EP (1) | EP0329966B1 (de) |
AT (1) | ATE128258T1 (de) |
DE (1) | DE58909440D1 (de) |
DK (1) | DK169883B1 (de) |
ES (1) | ES2077566T3 (de) |
FI (1) | FI100068B (de) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
FR2663142A1 (fr) * | 1990-06-07 | 1991-12-13 | Toshiba Kk | Dispositif electronique portable a memoire. |
FR2789774A1 (fr) * | 1999-02-11 | 2000-08-18 | Bull Cp8 | Procede de comparaison securise de deux registres memoire, et module de securite mettant en oeuvre ce procede |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3761892A (en) * | 1971-07-19 | 1973-09-25 | R Bosnyak | Electronic locking system |
US3829833A (en) * | 1972-10-24 | 1974-08-13 | Information Identification Co | Code element identification method and apparatus |
US4102493A (en) * | 1975-05-13 | 1978-07-25 | Societe Internationale Pour L'innovation | Systems for storing and transferring data |
EP0207320A1 (de) * | 1985-07-03 | 1987-01-07 | Siemens Aktiengesellschaft | Integrierte Schaltung und Verfahren zum Sichern von geheimen Codedaten |
EP0215464A2 (de) * | 1985-09-20 | 1987-03-25 | Hitachi, Ltd. | Integrierte Halbleiterschaltung |
-
1988
- 1988-12-29 DK DK728088A patent/DK169883B1/da not_active IP Right Cessation
-
1989
- 1989-01-25 ES ES89101292T patent/ES2077566T3/es not_active Expired - Lifetime
- 1989-01-25 DE DE58909440T patent/DE58909440D1/de not_active Expired - Fee Related
- 1989-01-25 EP EP89101292A patent/EP0329966B1/de not_active Expired - Lifetime
- 1989-01-25 AT AT89101292T patent/ATE128258T1/de not_active IP Right Cessation
- 1989-02-24 FI FI890900A patent/FI100068B/fi not_active IP Right Cessation
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3761892A (en) * | 1971-07-19 | 1973-09-25 | R Bosnyak | Electronic locking system |
US3829833A (en) * | 1972-10-24 | 1974-08-13 | Information Identification Co | Code element identification method and apparatus |
US4102493A (en) * | 1975-05-13 | 1978-07-25 | Societe Internationale Pour L'innovation | Systems for storing and transferring data |
EP0207320A1 (de) * | 1985-07-03 | 1987-01-07 | Siemens Aktiengesellschaft | Integrierte Schaltung und Verfahren zum Sichern von geheimen Codedaten |
EP0215464A2 (de) * | 1985-09-20 | 1987-03-25 | Hitachi, Ltd. | Integrierte Halbleiterschaltung |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
FR2663142A1 (fr) * | 1990-06-07 | 1991-12-13 | Toshiba Kk | Dispositif electronique portable a memoire. |
FR2789774A1 (fr) * | 1999-02-11 | 2000-08-18 | Bull Cp8 | Procede de comparaison securise de deux registres memoire, et module de securite mettant en oeuvre ce procede |
US6523056B1 (en) | 1999-02-11 | 2003-02-18 | Bull Cp8 | Process for secure comparison of two storage registers, and security module implementing this process |
Also Published As
Publication number | Publication date |
---|---|
ES2077566T3 (es) | 1995-12-01 |
FI890900A0 (fi) | 1989-02-24 |
FI890900A (fi) | 1989-08-26 |
EP0329966B1 (de) | 1995-09-20 |
DK728088A (da) | 1989-08-26 |
DK728088D0 (da) | 1988-12-29 |
DK169883B1 (da) | 1995-03-20 |
ATE128258T1 (de) | 1995-10-15 |
FI100068B (fi) | 1997-09-15 |
DE58909440D1 (de) | 1995-10-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP0512542B1 (de) | Datenschützende Mikroprozessorschaltung für tragbare Datenträger, beispielsweise Kreditkarten | |
DE3048365C2 (de) | ||
EP0466969B1 (de) | Verfahren zur Verhinderung unzulässiger Abweichungen vom Ablaufprotokoll einer Anwendung bei einem Datenaustauschsystem | |
DE2621271C2 (de) | Tragbarer Datenträger | |
DE2621269C2 (de) | Datenaustauschsystem mit wenigstens einer Datenträgeranordnung | |
DE2916658C2 (de) | ||
DE2560688C2 (de) | ||
DE2837201C2 (de) | ||
DE19536169A1 (de) | Multifunktionale Chipkarte | |
EP0207320B1 (de) | Integrierte Schaltung und Verfahren zum Sichern von geheimen Codedaten | |
EP0813714B1 (de) | Mehrbenutzerdatenverarbeitungsanlage mit speicherschutz | |
EP0011685B1 (de) | Programmierbare Speicherschutzeinrichtung für Mikroprozessorsysteme und Schaltungsanordnung mit einer derartigen Einrichtung | |
DE2758152A1 (de) | Speicherschutzanordnung | |
DE3318101A1 (de) | Schaltungsanordung mit einem speicher und einer zugriffskontrolleinheit | |
EP0224639B1 (de) | Verfahren zum Kontrollieren eines Speicherzugriffs auf einer Chipkarte und Anordnung zur Durchführung des Verfahrens | |
DE1499182A1 (de) | Elektrische Datenverarbeitungsanlage | |
DE1499687B2 (de) | Speicherschutz-einrichtung | |
EP0935214B1 (de) | Chipkarte mit integrierter Schaltung | |
EP0127809B1 (de) | Schaltungsanordnung mit einem Speicher und einer Zugriffskontrolleinheit | |
WO1996028795A1 (de) | Chipkarte mit geschütztem betriebssystem | |
EP1352318B1 (de) | Mikroprozessorschaltung für tragbare datenträger | |
DE1812137A1 (de) | Elektronische Datenverarbeitungseinrichtung | |
EP0329966B1 (de) | Verfahren zum Sichern von in einem Datenspeicher abgelegten geheimen Codedaten und Schaltungsanordnung zur Durchführung des Verfahrens | |
EP0214390A1 (de) | Freigabeverfahren für einen zugriffskontrollierten Anwenderspeicher und Anordnung zur Durchführung des Verfahrens | |
EP0353530A1 (de) | Verfahren zum Unterscheidbarmachen von elektronischen Schaltungen mit nichtflüchtigem Speicher |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PUAI | Public reference made under article 153(3) epc to a published international application that has entered the european phase |
Free format text: ORIGINAL CODE: 0009012 |
|
AK | Designated contracting states |
Kind code of ref document: A1 Designated state(s): AT BE CH DE ES FR GB IT LI LU NL SE |
|
17P | Request for examination filed |
Effective date: 19890925 |
|
17Q | First examination report despatched |
Effective date: 19920310 |
|
GRAA | (expected) grant |
Free format text: ORIGINAL CODE: 0009210 |
|
AK | Designated contracting states |
Kind code of ref document: B1 Designated state(s): AT BE CH DE ES FR GB IT LI LU NL SE |
|
REF | Corresponds to: |
Ref document number: 128258 Country of ref document: AT Date of ref document: 19951015 Kind code of ref document: T |
|
REF | Corresponds to: |
Ref document number: 58909440 Country of ref document: DE Date of ref document: 19951026 |
|
REG | Reference to a national code |
Ref country code: CH Ref legal event code: PFA Free format text: SIEMENS AKTIENGESELLSCHAFT BERLIN UND MUENCHEN TRANSFER- SIEMENS AKTIENGESELLSCHAFT |
|
REG | Reference to a national code |
Ref country code: ES Ref legal event code: FG2A Ref document number: 2077566 Country of ref document: ES Kind code of ref document: T3 |
|
ITF | It: translation for a ep patent filed |
Owner name: STUDIO JAUMANN |
|
GBT | Gb: translation of ep patent filed (gb section 77(6)(a)/1977) |
Effective date: 19951127 |
|
ET | Fr: translation filed | ||
PLBE | No opposition filed within time limit |
Free format text: ORIGINAL CODE: 0009261 |
|
STAA | Information on the status of an ep patent application or granted ep patent |
Free format text: STATUS: NO OPPOSITION FILED WITHIN TIME LIMIT |
|
26N | No opposition filed | ||
PGFP | Annual fee paid to national office [announced via postgrant information from national office to epo] |
Ref country code: AT Payment date: 20011221 Year of fee payment: 14 |
|
REG | Reference to a national code |
Ref country code: GB Ref legal event code: IF02 |
|
PGFP | Annual fee paid to national office [announced via postgrant information from national office to epo] |
Ref country code: NL Payment date: 20020110 Year of fee payment: 14 Ref country code: GB Payment date: 20020110 Year of fee payment: 14 |
|
PGFP | Annual fee paid to national office [announced via postgrant information from national office to epo] |
Ref country code: LU Payment date: 20020111 Year of fee payment: 14 |
|
PGFP | Annual fee paid to national office [announced via postgrant information from national office to epo] |
Ref country code: SE Payment date: 20020117 Year of fee payment: 14 |
|
PGFP | Annual fee paid to national office [announced via postgrant information from national office to epo] |
Ref country code: BE Payment date: 20020121 Year of fee payment: 14 |
|
PGFP | Annual fee paid to national office [announced via postgrant information from national office to epo] |
Ref country code: ES Payment date: 20020122 Year of fee payment: 14 |
|
PGFP | Annual fee paid to national office [announced via postgrant information from national office to epo] |
Ref country code: FR Payment date: 20020124 Year of fee payment: 14 |
|
PGFP | Annual fee paid to national office [announced via postgrant information from national office to epo] |
Ref country code: DE Payment date: 20020318 Year of fee payment: 14 |
|
PGFP | Annual fee paid to national office [announced via postgrant information from national office to epo] |
Ref country code: CH Payment date: 20020411 Year of fee payment: 14 |
|
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: LU Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES Effective date: 20030125 Ref country code: GB Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES Effective date: 20030125 Ref country code: AT Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES Effective date: 20030125 |
|
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: SE Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES Effective date: 20030126 |
|
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: ES Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES Effective date: 20030127 |
|
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: LI Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES Effective date: 20030131 Ref country code: CH Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES Effective date: 20030131 Ref country code: BE Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES Effective date: 20030131 |
|
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: NL Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES Effective date: 20030801 Ref country code: DE Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES Effective date: 20030801 |
|
EUG | Se: european patent has lapsed | ||
REG | Reference to a national code |
Ref country code: CH Ref legal event code: PL |
|
GBPC | Gb: european patent ceased through non-payment of renewal fee | ||
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: FR Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES Effective date: 20030930 |
|
NLV4 | Nl: lapsed or anulled due to non-payment of the annual fee |
Effective date: 20030801 |
|
REG | Reference to a national code |
Ref country code: FR Ref legal event code: ST |
|
REG | Reference to a national code |
Ref country code: ES Ref legal event code: FD2A Effective date: 20030127 |
|
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: IT Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES;WARNING: LAPSES OF ITALIAN PATENTS WITH EFFECTIVE DATE BEFORE 2007 MAY HAVE OCCURRED AT ANY TIME BEFORE 2007. THE CORRECT EFFECTIVE DATE MAY BE DIFFERENT FROM THE ONE RECORDED. Effective date: 20050125 |
|
APAH | Appeal reference modified |
Free format text: ORIGINAL CODE: EPIDOSCREFNO |