DE69800343T2 - Authentifizierungsverfahren für integrierte Schaltungen - Google Patents
Authentifizierungsverfahren für integrierte SchaltungenInfo
- Publication number
- DE69800343T2 DE69800343T2 DE69800343T DE69800343T DE69800343T2 DE 69800343 T2 DE69800343 T2 DE 69800343T2 DE 69800343 T DE69800343 T DE 69800343T DE 69800343 T DE69800343 T DE 69800343T DE 69800343 T2 DE69800343 T2 DE 69800343T2
- Authority
- DE
- Germany
- Prior art keywords
- integrated circuit
- change
- circuit
- activation
- response
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Lifetime
Links
- 238000000034 method Methods 0.000 title claims description 26
- 230000008859 change Effects 0.000 claims description 29
- 230000004913 activation Effects 0.000 claims description 27
- 230000004044 response Effects 0.000 claims description 23
- 230000015654 memory Effects 0.000 claims description 19
- 238000001514 detection method Methods 0.000 claims description 18
- 230000004048 modification Effects 0.000 claims description 9
- 238000012986 modification Methods 0.000 claims description 9
- 230000007257 malfunction Effects 0.000 claims description 2
- 239000003990 capacitor Substances 0.000 description 5
- AMAOXEGBJHLCSF-CQSZACIVSA-N (5r)-5-ethyl-3-[6-(3-methoxy-4-methylphenoxy)pyridin-3-yl]imidazolidine-2,4-dione Chemical compound O=C1[C@@H](CC)NC(=O)N1C(C=N1)=CC=C1OC1=CC=C(C)C(OC)=C1 AMAOXEGBJHLCSF-CQSZACIVSA-N 0.000 description 4
- 101150034092 ATG4 gene Proteins 0.000 description 4
- 101100492715 Saccharomyces cerevisiae (strain ATCC 204508 / S288c) ATG1 gene Proteins 0.000 description 4
- 101100057204 Saccharomyces cerevisiae (strain ATCC 204508 / S288c) ATG3 gene Proteins 0.000 description 4
- 230000002457 bidirectional effect Effects 0.000 description 3
- 230000000694 effects Effects 0.000 description 3
- 101150107496 ATG22 gene Proteins 0.000 description 2
- 230000003321 amplification Effects 0.000 description 2
- 238000003199 nucleic acid amplification method Methods 0.000 description 2
- 230000009471 action Effects 0.000 description 1
- 230000003213 activating effect Effects 0.000 description 1
- 238000013475 authorization Methods 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 230000000977 initiatory effect Effects 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 230000008569 process Effects 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
- G06Q10/00—Administration; Management
- G06Q10/08—Logistics, e.g. warehousing, loading or distribution; Inventory or stock management
- G06Q10/087—Inventory or stock management, e.g. order filling, procurement or balancing against orders
-
- 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
- G06Q10/00—Administration; Management
- G06Q10/08—Logistics, e.g. warehousing, loading or distribution; Inventory or stock management
- G06Q10/087—Inventory or stock management, e.g. order filling, procurement or balancing against orders
- G06Q10/0875—Itemisation or classification of parts, supplies or services, e.g. bill of materials
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/30—Payment architectures, schemes or protocols characterised by the use of specific devices or networks
- G06Q20/34—Payment architectures, schemes or protocols characterised by the use of specific devices or networks using cards, e.g. integrated circuit [IC] cards or magnetic cards
- G06Q20/341—Active cards, i.e. cards including their own processing means, e.g. including an IC or chip
-
- G—PHYSICS
- G07—CHECKING-DEVICES
- G07F—COIN-FREED OR LIKE APPARATUS
- G07F7/00—Mechanisms actuated by objects other than coins to free or to actuate vending, hiring, coin or paper currency dispensing or refunding apparatus
- G07F7/08—Mechanisms actuated by objects other than coins to free or to actuate vending, hiring, coin or paper currency dispensing or refunding apparatus by coded identity card or credit card or other personal identification means
- G07F7/0806—Details of the card
- G07F7/0813—Specific details related to card security
- G07F7/082—Features insuring the integrity of the data on or in the card
Landscapes
- Business, Economics & Management (AREA)
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Economics (AREA)
- General Business, Economics & Management (AREA)
- Theoretical Computer Science (AREA)
- Accounting & Taxation (AREA)
- Strategic Management (AREA)
- Human Resources & Organizations (AREA)
- Finance (AREA)
- Development Economics (AREA)
- Entrepreneurship & Innovation (AREA)
- Computer Security & Cryptography (AREA)
- Marketing (AREA)
- Operations Research (AREA)
- Quality & Reliability (AREA)
- Tourism & Hospitality (AREA)
- Computer Networks & Wireless Communication (AREA)
- Microelectronics & Electronic Packaging (AREA)
- Semiconductor Integrated Circuits (AREA)
- Storage Device Security (AREA)
Description
- Die Erfindung betrifft ein Authentifizierungsverfahren für integrierte Schaltungen.
- Die Verwendung von Registern, um eine interne Kennzeichnung einer integrierten Schaltung in Form eines Binärwortes zu enthalten, ist bekannt. Diese interne Kennzeichnung wird in manchen Fällen zur Identifizierung des Typs oder des Ursprungs des Produkts verwendet, um eine entsprechende Verwendung zu erlauben: Zugriffszeit, Dauer des Programmierimpulses von Daten im Speicher. In anderen Fällen geht es darum, die Schaltung bei ihrer Anwendung zu authentifizieren. Man denkt insbesondere an die Produkte des Typs Chipkarte und davon abgeleitete Produkte. Die interne Kennzeichnung besteht dann aus Informationen der Art Seriennummer und Schlüssel, die von einem Verschlüsselungs-Algorithmus verwendet werden, der ein Berechtigungszertifikat liefern kann. Wenn die Karte nicht vom Anwendungssystem (Kartenlesegerät) authentifiziert wird, wird sie zurückgewiesen. Es geht hier darum, gegen die Fälschung von Karten und den unberechtigten Zugriff zu vertraulichen Daten zu kämpfen, die in diesen Karten enthalten sind.
- Das Authentifizierungsverfahren ist Bestandteil des Austauschprotokolls zwischen der Karte und dem Anwendungssystem (Lesegerät), wobei die Sicherung des Authentifizierungssystems durch die Wahl des Verschlüsselungs-Algorithmus und durch die Tatsache erhalten wird, daß die vertraulichen Daten nicht aus der Karte entnommen werden. Diese Daten werden außerdem durch Mittel der Adressenmischung, der Datenkodierung (Permutationen) usw. in der Karte versteckt.
- Zwischen der einfachen Identifizierung und der stark gesicherten Authentifizierung von Schaltungen wurde die Notwendigkeit einer Zwischen-Authentifizierung von Schaltungen zur Verhinderung der Verbreitung von Schaltungskopien festgestellt. Diese Schaltungen betreffen übliche Anwendungen und nicht unbedingt sogenannte gesicherte Anwendungen. Bei diesen Anwendungen möchte man den Ursprung dieser Schaltungen genau identifizieren, d. h. ihn authentifizieren.
- Diese Notwendigkeit entsteht vor allem aus der verstärkten Miniaturisierung der integrierten Schaltungen, die die äußere Markierung der Gehäuse verhindert, und aufgrund der technologischen Fortschritte, die, trotz der großen Bemühungen der Hersteller von integrierten Schaltungen, technische Lösungen zu finden, die das Kopieren von integrierten Schaltungen verhindern, mehr oder weniger leicht das Kopieren dieser Schaltungen oder zumindest einiger von ihnen ermöglichen. All dies wird durch die immer häufigere Verwendung der integrierten Schaltungen in allen Bereichen, aufgrund ihrer Miniaturisierung, ihres geringen Verbrauchs, ihrer geringen Kosten usw., verschlimmert.
- Bei der Erfindung wurde nach einem Authentifizierungsverfahren gesucht, das sich nicht in eine besondere Prozedur wie bei der Verschlüsselung einfügt. Auf diese Weise erfolgt die Authentifizierung in einer für einen außenstehenden Beobachter transparenten Weise, was ein einfacheres, aber trotzdem sehr sicheres Verfahren ermöglicht.
- Die für dieses technische Problem gefundene Lösung besteht darin, die normalen Befehle der integrierten Schaltung zu verwenden, die im Anwendungsprogramm genutzt werden, um eine (kurzfristige) Änderung mindestens einer Antwort der integrierten Schaltung bei Erfassung eines Aktivierungs-Szenarios in der Folge der von der integrierten Schaltung erhaltenen Befehle auszulösen, wobei die Änderung der Antwort keinen Fehlbetrieb der integrierten Schaltung nach sich zieht. Erfindungsgemäß werden diese Änderungen auf dem Ausführungspfad mindestens eines Befehls der integrierten Schaltung durchgeführt.
- In einem Beispiel kann ein Szenario aus acht Lesebefehlen und drei Schreibbefehlen im Speicher der integrierten Schaltung an einer beliebigen Adresse bestehen, und die Änderung kann darin bestehen, die Bits des gelesenen Datenwerts für den folgenden Lesebefehl zu invertieren. Das Anwendungssystem kennt das Szenario. Es kann es erfassen und überprüfen, daß die Änderung tatsächlich stattfindet. Im Beispiel genügt es, den Lesevorgang zu wiederholen und die beiden gelesenen Datenwerte zu vergleichen.
- Ein nicht eingeweihter Benutzer bemerkt nichts.
- Wenn das Anwendungssystem feststellt, daß es keine Verhaltensänderung gibt, authentifiziert es die Schaltung nicht. Um jeden Bezug zwischen Ursache und Wirkung zu verhindern, erzeugt es vorzugsweise eine bestimmte Zeit nach Erfassung der Anomalie ein Alarmsignal, zum Beispiel nach 20 Lesezyklen.
- Erfindungsgemäß sind Mittel zur Änderung einer Anwort auf dem Ausführungspfad eines oder mehrerer Befehle der integrierten Schaltung angeordnet.
- Die Änderung einer Antwort der integrierten Schaltung kann von beliebiger Art sein, vorausgesetzt, daß sie die integrierte Schaltung in ihrer Anwendung nicht außer Betrieb setzt und daß sie vom Anwendungssystem gemessen werden kann. Es kann sich um eine Antwortzeit eines bestimmten Befehls eines ausgetauschten Datenwerts oder anderes handeln. Die in der integrierten Schaltung verwendeten Änderungsmittel können Verzögerungsschaltungen des Typs RC oder andere, Kippstufen, Taktfrequenzteiler, Datenpermutationsschaltungen usw. sein, ohne daß diese Liste erschöpfend wäre.
- Die Erfassungsmittel können Zähler zum Zählen der Anzahl von Befehlszyklen (Lesen, Schreiben), kombinatorische Schaltungen zum Beispiel zur Erfassung einer besonderen Kombination der Bits einer Adresse, aufweisen.
- Alle Schaltungen, die zur Durchführung des erfindungsgemäßen Authentifizierungsverfahrens verwendbar sind, sind dem Fachmann bekannt.
- Die Erfindung wird in der nachfolgenden Beschreibung, die darstellend und keineswegs einschränkend zu verstehen ist, in einem Anwendungsbeispiel des Authentifizierungsverfahrens auf eine integrierte Speicherschaltung genauer beschrieben, das in den beiliegenden Zeichnungen dargestellt ist, in denen:
- - Fig. 1 eine integrierte Speicherschaltung mit parallelem Zugriff darstellt, die Mittel zur Durchführung des erfindungsgemäßen Authentifizierungsverfahrens aufweist;
- - Fig. 2 schematisch ein Beispiel einer Erfassungsschaltung eines Aktivierungs-Szenarios darstellt;
- - Fig. 3 ein Beispiel einer Änderungsschaltung einer Antwort des Speichers aus Fig. 1 und
- - Fig. 4 eine Erfassungs- und Änderungsvorrichtung basierend auf einem Taktsignal für ein Beispiel der Anwendung der Erfindung auf eine integrierte Schaltung mit Serien-Zugriff darstellt.
- Fig. 1 zeigt eine integrierte Speicherschaltung, auf die das erfindungsgemäße Authentifizierungsverfahren angewendet werden kann. Im Beispiel handelt es sich um einen elektrisch programmierbaren Speicher vom Typ Eprom, EEprom, Flash-Eprom, mit parallelem Zugriff. Die Erfindung ist aber auf alle Arten von elektrischen Schaltungen und alle Arten von Speichern (Ram oder andere) anwendbar.
- Die externe Schnittstelle enthält logische Speiseklemmen Vcc und Vss, eine Hochspannungsklemme Vpp zur Programmierung und verschiedene Klemmen für den Empfang von Steuersignalen, zu denen ein Gehäusewahlsignal CS und ein Lese/Schreib-Signal R/W gehören. Die externe Schnittstelle enthält auch Adresseneingangsklemmen A0-AZ und Dateneingangs-/ausgangsklemmen D0- D7.
- Die integrierte Schaltung weist eine Speicherebene 1 auf, die in Bitleitungen und Wortleitungen organisiert ist, auf die mittels Adressendekodierern zugegriffen wird. So gibt es einen Zeilen- (oder Wortleitungs-)Dekodierer DEC-X und einen Spalten- (oder Bitleitungs-)Dekodierer DEC-Y. Der Spaltendekodierer steuert eine Torschaltung 2, die die in einen Speicher 3 mit Schreib-/Leseverstärkern zu schreibenden Daten oder die aus diesem Speicher zu lesenden Daten überträgt, der mit einem bidirektionalen Register 4 mit drei Zuständen der externen Schnittstelle für den Eingang/Ausgang der Daten D0- D7 verbunden ist. Die Dekodierer DEC-X und DEC-Y wählen die Bitleitungen und die Wortleitung aus, die der Adresse entsprechen, die ihnen von einem Adressenregister ADR präsentiert wird, das die Adressensignale A0-A7 von der externen Schnittstelle empfängt. Das Register ADR ist in einer Richtung wirksam und besitzt drei Zustände.
- Schließlich ist eine Steuerschaltung 5 vorgesehen, die die verschiedenen Steuersignale R/W, CS und die Spannungen der Speiseklemmen Vcc, Vss und Vpp empfängt, um die verschiedenen Elemente der integrierten Schaltung sequentiell zu ordnen und die geeigneten Spannungspegel zu liefern (S2), die in Abhängigkeit von den empfangenen Steuersignalen an die Bitleitungen und die Wortleitungen der Speicherebene anzulegen sind.
- Abgesehen von den Einspeisungen, die für den Operations- Betrieb der integrierten Schaltung notwendig sind, sind die anderen Steuersignale R/W und CS, Adressensignale A0-A7 und Dateneingangs-/ausgangssignale D0-D7 in der integrierten Schaltung mit in einer Richtung wirksamen oder bidirektionalen Registern mit drei Zuständen verbunden. So gibt es ein Register 6 für die Steuersignale R/W und CS, das Register ADR für die Adressensignale A0-A7 und das bidirektionale Register 4 für die Datensignale D0-D7.
- Sobald ein neuer Befehl von der Steuerschaltung 5 der integrierten Schaltung berücksichtigt wird, macht sie diese Register hochohmig auf der Seite der externen Schnittstelle, um die Berücksichtigung jedes neuen Befehls zu verhindern, solange der laufende Befehl nicht beendet ist. Hierzu aktiviert sie ein Signal BUSY, das den hochohmigen Zustand erzeugt. Sobald der Befehl beendet ist, wird dieses Signal beendet. Wenn der laufende Befehl ein Lesevorgang war, wird der gelesene Datenwert dann am Ausgang des Dateneingangs-/ausgangs- Registers 4 zur externen Schnittstelle D0-D7 übertragen.
- Der Betrieb einer solchen integrierten Speicherschaltung ist wohl bekannt und wird nicht weiter im einzelnen erläutert.
- Beim erfindungsgemäßen Schaltungs-Authentifizierungsverfahren ist vorgesehen, daß ein vorher erstelltes Aktivierungs- Szenario, das aus dem Ablauf eines Anwendungsprogramms der Benutzung der integrierten Schaltung erhalten wird, eine Änderung mindestens einer Antwort dieser Schaltung auslöst. Diese Änderung tritt intermittierend, anscheinend willkürlich für einen externen Beobachter jedesmal dann auf, wenn das Aktivierungs-Szenario von der integrierten Schaltung erfaßt werden kann.
- Die integrierte Schaltung enthält also Mittel zur Erfassung mindestens eines Aktivierungs-Szenarios.
- Wenn dieses Szenario aus einer bestimmten Anzahl von Lese- oder Schreibsteuerungen besteht, enthalten diese in Fig. 1 hinter dem Register 6 angeordneten Erfassungsmittel in einem schematisch in Fig. 2 dargestellten Beispiel einen ersten Zähler 8 einer Anzahl n zum Zählen der Lesebefehle (CS, R/W = 0) und einen zweiten Zähler einer Anzahl m zum Zählen der Schreibbefehle (CS = 1, R/W = 1), wobei die Ausgänge der beiden Zähler in einer kombinatorischen Schaltung 10 kombiniert wer den, um ein erstes Signal zur Aktivierung der Authentifizierung AUT1 zu liefern..
- Ein weiteres mögliches Szenario kann in einer besonderen Kombination von Bits einer Adresse bestehen, auf die sich der laufende Befehl bezieht. Die Erfassungsmittel können dann kombinatorische Mittel 11 enthalten, die am Ausgang des Adressenregisters ADR angeordnet sind. In einem besonders einfachen Beispiel besteht das Aktivierungs-Szenario aus dem Vorhandensein einer ungeraden Adresse. Ein Aktivierungssignal AUT2 wird dann einfach vom Adressenbit A0 geliefert, wie in Fig. 1 dargestellt.
- Man kann sehr gut ähnliche Erfassungsmittel 12 am Eingang des Datenregisters 4 verwenden, um eine besondere Kombination der am Eingang angelegten Datenbits zu erfassen und ein entsprechendes Erfassungssignal AUT3 zu liefern.
- Andere Szenarios sind möglich. Das Authentifizierungsverfahren kann eines oder mehrere kombinierte Szenarien verwenden, um ein einziges Aktivierungssignal oder verschiedene Aktivierungssignale an verschiedene Änderungsmittel zu liefern, je nach dem gewünschten Zuverlässigkeits- und Komplexitätsgrad. Kippstufen können verwendet werden, um das Vorliegen verschiedener Szenarien zu speichern, um verschiedene Szenarien miteinander zu kombinieren, gemäß einer bestimmten oder unbestimmten Auftrittsordnung, wobei dann Mittel zur erneuten Initialisierung der Kippstufen vorgesehen sein müssen.
- Im dargestellten Beispiel gibt es drei Erfassungsmittel, die je ein Aktivierungssignal AUT1 bzw. AUT2 bzw. AUT3 liefern.
- Diese Aktivierungssignale aktivieren Mittel zur Änderung mindestens einer Antwort der integrierten Schaltung.
- Diese erfindungsgemäßen Änderungsmittel sind auf dem Ausführungspfad mindestens eines Befehls der integrierten Schaltung angeordnet.
- Diese Mittel zur Änderung einer Antwort enthalten in einem ersten, in Fig. 3 dargestellten Beispiel eine Schaltung, die die Anstiegszeit der Programmierspannungsrampe im Fall einer Anwendung auf einen EEPROM-Speicher ändern kann.
- Eine Schaltung zur Erzeugung der Programmierspannungsrampe enthält üblicherweise eine Bezugsstromquelle Iref, die einen Ladestrom Ic an einen Kondensator C liefern kann, von dem eine Klemme die gewünschte Spannungsrampe liefert. Durch Anlegen eines zusätzlichen Ladestroms verändert man die Steilheit der Rampe entweder durch Verringern oder durch Erhöhen des Stroms.
- In einem praktischen Ausführungsbeispiel gibt es zum Beispiel eine Stromquelle Iref bestehend aus einer Last R in Reihe mit einem Transistor M1, die eine Spannung Vcc empfängt, wobei der Transistor an Masse liegt und sein Gate mit seinem Drain verbunden ist. Eine Ladeschaltung für einen Kondensator C enthält einen ersten Zweig mit zwei Transistoren M2 und M3 in Reihe zwischen der Programmierhochspannung Vpp und Masse. Das Gate des Transistors M3 wird vom Gate des Transistors M1 gesteuert, so daß der Transistor M3 durch Stromspeicherwirkung einen Strom gleich K. Iref leitet, wobei K das Verhältnis der Geometrien zwischen den Transistoren M3 und M1 ist.
- Die Ladeschaltung enthält einen zweiten Zweig mit einem Transistor M4 in Reihe mit dem Kondensator C zwischen der Programmierhochspannung Vpp und Masse. Der Transistor M4 wird vom Transistor M3 durch Stromspiegelwirkung gesteuert (Gate und Drain mit dem Transistor M2 verbunden), um den Strom K.Iref zu leiten (bis auf einen Proportionalitätsfaktor). Der Kondensator lädt sich progressiv auf Vpp unter diesem Strom K.Iref. Der Pegel Vpp wird nach einer Zeit t1 erhalten.
- Erfindungsgemäß wird ein weiterer Transistor M3' parallel zum Transistor M3 des ersten Zweigs vorgesehen, um durch Stromspiegelwirkung mit dem Transistor M1 einen Strom K'.Iref zu leiten. Dieser Transistor M3' wird aktiviert, indem er mit Masse über einen Auswahltransistor M5 verbunden wird, dessen Gate von einem Aktivierungssignal aktiviert wird, im Beispiel dem Signal AUT2.
- Wenn der Transistor M5 aktiviert ist, erhöht der Transistor M3' den vom Transistor M4 geleiteten Ladestrom des Kondensators, der gleich K.Iref + K'.Iref wird. Die Zeit t2 des Anstiegs der Spannungsrampe wird kürzer (t2< t1). Die Programmierung ist schneller, was leicht durch das Anwendungssystem gemessen werden kann, da die integrierte Schaltung einen neuen Befehl sehr viel schneller berücksichtigen kann (kürzere Antwortzeit, BUSY schneller beendet). Zum Beispiel, wenn die Anstiegszeit der Rampe etwa 1,5 Millisekunden im Operationsmodus beträgt und wenn der Bereich der für dieses Merkmal der Schaltung annehmbaren Werte zwischen 1 und 2 Millisekunden liegt, werden die Änderungsmittel so kalibriert, daß die veränderte Anstiegszeit etwa 1 Millisekunde beträgt.
- Im Beispiel wird diese Änderungsschaltung bei Erfassung einer ungeraden Adresse durch das Signal AUT2 (A0 = 1) aktiviert. In diesem Fall wird die Änderung nur wirksam, wenn der laufende Befehl ein Programmierbefehl ist. Sonst ist sie unwirksam. Das heißt, daß das Aktivierungs-Szenario zwei sequentiell kombinierte Erfassungen enthält. Man könnte vorsehen, die Änderung durch die kombinierte Erfassung eines Schreibvorgangs (R/W = 1) und einer ungeraden Adresse (A0 = 1) zu aktivieren.
- Eine weitere Schaltung zur Änderung einer Antwort der integrierten Schaltung kann aus einer Schaltung zur Änderung eines Datenwerts bestehen. Im Beispiel sieht man eine Schaltung 15 der Permutation von Daten und der Multiplexierung vor dem Datenausgangsregister 4 vor.
- Der Datenwert am Ausgang des Speichers wird an den Eingang der Permutationsschaltung 17 und an einen Eingang des Multiplexers 18 angelegt. Der andere Eingang des Multiplexers empfängt den Ausgang der Permutationsschaltung. Der Ausgang des Multiplexers ist an das Datenausgangsregister angelegt. Der im Multiplexer fehlerhaft ausgewählte Eingang ist der Ausgang des Speichers. Der andere Eingang wird erst bei Aktivierung eines Aktivierungssignals ausgewählt, das der Erfassung eines vorher erstellten Szenarios entspricht. Im Beispiel werden die Änderungsmittel 15, 17 vom Signal AUT1 aktiviert. Das Anwendungssystem kennt die Permutation und kann also die Änderung der Antwort "messen". Im dargestellten Fall findet die Änderung nur statt, wenn der laufende Befehl ein Lesevorgang ist. Sonst geschieht nichts. Auf diese Weise trägt alles dazu bei, die Änderung zufällig zu machen und somit das Authentifizierungsverfahren für einen Benutzer transparent zu gestalten.
- Anstelle einer Permutationsschaltung 17 kann man eine Schaltung zur Verzögerung des Ausgangs des Datenwerts auf die externen Dateneingangs-/Ausgangsklemmen vorsehen. Die Messung der Änderung besteht dann für das Anwendungssystem in der Messung der Antwortzeit, d. h. der Zeit, an deren Ende der Datenwert auf dem externen Dateneingangs-/Ausgangsbus zur Verfügung steht.
- In einem anderen, gestrichelt in Fig. 1 dargestellten Beispiel kann man eine Verzögerungsschaltung RC0 zwischen dem Ausgang der Erfassungsschaltung 12 und dem Eingang der Lese- /Schreib-Verstärkungsschaltung anordnen, die zum Beispiel durch das Aktivierungssignal AUT3 aktiviert werden, um der Berücksichtigung des vom externen Datenbus gelieferten Datenwerts durch den laufenden Befehl eine Verzögerung aufzuzwingen, wenn ein entsprechendes Aktivierungs-Szenario erfaßt wird. Unter Verzögerungsschaltung RC0 werden eine eigentliche Verzögerungsschaltung des Typs RC oder ähnliches und ein Multiplexer verstanden, der es ermöglicht, den normalen Pfad ohne Verzögerung oder den veränderten Pfad mit Verzögerung aus zuwählen.
- Man kann auch eine Verzögerungsschaltung RC1 auf der Steuerung S1 zur Aktivierung der Lese-/Schreib-Verstärkungsschaltung 3 anordnen, die vom Aktivierungssignal AUT3 aktiviert wird, oder eine Verzögerungsschaltung RC2 am Ausgang des Adressenregisters ADR, die vom Aktivierungssignal AUT1 aktiviert wird.
- Bei einer Schaltung mit Serienzugriff ist ein interessantes zu verwendendes Signal das Taktsignal. Dieses Signal kann für das Erfassungs-Szenario oder für die erfindungsgemäße Änderung verwendet werden.
- In einem in Fig. 4 dargestellten Beispiel besteht das das Taktsignal verwendende Szenario aus der Erfassung von k Taktzyklen. Die Erfassungsmittel enthalten dann einen Zähler 13 der k Taktzyklen, um am Ausgang ein Erfassungssignal AUT4 zu liefern. Diese Erfassung kann alleine oder im Kombination mit anderen Ereignissen verwendet werden, um eine erfindungsgemäße Änderung auszulösen.
- Eine erfindungsgemäße Änderung kann darin bestehen, die Taktfrequenz der integrierten Schaltung innerhalb eines Bereichs zugelassener Werte zu variieren.
- Man kann dann einen Taktfrequenzteiler 19 vorsehen, z. B. einen Teiler durch 2, um die Schaltung während einiger Taktzyklen zu verlangsamen, wie es in Fig. 4 dargestellt ist. In diesem Fall muß die notwendige Schaltungsanordnung vorgesehen werden, um problemlos von einer Frequenz zur anderen übergehen zu können. Im Beispiel wird der Teiler durch das Aktivierungssignal AUT4 gestartet. Man könnte natürlich auch andere Aktivierungssignale verwenden. Es handelt sich offensichtlich um eine nicht erschöpfende Liste von Anwendungsbeispielen des erfindungsgemäßen Authentifizierungsverfahrens.
- Eine solche Verzögerungsschaltung kann durch eine einfache RC-Schaltung oder durch logische Tore hergestellt werden und kann an verschiedene interne Elemente der Schaltung auf einem Pfad eines Befehls der integrierten Schaltung angelegt werden, um eine meßbare Änderung der Antwortzeit zu erzeugen. Sie ist so bemessen, daß die Änderung sich im Bereich der für die betroffene Antwortzeit annehmbaren Werte befindet.
- Die Ausführungsbeispiele des erfindungsgemäßen Authentifizierungsverfahrens sind nicht erschöpfend. Selbstverständlich werden viele Möglichkeiten geboten, die vom gewünschten Zuverlässigkeits- und Transparenzgrad und von der Schaltung abhängen, auf die es angewandt wird.
- Je nachdem, ob die Schaltung einen Mikroprozessor, einen Speicher mit Serien- oder Parallelzugriff enthält oder nicht, und je nach den Signalen der externen Schnittstelle, nach dem Vorhandensein oder dem Nichtvorhandensein eines Taktsignals, können viele Varianten verwendet werden. Insbesondere im Fall eines Speichers mit Serienzugriff kann das Anwendungssystem das meist vorgesehene Empfangsbestätigungssignal oder das den Besetztzustand anzeigende Signal der Schaltung verwenden, um die Antwortzeit zu messen.
- Die verschiedenen verwendeten Schaltungen müssen nur eine anscheinend zufällige Auslösung einer Änderung einer Antwort der integrierten Schaltung ermöglichen, und die Änderung darf die Schaltung nicht außer Betrieb setzen, d. h. daß sie ignorierbar sein muß, entweder wenn sie einen in einer dem Anwendungssystem bekannten Art geänderten Datenwert betrifft oder wenn sie einen in unbekannter Weise geänderten Datenwert betrifft (in diesem Fall kann das Anwendungssystem den Befehl erneut durchführen), oder wenn sie auf ein Merkmal (Antwortzeit eines Befehls) im Bereich der für dieses Merkmal zulässigen Werte einwirkt.
Claims (11)
1. Authentifizierungsverfahren für eine integrierte Schaltung
in einem Anwendungssystem, wobei die integrierte Schaltung
Befehle von einem von diesem System durchgeführten
Anwendungsprogramm empfängt und ein Aktivierungs-Szenario in der
Folge von Befehlen des Anwendungsprogramms erfassen kann,
dadurch gekennzeichnet, daß es darin besteht, die normalen
Befehle der integrierten Schaltung zu verwenden, die im
Anwendungsprogramm verwendet werden, um eine kurzfristige Änderung
mindestens einer Antwort der integrierten Schaltung bei
Erfassung eines Aktivierungs-Szenarios in der Folge der von der
integrierten Schaltung erhaltenen Befehle auszulösen, wobei
die Änderung keinen Fehlbetrieb der integrierten Schaltung
nach sich zieht, und daß es für das Anwendungssystem darin
besteht, das Aktivierungs-Szenario im von ihm durchgeführten
Anwendungsprogramm zu erfassen, um die Antwort so zu messen,
daß die Änderung überprüft und die integrierte Schaltung
authentifiziert wird.
2. Authentifizierungsverfahren nach Anspruch 1, dadurch
gekennzeichnet, daß es darin besteht, Mittel zur Änderung einer
Antwort auf dem Ausführungspfad mindestens eines Befehls der
integrierten Schaltung vorzusehen.
3. Verfahren nach Anspruch 1 oder 2, dadurch gekennzeichnet,
daß die Änderung in der Variation einer Antwortzeit eines
Befehls innerhalb eines Bereichs von Werten besteht, die für
diese Antwortzeit zugelassen sind.
4. Verfahren nach Anspruch 3 für eine integrierte Schaltung,
die einen elektrisch programmierbaren Speicher enthält,
dadurch gekennzeichnet, daß die Änderung darin besteht, die
Dauer des Anstiegs einer Programmierspannungsrampe zu
verändern, die an den Speicher angelegt wird.
5. Verfahren nach Anspruch 3, dadurch gekennzeichnet, daß die
Änderung in der Aktivierung einer Verzögerungsschaltung (RC)
auf einem Ausführungspfad eines Befehls in der integrierten
Schaltung besteht.
6. Verfahren nach Anspruch 1 oder 2, dadurch gekennzeichnet,
daß die Änderung den Inhalt der von der integrierten
Schaltung übertragenen Daten betrifft.
7. Verfahren nach Anspruch 6, dadurch gekennzeichnet, daß die
Änderung in einer Permutation oder Invertierung von Bits des
ausgetauschten Datenwerts besteht.
8. Verfahren nach einem beliebigen der vorhergehenden
Ansprüche, dadurch gekennzeichnet, daß eine Änderung darin besteht,
die Taktfrequenz der integrierten Schaltung innerhalb eines
Bereichs von zugelassen Werten zu variieren.
9. Verfahren nach einem beliebigen der vorhergehenden
Ansprüche, dadurch gekennzeichnet, daß das Aktivierungs-Szenario in
einer besonderen Kombination von Bits einer Adresse oder
eines Datenwerts besteht, die der Schaltung präsentiert wird.
10. Verfahren nach einem beliebigen der vorhergehenden
Ansprüche, dadurch gekennzeichnet, daß das Aktivierungs-
Szenario aus einer Folge einer bestimmten Anzahl von einem
oder mehreren Befehlen und/oder einer bestimmten Anzahl von
Taktimpulsen besteht.
11. Verfahren nach Anspruch 10, dadurch gekennzeichnet, daß
es weiter für das Anwendungssystem darin besteht, einen Alarm
erst eine bestimmte Zeit nach einem Authentifizierungsfehler
auszulösen.
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
FR9707190A FR2764413B1 (fr) | 1997-06-10 | 1997-06-10 | Procede d'authentification de circuit integre |
Publications (2)
Publication Number | Publication Date |
---|---|
DE69800343D1 DE69800343D1 (de) | 2000-11-16 |
DE69800343T2 true DE69800343T2 (de) | 2001-02-22 |
Family
ID=9507819
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE69800343T Expired - Lifetime DE69800343T2 (de) | 1997-06-10 | 1998-06-09 | Authentifizierungsverfahren für integrierte Schaltungen |
Country Status (5)
Country | Link |
---|---|
US (1) | US6848049B1 (de) |
EP (1) | EP0884704B1 (de) |
JP (1) | JP2000250816A (de) |
DE (1) | DE69800343T2 (de) |
FR (1) | FR2764413B1 (de) |
Families Citing this family (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
FR2777371B1 (fr) * | 1998-04-09 | 2001-10-26 | Innovatron Electronique | Procede pour modifier de maniere indivisible une pluralite d'emplacements de la memoire non volatile d'une carte a microcircuit |
DE10041669A1 (de) * | 2000-08-10 | 2002-02-21 | Deutsche Telekom Ag | Verfahren und Vorrichtung zum Prüfen der Echtheit einer Chipkarte |
JP2002305250A (ja) * | 2001-02-02 | 2002-10-18 | Matsushita Electric Ind Co Ltd | 半導体集積回路および半導体集積回路に関するビジネス方法 |
US7840803B2 (en) | 2002-04-16 | 2010-11-23 | Massachusetts Institute Of Technology | Authentication of integrated circuits |
WO2006053304A2 (en) * | 2004-11-12 | 2006-05-18 | Pufco, Inc. | Volatile device keys and applications thereof |
US8782396B2 (en) * | 2007-09-19 | 2014-07-15 | Verayo, Inc. | Authentication with physical unclonable functions |
CN101520654B (zh) * | 2008-02-25 | 2012-01-25 | 中芯国际集成电路制造(上海)有限公司 | 用于设限截断生产数据的统计过程控制的方法和计算机代码 |
TWI498827B (zh) * | 2008-11-21 | 2015-09-01 | Verayo Inc | 非連網射頻辨識裝置物理不可複製功能之鑑認技術 |
US8468186B2 (en) * | 2009-08-05 | 2013-06-18 | Verayo, Inc. | Combination of values from a pseudo-random source |
US8811615B2 (en) * | 2009-08-05 | 2014-08-19 | Verayo, Inc. | Index-based coding with a pseudo-random source |
IL256108B (en) | 2017-12-04 | 2021-02-28 | Elbit Systems Ltd | A system and method for identifying the state of use and originality of a product |
US10585139B1 (en) | 2019-02-14 | 2020-03-10 | Science Applications International Corporation | IC device authentication using energy characterization |
Family Cites Families (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3829661A (en) * | 1970-09-21 | 1974-08-13 | D Silverman | Access control system |
US3934122A (en) * | 1974-08-15 | 1976-01-20 | Riccitelli James A | Electronic security card and system for authenticating card ownership |
JPS61139873A (ja) * | 1984-12-13 | 1986-06-27 | Casio Comput Co Ltd | 認証方式 |
JPH0682405B2 (ja) * | 1986-01-14 | 1994-10-19 | カシオ計算機株式会社 | テストプログラム起動方式 |
US4816653A (en) * | 1986-05-16 | 1989-03-28 | American Telephone And Telegraph Company | Security file system for a portable data carrier |
JPS6456413A (en) * | 1987-03-25 | 1989-03-03 | Toshiba Corp | Semiconductor optical element |
DE3736882C2 (de) * | 1987-10-30 | 1997-04-30 | Gao Ges Automation Org | Verfahren zur Echtheitsprüfung eines Datenträgers mit integriertem Schaltkreis |
DE3879133D1 (de) * | 1987-12-17 | 1993-04-15 | Siemens Ag | Verfahren und datentraegeranordnung zur echtheitserkennung von speicherchips. |
FR2640061B1 (fr) * | 1988-12-06 | 1992-04-10 | Schlumberger Ind Sa | Dispositif de lecture/ecriture de cartes a memoire muni d'un dispositif de detection de cartes simulees |
JPH0474240A (ja) * | 1990-07-17 | 1992-03-09 | Toshiba Corp | 半導体メモリ |
DE4036765A1 (de) * | 1990-11-17 | 1992-05-21 | Angewandte Digital Elektronik | Kodierte chipkartenaktivierung |
DE4242579C2 (de) * | 1992-12-16 | 1997-08-21 | Siemens Ag | Verfahren zur Echtheitserkennung von Datenträgern |
US5666516A (en) * | 1993-12-16 | 1997-09-09 | International Business Machines Corporation | Protected programmable memory cartridge having selective access circuitry |
US5577121A (en) * | 1994-06-09 | 1996-11-19 | Electronic Payment Services, Inc. | Transaction system for integrated circuit cards |
JPH0946331A (ja) * | 1995-07-31 | 1997-02-14 | Sony Corp | 情報処理装置および方法 |
JP3464738B2 (ja) * | 1995-10-11 | 2003-11-10 | 川崎マイクロエレクトロニクス株式会社 | コピー防止機能付きrom |
JP3312546B2 (ja) * | 1995-11-30 | 2002-08-12 | ヤマハ株式会社 | 拡張ボードの認証装置及び方法 |
FR2745136B1 (fr) * | 1996-02-15 | 1998-04-10 | Thoniel Pascal | Procede et dispositif d'identification securisee entre deux terminaux |
-
1997
- 1997-06-10 FR FR9707190A patent/FR2764413B1/fr not_active Expired - Fee Related
-
1998
- 1998-06-09 EP EP98401386A patent/EP0884704B1/de not_active Expired - Lifetime
- 1998-06-09 DE DE69800343T patent/DE69800343T2/de not_active Expired - Lifetime
- 1998-06-10 US US09/095,532 patent/US6848049B1/en not_active Expired - Lifetime
- 1998-06-10 JP JP10199426A patent/JP2000250816A/ja not_active Ceased
Also Published As
Publication number | Publication date |
---|---|
EP0884704A1 (de) | 1998-12-16 |
US6848049B1 (en) | 2005-01-25 |
EP0884704B1 (de) | 2000-10-11 |
FR2764413A1 (fr) | 1998-12-11 |
FR2764413B1 (fr) | 1999-07-09 |
DE69800343D1 (de) | 2000-11-16 |
JP2000250816A (ja) | 2000-09-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE69904320T2 (de) | On-chip schaltung und verfahren zur speicherschaltungs-prüfung | |
DE69613424T2 (de) | Schaltung und Verfahren zur Verminderung der Kompensation eines ferroelektrischen Kondensators durch Anlegung an die Plattenleitung von mehreren Impulsen nach einer Schreiboperation | |
EP0207320B1 (de) | Integrierte Schaltung und Verfahren zum Sichern von geheimen Codedaten | |
DE69100003T2 (de) | Sicherheitsverriegelung fuer integrierten schaltkreis. | |
DE69800343T2 (de) | Authentifizierungsverfahren für integrierte Schaltungen | |
DE68907518T2 (de) | Inhaltsadressierte Speicheranordnung. | |
DE69416761T2 (de) | Speicherschutzschaltung für EPROM | |
EP0128362A1 (de) | Schaltungsanordnung mit einem Speicher und einer Zugriffskontrolleinheit | |
DE2527486B2 (de) | Verfahren zur Prüfung bistabiler Speicherzellen | |
DE69218053T2 (de) | Speicherkarte zur Zählung von Daten und Lesevorrichtung | |
DE19963208A1 (de) | Verfahren zum Manipulationsnachweis einer programmierbaren Speichereinrichtung eines digitalen Steuergeräts | |
DE4341887C2 (de) | Verfahren zum Verhindern einer unberechtigten Datenänderung bei einer Vorrichtung mit einem nichtflüchtigen Speicher | |
DE69326329T2 (de) | Speicherzellen-Stromleseverfahren in Mikrosteuergerät | |
DE102005055158A1 (de) | Schaltungsanordnung mit einer Einrichtung zur Erkennung von Manipulationsversuchen und Verfahren zur Erkennung von Manipulationsversuchen bei einer Schaltungsanordnung | |
DE4042161C2 (de) | ||
WO2003043022A2 (de) | Speichertest | |
DE60114007T2 (de) | Verwendungserkennungsschaltung | |
EP1163678B1 (de) | Integrierter speicher mit speicherzellen, die je einen ferroelektrischen speichertransistor aufweisen | |
DE19524324C2 (de) | Nicht-flüchtige Halbleiterspeichereinrichtung und Halbleitereinrichtung | |
DE69102658T2 (de) | Verfahren und Einrichtung zum Verknüpfen von Reinitialisierungsimpulsen für einen Mikroprozessor mit Zugriff zu verschiedenen Unterprogrammen. | |
DE69820080T2 (de) | Verfahren zum schreiben von binären datenwörtern mittels elektrisch-programmierbarer und löschbarer speicherzellen | |
DE3718182A1 (de) | Verfahren und anordnung zur ausfuehrung eines selbsttestes eines wortweise organisierten rams | |
DE69224578T2 (de) | Inhaltsprüfungsverfahren für einen löschbaren ROM-Speicher, insbesondere des EPROM-Typs, und löschbarer ROM-Speicher zur Durchführung des Verfahrens | |
EP0214390A1 (de) | Freigabeverfahren für einen zugriffskontrollierten Anwenderspeicher und Anordnung zur Durchführung des Verfahrens | |
DE102017115056B3 (de) | Verfahren zur Überprüfung sicherheitsrelevanter Register- oder Speicherzellen auf Stuck-At-Fehler im Betrieb |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
8364 | No opposition during term of opposition |