DE60026186T2 - Verfahren zur Prüfung einer integrierten Schaltung mit vertraulichen Software- oder Hardware-elementen - Google Patents

Verfahren zur Prüfung einer integrierten Schaltung mit vertraulichen Software- oder Hardware-elementen Download PDF

Info

Publication number
DE60026186T2
DE60026186T2 DE60026186T DE60026186T DE60026186T2 DE 60026186 T2 DE60026186 T2 DE 60026186T2 DE 60026186 T DE60026186 T DE 60026186T DE 60026186 T DE60026186 T DE 60026186T DE 60026186 T2 DE60026186 T2 DE 60026186T2
Authority
DE
Germany
Prior art keywords
rng
password
integrated circuit
random number
calculated
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Lifetime
Application number
DE60026186T
Other languages
English (en)
Other versions
DE60026186D1 (de
Inventor
Walter Fabrice
Blangy Hugues
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
EM Microelectronic Marin SA
Original Assignee
EM Microelectronic Marin SA
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by EM Microelectronic Marin SA filed Critical EM Microelectronic Marin SA
Publication of DE60026186D1 publication Critical patent/DE60026186D1/de
Application granted granted Critical
Publication of DE60026186T2 publication Critical patent/DE60026186T2/de
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3271Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using challenge-response
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/22Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
    • G06F11/26Functional testing
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01RMEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
    • G01R31/00Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
    • G01R31/28Testing of electronic circuits, e.g. by signal tracer
    • G01R31/317Testing of digital circuits
    • G01R31/31701Arrangements for setting the Unit Under Test [UUT] in a test mode
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01RMEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
    • G01R31/00Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
    • G01R31/28Testing of electronic circuits, e.g. by signal tracer
    • G01R31/317Testing of digital circuits
    • G01R31/31719Security aspects, e.g. preventing unauthorised access during test
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/14Protection against unauthorised use of memory or access to memory
    • G06F12/1408Protection against unauthorised use of memory or access to memory by using cryptography
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3226Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using a predetermined code, e.g. password, passphrase or PIN

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Quality & Reliability (AREA)
  • Computer Hardware Design (AREA)
  • Storage Device Security (AREA)
  • Tests Of Electronic Circuits (AREA)
  • Test And Diagnosis Of Digital Computers (AREA)

Description

  • Die vorliegende Erfindung bezieht sich auf integrierte Schaltungen, die Hardware- und/oder Software-Abschnitte mit Vertraulichkeitscharakter enthalten.
  • Die Fertigung jeder integrierten Schaltung umfasst gewöhnlich eine Prüfprozedur, die dazu dient, die korrekte Funktionsweise ihrer Hardware-Schaltungen und der Software, die darin oftmals gespeichert ist, zu kontrollieren. Wenn solche Hardware- und/oder Software-Abschnitte vertraulich sind, empfiehlt es sich, dass diese Prüfprozedur nicht berechtigten Personen nicht offenbart wird.
  • Das Dokument US 5.039.850 beschreibt eine integrierte Schaltung dieses Typs, die selbst ihr Prüfunterprogramm enthält. Sie umfasst einen EEPROM-Speicher, der dazu bestimmt ist, geheime Informationen zu halten, die beispielsweise einen Identifizierungscode für die integrierte Schaltung und vertrauliche Daten umfassen.
  • Wenn eine Prüfprozedur für diese integrierte Schaltung ausgeführt werden soll, wird zunächst verifiziert, ob der geheime Code bereits gespeichert worden ist. Wenn dies nicht der Fall ist, wird das Prüfunterprogramm in allen nicht vertraulichen Elementen der Schaltung ausgeführt. Wenn hingegen der geheime Code bereits gespeichert worden ist, muss die Prüfeinrichtung denselben Code eingeben, wobei der EEPROM-Speicher dann initialisiert wird, wenn eine Übereinstimmung zwischen dem eingegebenen Code und dem gespeicherten Code vorhanden ist, so dass dann die vertraulichen Daten verfügbar sind, um von der integrierten Schaltung ausgewertet zu werden. Das bedeutet, dass diese Daten gegenüber der Prüfeinrichtung vertraulich bleiben, weil eine Prüfung nur erfolgen kann, wenn der geheime Code nicht bereits gespeichert ist. Dies bedeutet jedoch auch, dass an diesen vertraulichen Daten keine Prüfung vorgenommen werden kann.
  • Daraus wird deutlich, dass das bekannte Verfahren des Standes der Technik ausschließlich auf den Fall gerichtet ist, in dem die Prüfung stets ausgeführt wird, bevor die vertraulichen Daten in die integrierte Schaltung eingegeben werden.
  • Die vorliegende Erfindung hat zum Ziel, ein Verfahren zum Prüfen integrierter Schaltungen zu schaffen, durch das eine Prüfung in den vertraulichen Abschnitten, die die Schaltung enthält, ausgeführt werden kann, ohne dass auf den Inhalt dieser Abschnitte durch eine nicht berechtigte Person zugegriffen werden kann.
  • Sie hat daher ein Verfahren zum Prüfen einer integrierten Schaltung mit Elementen mit vertraulichem Charakter mit Hilfe einer Prüfeinrichtung zum Gegenstand, das die im Anspruch 1 definierten Merkmale aufweist.
  • Aufgrund dieser Merkmale kann die Prüfeinrichtung auf die Elemente mit Vertraulichkeitscharakter zugreifen, um sie zu prüfen, jedoch nur dann, wenn sie ein Passwort erzeugen kann, das in einer vorgegebenen Beziehung zu dem in der integrierten Schaltung erzeugten Passwort steht. Der Zugriff auf die geschützten Elemente ist daher vollkommen geschützt.
  • Die Erfindung hat außerdem eine integrierte Schaltung zum Gegenstand, die die Merkmale von Anspruch 7 aufweist.
  • Die Erfindung hat außerdem eine Prüfeinrichtung zum Gegenstand, die die Merkmale von Anspruch 11 aufweist.
  • Weitere Besonderheiten der Erfindung ergeben sich aus den abhängigen Ansprüchen.
  • Weitere Merkmale und Vorteile der Erfindung werden deutlich im Verlauf der folgenden Beschreibung, die ausschließlich beispielhaft und mit Bezug auf die beigefügten Zeichnungen gegeben wird, worin:
  • 1 ein vereinfachtes Schema einer integrierten Schaltung CI ist, die Abschnitte mit Vertraulichkeitscharakter aufweist und mit einer Prüfeinrichtung verbunden ist, während das Verfahren der Erfindung ausgeführt wird;
  • 2 einen Abschnitt der Prüfeinrichtung darstellt, um eine Abwandlung der Erfindung zu veranschaulichen.
  • In 1 sind eine zu prüfende integrierte Schaltung CI sowie eine Prüfeinrichtung T dargestellt. Wenn die Prüfeinrichtung T an die Schaltung CI oder an eine andere integrierte Schaltung mit gleichem Aufbau angeschlossen ist, ermöglicht die Gesamtheit die Ausführung der bevorzugten Ausführungsform der Erfindung.
  • Die integrierte Schaltung CI umfasst einen Bereich 1 mit Hardware- und/oder Software-Abschnitten mit Vertraulichkeitscharakter, deren Zugriff reserviert ist. Es kann sich beispielsweise um ROM- und/oder RAM-Speicher handeln, die vertrauliche Informationen wie etwa Algorithmen, Programme, Daten oder Prüfprozeduren für diesen vertraulichen Abschnitt enthalten. Einen Teil dieses vertraulichen Abschnitts kann auch ein EEPROM-Speicher bilden, in den Parameter für die Kalibrierung elektronischer Referenzmodule, denen entsprechende Signaturen zugeordnet sind, Chiffrierschlüssel, Prüfsignaturen und dergleichen aufgezeichnet sind. Bei den Referenzmodulen wie etwa einem Oszillator oder einem Spannungsregulator kann es sich ebenfalls um Hardware-Abschnitte der Schaltung handeln. Der Fachmann versteht, dass die Art der vertraulichen Informationen oder jene der Hardware-Abschnitte, die zu schützen sind, beliebig sein kann, da die Erfindung ausschließlich einen Authentisierungsprozess betrifft, der die Prüfung des vertraulichen Bereichs 1 der Schaltung CI ermöglicht.
  • Auf den vertraulichen Bereich oder die vertraulichen Abschnitte 1 kann über eine Barriere 2, die für die Abschnitte 1 einen bedingten Zugriff schafft, zugegriffen werden, um sie zu prüfen. Diese Barriere 2 kann als Hardware in Form zweier Multiplexer Mux1 und Mux2 verwirklicht sein, die mit einer Eingangsschnittstelle 3 der Schaltung CI und mit dem vertraulichen Bereich 1 verbunden sind. Der Multiplexer Mux2 kann so gesteuert werden, dass er den Durchgang von Prüfinformationen von der Schnittstelle 3 über eine Verbindung 3a ausschließlich dann zulässt, wenn ein Steuersignal von einem Komparator 4 über eine Verbindung 4a geliefert wird.
  • Die Verbindung 4a ist mit dem Ausgang des Komparators 4 verbunden, dessen Eingänge mit Verbindungen 4b bzw. 4c verbunden sind, wobei die letztere mit der Schnittstelle 3 verbunden ist.
  • Die Schaltung CI umfasst außerdem einen Chiffrierblock 5, in dem ein erstes Passwort Gk(RNG)-C mit Hilfe eines Chiffrieralgorithmus berechnet werden kann. Dieser arbeitet mit einer Zufallszahl RNG-C, die in einem Zufallszahlgenerator 6 erzeugt wird, und mit einem Chiffrierschlüssel k, der in einem Bereich 7 eines EEPROM-Speichers gespeichert ist. Der Generator 6 und der Speicherbereich 7 sind mit dem Chiffrierblock 5 verbunden.
  • Dieser letztere ist außerdem über einen Passwortausgang 8 mit einem Passwortregister 9 verbunden, um das erste Passwort Gk(RNG)-C zu empfangen, das außerdem mit der Verbindung 4b zu dem Komparator 4 verbunden ist.
  • Der Chiffrieralgorithmus, der im Chiffrierblock 5 ausgeführt wird, kann ein an sich bekannter öffentlicher Algorithmus sein. Beispielsweise kann es sich um einen Standardalgorithmus handeln, der dem Fachmann unter dem Namen DES bekannt ist.
  • Der Zufallszahlgenerator 6 ist außerdem mit einer Ausgangsschnittstelle 10 der Schaltung CI verbunden.
  • Die Prüfeinrichtung T umfasst eine Eingangsschnittstelle 11, die bei einer Prüfung mit der Ausgangsschnittstelle 10 einer zu prüfenden integrierten Schaltung CI verbunden ist. Diese Eingangsschnittstelle 11 kann somit von dieser letz teren die Zufallszahl RNG-C empfangen, die zum Zeitpunkt der Verbindungsherstellung für die Ausführung einer Prüfung in dem Zufallszahlgenerator 6 der Schaltung CI vorhanden ist.
  • Die Prüfvorrichtung T umfasst außerdem einen Chiffrierblock 12, der mit der Eingangsschnittstelle 11 verbunden ist, um die in der integrierten Schaltung CI erzeugte Zufallszahl RNG-C zu empfangen. Dieser Chiffrierblock 12 ist so beschaffen, dass er eine Chiffrierung mit Hilfe eines Algorithmus ausführt, der zu jenem, mit dem der Chiffrierblock 5 der Schaltung CI arbeitet, völlig übereinstimmt. Die Chiffrierung in der Prüfeinrichtung T erfolgt mit Hilfe eines Chiffrierschlüssels k, der in einem Bereich 13 eines EEPROM-Speichers der Prüfeinrichtung T vorhanden ist. Dieser Schlüssel k ist der gleiche wie jener, den der EEPROM-Speicherbereich 7 der integrierten Schaltung CI enthält.
  • Somit kann die Prüfeinrichtung T ein zweites Passwort Gk(RNG)-T anhand der Zufallszahl RNG-C berechnen.
  • Die Prüfeinrichtung T umfasst außerdem eine Ausgangsschnittstelle 14, die mit dem Ausgang des Chiffrierblocks 12 verbunden ist, damit das Passwort, das hier berechnet wird, zu der integrierten Schaltung CI geleitet werden kann.
  • Diese Ausgangsschnittstelle 14 ist außerdem mit einem Prüfblock 15 verbunden, der die Prüffunktionen ausführen kann, denen die Schaltung CI unterworfen werden soll und deren Informationen über die Schnittstellen 14 und 3 zum Multiplexer Mux2 der integrierten Schaltung CI geleitet werden.
  • Die Schnittstellen 3, 10, 11 und 14 sind auf an sich bekannte Weise "Zustandsmaschinen", die mit Hilfe interner Taktgeber der Schaltung CI bzw. der Prüfeinrichtung T Sende- und Empfangsprotokolle für die Lenkung der Daten zwischen den zwei Komponenten CI und T steuern.
  • Der Multiplexer Mux1, der auf der Eingangsseite des Multiplexers Mux2 in Bezug auf die Prüfeinrichtung T mit diesem in Reihe geschaltet ist, ist mit der Schnittstelle 3 verbunden, um die für die Authentisierung notwendigen Informationen zu den betreffenden Abschnitten der Schaltung wie etwa dem EEPROM-Speicherbereich 7 und dem Chiffrierblock 5 zu lenken (zur Vereinfachung sind die entsprechenden Verbindungen nicht dargestellt worden).
  • Dieser erste Multiplexer Mux1 wird durch ein Prüfbetriebsartsignal, das über einen Leiter 16 von der Prüfeinrichtung T ausgeht, ("offen") gesteuert, während der Multiplexer Mux2 durch den Ausgang des Komparators 4 gesteuert wird (Verbindung 4a).
  • Die wesentlichen Schritte der Prüfprozedur für die integrierte Schaltung CI laufen folgendermaßen ab.
  • Wenn die Prüfeinrichtung T mit der integrierten Schaltung CI verbunden ist, wird die Prüfprozedur durch Schicken des Prüfbetriebsartsignals, das sich auf dem Leiter 16 bewegt, begonnen. Dies ruft die Eingabe der Zufallszahl RNG-C, die zum betrachteten Zeitpunkt durch den Generator 6 erzeugt wird, und des Schlüssels k, der aus dem Speicher 7 entnommen wird, in den Rechenblock 5 hervor. Das erste Passwort Gk(RNG)-C wird dann beispielsweise mit Hilfe des Chiffrieralgorithmus DES berechnet, wobei dieses Passwort im Register 9 angeordnet wird.
  • Die Zufallszahl RNG-C wird außerdem zur Prüfeinrichtung T geschickt, indem sie durch die Schnittstellen 10 und 11 gelenkt wird, um in den Rechenblock 12 eingegeben zu werden, in dem außerdem eine Berechnung mit Hilfe desselben Chiffrieralgorithmus anhand des Chiffrierschlüssels k, der aus dem Speicherbereich 13 entnommen wird, und der empfangenen Zufallszahl RNG-C ausgeführt wird. Diese Chiffrierberechnung hat die Erzeugung eines zweiten Passworts Gk(RNG)-T zur Folge. Dieses letztere wird über die Schnittstellen 14 und 3 zur integrierten Schaltung CI gelenkt und dann in den Komparator 4 eingegeben.
  • Der Komparator 4 ist so beschaffen, dass er einen bitweisen Vergleich der zwei Passwörter Gk(RNG)-C und Gk(RNG)-T, die in ihn eingegeben werden, ausführt.
  • Wenn zwischen den zwei Passwörtern, die in den Komparator 4 eingegeben werden, eine Übereinstimmung vorliegt, bedeutet dies, dass die Authentisierung der Prüfeinrichtung T erfolgreich war und dass diese letztere somit befugt ist, auf die vertraulichen Abschnitte 1 zuzugreifen. Der Multiplexer Mux2 wird durch das Signal gesteuert, das sich über die Verbindung 4a bewegt, wodurch der Weg, der von der Prüfeinrichtung T zu den vertraulichen Abschnitten 1 der integrierten Schaltung CI über die Verbindung 3a führt, offen ist. Die Prüfeinrichtung T kann dann die geforderten Prüfoperationen über den Prüfblock 15 ausführen, um die vertraulichen Abschnitte 1 der integrierten Schaltung CI hinsichtlich ihrer korrekten Funktion zu verifizieren und um im positiven Fall die betrachtete Schaltung für gültig zu erklären. Bei fehlender Übereinstimmung wird der Zugriff auf die vertraulichen Abschnitte 1 der Prüfeinrichtung T untersagt.
  • Um die Zugriffssicherheit zu erhöhen und gemäß einer ersten Abwandlung der Erfindung, die in 1 gestrichelt dargestellt ist, ist es möglich, die Berech nung des zweiten Passworts Gk(RNG)-T durch den Rechenblock 12 der Prüfeinrichtung T erst nach einer Überprüfung eines dritten im Voraus berechneten Passworts zuzulassen. Hierzu wird vor der Berechnung des ersten Passworts Gk(RNG)-C im Rechenblock 5 der integrierten Schaltung CI die Berechnung eines dritten Passworts Fk(RNG)-C vorgenommen, das eventuell bei einer Anzahl von Taktschlägen berechnet wird, die von jener verschieden ist, bei der das erste Passwort Gk(RNG)-C berechnet wird.
  • Dieses dritte Passwort Fk(RNG)-C wird nach der Initialisierung der Authentisierungsprozedur nach der Zufallszahl RNG-C über die Schnittstellen 10 und 11 zu der Prüfeinrichtung T geschickt. Der Rechenblock 12 der Prüfeinrichtung T muss dann außerdem ein viertes Passwort Fk(RNG)-T berechnen, das in einen Komparator 17 eingegeben wird, der einen Teil der Prüfeinrichtung T bildet, wobei dieser Komparator einerseits mit der Schnittstelle 11 verbunden ist, von der er das dritte Passwort Fk(RNG)-C empfängt, das in der integrierten Schaltung CI berechnet wird, und andererseits mit dem Rechenblock 12 verbunden ist, um hiervon das vierte Passwort Fk(RNG)-T zu empfangen, das dort berechnet worden ist.
  • Nur dann, wenn der Komparator 17 eine Übereinstimmung zwischen dem dritten und dem vierten Passwort Fk(RNG)-C bzw. Fk(RNG)-T feststellt, schickt er zum Rechenblock 12 ein Signal für die Autorisierung der Berechnung des zweiten Passworts Gk(RNG)-T. Hierzu ist der Komparator 17 mit seinem Ausgang mit diesem Rechenblock 12 verbunden.
  • Die Funktionen Fk(RNG)-C und Fk(RNG)-T ermöglichen die Authentisierung der integrierten Schaltung CI, während die Funktionen Gk(RNG)-C und Gk(RNG)-T die Authentisierung der Prüfeinrichtung ermöglichen. Dieser letztere Teil bildet den wichtigen Teil des Gegenstands der Erfindung mit dem Ziel, einer nicht autorisierten Prüfeinrichtung zu verbieten, auf die vertraulichen Abschnitte der integrierten Schaltung zuzugreifen.
  • Gemäß einer weiteren Abwandlung der Erfindung, die zu der eben beschriebenen Abwandlung analog ist und die in 2 gezeigt ist, wird auch das dritte Passwort Fk(RNG)-C in der integrierten Schaltung CI berechnet, wie vorher beschrieben worden ist, und über die Schnittstellen 10 und 11 zu der Prüfeinrichtung T gelenkt. In diesem Fall wird das dritte Passwort in den Rechenblock 12 eingegeben, der dann so beschaffen ist, dass er eine Berechnung an diesem Ort mit Hilfe eines Algorithmus ausführt, der zu jenem invers ist, der für die Berechnung des vierten Passworts Fk(RNG)-T verwendet wird. Diese Berechnung wird eine Zufallszahl RNG-T zur Folge haben, die in einen Komparator 17' eingegeben wird. Dieser ist hierzu über einen seiner Eingänge mit dem Rechenblock 12 verbunden, während sein anderer Eingang mit der Schnittstelle 11 verbunden ist, um RNG-C zu empfangen. Der Ausgang des Komparators 17' ist mit dem Rechenblock 12 verbunden, damit an ihn ein Zulassungssignal für die Berechnung des zweiten Passworts Gk(RNG)-T nur dann geschickt wird, wenn der Komparator 17' eine Übereinstimmung zwischen den Zufallszahlen RNG-C und RNG-T, die in seine Eingänge eingegeben werden, feststellt. Dieses Berechnungszulassungssignal ermöglicht dann die Auslösung der Berechnung des zweiten Passworts Gk(RNG)-T im Rechenblock 12.
  • Bei der Fertigung der integrierten Schaltung CI werden alle Bits des EEPROM-Speicherbereichs 7, der für die Speicherung des Chiffrierschlüssels k vorgesehen ist, vorzugsweise auf einem vorgegebenen Wert gehalten (beispielsweise sind alle Bits ausschließlich aus Bits mit Pegel 0 oder ausschließlich aus Bits mit Pegel 1 gebildet). Die Eingabe des Chiffrierschlüssels in diesen Speicherbereich 7 erfolgt in einer den Prüfungen vorhergehenden Phase, in der eine Kohärenzkontrolle über einen Redundanzverifizierungsblock 18 (Code Redundancy Check), der den EEPROM-Speicherbereich 7 enthält, erfolgt. Die Prüfeinrichtung T führt diese Operation aus, die anfangs zu einem Misserfolg führt, weil die anfänglichen Werte der Speicherbits des Schlüssels und jener des geschickten Schlüssels prinzipiell unterschiedlich sind. Wenn die Prüfeinrichtung T feststellt, dass der Schlüssel noch nicht gespeichert worden ist, gibt sie einen solchen Schlüssel in den EEPROM-Speicherbereich 7 ein, woraufhin die entsprechende Stelle des EEPROM-Speicherbereichs 7 für ein Schreiben und ein Lesen gesperrt wird. Die Prüfprozedur, wie sie eben beschrieben worden ist, kann dann beginnen und wie oben beschrieben ablaufen.
  • Es sei angemerkt, dass die in der integrierten Schaltung und in der Prüfeinrichtung berechneten Passwörter, die den jeweiligen Vergleichen unterworfen werden, nicht notwendig gleich sein müssen. Es genügt, dass sie eine vorgegebene Beziehung untereinander haben, die während dieser Vergleiche verifiziert werden. Der Ausdruck "Übereinstimmung" soll daher in einem weiten Bereich verstanden werden.

Claims (13)

  1. Verfahren zum Prüfen einer integrierten Schaltung (CI), die Hardware- und/oder Software-Abschnitte (1) mit Vertraulichkeitscharakter enthält, mit Hilfe einer Prüfeinrichtung (T), wobei dieses Verfahren dadurch gekennzeichnet ist, dass es darin besteht: – in der integrierten Schaltung (CI): eine Zufallszahl (RNG-C) zu erzeugen, diese Zufallszahl (RNG-C) mit Hilfe eines in der integrierten Schaltung (CI) gespeicherten Schlüssels (k) über einen Chiffrieralgorithmus zu chiffrieren, um ein erstes Passwort (Gk(RNG)-C) zu erhalten, und die Zufallszahl (RNG-C) zu der Prüfeinrichtung (T) zu schicken, – und in der Prüfeinrichtung (T): die empfangene Zufallszahl (RNG-C) mit Hilfe eines Schlüssels (k), der mit jenem übereinstimmt, der in der integrierten Schaltung verwendet wird, über einen Chiffrieralgorithmus, der mit jenem, der in der integrierten Schaltung (CI) verwendet wird, übereinstimmt, parallel zu chiffrieren, um ein zweites Passwort (Gk(RNG)-T) zu erzeugen, und das zweite Passwort (Gk(RNG)-T) der Prüfeinrichtung (T) zu der integrierten Schaltung (CI) zu schicken, und – dann in der integrierten Schaltung (CI) das erste Passwort (Gk(RNG)-C) und das zweite Passwort (Gk(RNG)-T) miteinander zu vergleichen, einen Prüfweg (3a), der von der Prüfeinrichtung zu den Abschnitten (1) mit vertraulichem Charakter führt, nur freizugeben, wenn der Vergleich eine Übereinstimmung zwischen dem ersten und dem zweiten Passwort (Gk(RNG)-C); (Gk(RNG)-T) ergibt, und die Prüfung der Elemente (1) mit vertraulichem Charakter auszuführen.
  2. Verfahren nach Anspruch 1, dadurch gekennzeichnet, dass es außerdem darin besteht: – in der integrierten Schaltung (CI): die Zufallszahl (RNG-C) mit Hilfe des in der integrierten Schaltung (CI) gespeicherten Schlüssels (k) über den Chiffrieralgorithmus zu chiffrieren, um ein drittes Passwort (Fk(RNG)-C) zu erhalten; das dritte Passwort (Fk(RNG)-C) zu der Prüfeinrichtung (T) zu schicken; und – in der Prüfeinrichtung (T): die empfangene Zufallszahl (RNG-C) mit Hilfe des in der Prüfeinrichtung gespeicherten Schlüssels (k) über den Chiffrieralgorithmus zu chiffrieren, um ein viertes Passwort (Fk(RNG)-T) zu erhalten; das dritte Passwort (Fk(RNG)-C) und das vierte Passwort (Fk(RNG)-T) miteinander zu vergleichen; und die Chiffrierung des zweiten Passworts (Gk(RNG)-T) durch die Prüfeinrichtung (T) nur dann zuzulassen, wenn zwischen dem dritten und dem vierten Passwort (Fk(RNG)-C; Fk(RNG)-T) eine Übereinstimmung besteht.
  3. Verfahren nach Anspruch 1, dadurch gekennzeichnet, dass es außerdem darin besteht: – in der integrierten Schaltung (CI): die Zufallszahl (RNG-C) mit Hilfe des in der integrierten Schaltung (CI) gespeicherten Schlüssels (k) über den Chiffrieralgorithmus zu chiffrieren, um ein drittes Passwort (Fk(RNG)-C) zu erhalten; und das dritte Passwort (Fk(RNG)-C) zu der Prüfeinrichtung (T) zu schicken; und – in der Prüfeinrichtung (T): die inverse Chiffrierung des empfangenen dritten Passworts (Fk(RNG)-C) mit Hilfe des in der Prüfeinrichtung (T) gespeicherten Schlüssels (k) über den Chiffrieralgorithmus auszuführen, um eine berechnete Zufallszahl (RNG-T) wiederzugewinnen; die von der integrierten Schaltung (CI) empfangene Zufallszahl (RNG-C) mit der berechneten Zufallszahl (RNG-T) zu vergleichen; und die Chiffrierung des zweiten Passworts (Gk(RNG)-T) durch die Prüfeinrichtung (T) nur dann zuzulassen, wenn zwischen der empfangenen und der berechneten Zufallszahl (RNG-T; RNG-T) eine Übereinstimmung besteht.
  4. Verfahren nach einem der Ansprüche 2 und 3, dadurch gekennzeichnet, dass die Chiffrierung des dritten und/oder des vierten Passworts (Fk(RNG)-C; Fk(RNG)-T) auf der Grundlage einer Anzahl von Taktschlägen ausgeführt wird, die von jener verschieden ist, die für die Chiffrierung des ersten und des zweiten Passworts (Gk(RNG)-C; Gk(RNG)-T) verwendet wird.
  5. Verfahren nach einem der Ansprüche 1 bis 4, dadurch gekennzeichnet, dass es hinsichtlich der Übereinstimmungen darin besteht, die Gleichheit zwischen den Passwörtern (Gk(RNG)-C; Gk(RNG)-T) – (Fk(RNG)-C; Fk(RNG)-T) – und den Zufallszahlen (RNG; RNG-T), die empfangen bzw. berechnet werden, zu verifizieren.
  6. Verfahren nach einem der Ansprüche 1 bis 5, dadurch gekennzeichnet, dass es bei der Fertigung der integrierten Schaltung (CI) darin besteht, einen vorgegebenen Wert des Chiffrierschlüssels zu speichern, und dann bei der Ausführung des Prüfverfahrens mit Hilfe der Prüfeinrichtung (T) darin besteht, an die integrierte Schaltung (CI) einen Wert des Chiffrierschlüssels (k) zu schicken, zu verifizieren, ob der geschickte Chiffrierschlüssel (k) den in der Schaltung (CI) gespeicherten vorgegebenen Wert besitzt, die Speicherung des geschickten Schlüssels in der Schaltung (CI) zu befehlen, falls bei dieser Verifikation eine Ungleichheit festgestellt wird, und die Speicherung jedes anderen Chiffrierschlüssels in der Schaltung (CI) in diesem Fall zu sperren.
  7. Integrierte Schaltung (CI), die Hardware- und/oder Software-Abschnitte mit vertraulichem Charakter (1) sowie Mittel (2, 3, 16) zum bedingten Zuführen von Prüfinformationen an die Hardware- und/oder Softwareabschnitte umfasst, dadurch gekennzeichnet, dass sie umfasst: – einen Zufallszahl-Generator (6); – Mittel (7) zum Speichern eines Chiffrierschlüssels (k); – Rechenmittel (12), um mit Hilfe eines Chiffrieralgorithmus ein erstes Passwort (Gk(RNG)-C) anhand des Schlüssels und einer erzeugten Zufallszahl (RGN-C) zu berechnen; – Mittel (10) zum Leiten einer Zufallszahl (RNG-C) nach außen; und – Mittel (4) zum Vergleichen des berechneten ersten Passworts (Gk(RNG)-C) mit einem von außen empfangenen zweiten Passwort (Gk(RNG)-T), wobei das zweite Passwort anhand der durch den Generator erzeugten Zufallszahl berechnet wird, wobei die Vergleichsmittel mit den Ausgabemitteln (2, 3, 16) in der Weise verbunden sind, dass sie für die Prüfinformationen nur durchlässig sind, wenn sie eine Übereinstimmung zwischen dem ersten Passwort (Gk(RNG)-C) und dem zweiten Passwort (Gk(RNG)-T) feststellen.
  8. Integrierte Schaltung nach Anspruch 7, dadurch gekennzeichnet, dass sie Mittel (9) umfasst, um das berechnete erste Passwort (Gk(RNG)-C) zu speichern, wobei die Speichermittel vor den Vergleichsmitteln angeordnet sind, um an sie das gespeicherte erste Passwort zum Zeitpunkt des Vergleichs mit dem zweiten Passwort (Gk(RNG)-T) zu liefern.
  9. Integrierte Schaltung nach Anspruch 7, dadurch gekennzeichnet, dass die Mittel zum Speichern des Chiffrierschlüssels ein EEPROM-Speicher sind, der außerdem einen Redundanzverifikationsblock enthält.
  10. Integrierte Schaltung nach Anspruch 7, dadurch gekennzeichnet, dass die Rechenmittel vorgesehen sind, um ein drittes Passwort (Fk(RNG)-C) mit Hilfe des Chiffrierschlüssels, der erzeugten Zufallszahl (RNG-C) und des Chiffrieralgorithmus der Schaltung zu berechnen, wobei das dritte Passwort dazu bestimmt ist, mit der Zufallszahl nach außen zu einer bestimmten Prüfeinrichtung geschickt zu werden.
  11. Prüfeinrichtung für integrierte Schaltungen, die Hardware- und/oder Software-Abschnitte mit vertraulichem Charakter enthalten, wobei diese Prüfeinrichtung Mittel (15) zum Ausführen einer Prüfung der richtigen Funktion der Hardware- und/oder Software-Abschnitte sowie Mittel zum Ausgeben der entsprechenden Informationen an die Schaltung (CI) umfasst, dadurch gekennzeichnet, dass sie umfasst: – Mittel (11), um eine von der zu prüfenden integrierten Schaltung erzeugte Zufallszahl (RNG-C) zu empfangen; – Mittel (13), um einen Chiffrierschlüssel (k) zu speichern; und – Rechenmittel (12), um mit Hilfe eines Chiffrieralgorithmus ein zweites Passwort (Gk(RNG)-T) anhand des Chiffrierschlüssels (k) und der empfangenen Zufallszahl (RNG-C) zu berechnen; – wobei die Rechenmittel (12) an die Ausgabemittel (14) angeschlossen sind, um das berechnete zweite Passwort (Gk(RNG)-T) zu der integrierten Schaltung (CI) zu schicken.
  12. Prüfeinrichtung nach Anspruch 11, dadurch gekennzeichnet, dass die Rechenmittel (12) außerdem so beschaffen sind, dass sie mit Hilfe eines Chiffrieralgorithmus anhand des Chiffrierschlüssels (k) und der empfangenen Zufallszahl (RNG-C) ein viertes Passwort (Fk(RNG)-T) berechnen; dass die Mittel (11) zum Empfangen der Zufallszahl außerdem so beschaffen sind, dass sie ein in der integrierten Schaltung (CI) berechnetes drittes Passwort (Fk(RNG)-C) empfangen, und dass sie außerdem Vergleichsmittel (17) umfasst, um die Übereinstimmung zwischen dem empfangenen dritten Passwort (Fk(RNG)-C) und dem be rechneten vierten Passwort (Fk(RNG)-T) zu verifizieren, wobei den Rechenmitteln nur dann erlaubt wird, das zweite Passwort (Gk(RNG)-T) zu berechnen, wenn die Vergleichsmittel (17) eine vorgegebene Übereinstimmung zwischen dem dritten und dem vierten Passwort feststellen.
  13. Prüfeinrichtung nach Anspruch 11, dadurch gekennzeichnet, dass: – die Mittel (11) zum Empfangen der Zufallszahl außerdem so beschaffen sind, dass sie ein in der integrierten Schaltung (CI) berechnetes drittes Passwort (Fk(RNG)-C) empfangen, und – die Rechenmittel (12) außerdem so beschaffen sind, dass sie mit Hilfe eines inversen Chiffrieralgorithmus und anhand des in der integrierten Schaltung (CI) berechneten dritten Passworts (Fk(RNG)-C) und des Chiffrierschlüssels (k) eine Zufallszahl (RNG-T) neu berechnen; und dass sie außerdem Vergleichsmittel (17') umfasst, um die Übereinstimmung zwischen der empfangenen Zufallszahl (RNG-C) und der berechneten Zufallszahl (RNG-T) zu verifizieren, wobei den Rechenmitteln nur dann erlaubt wird, das zweite Passwort (Gk(RNG)-T) zu berechnen, wenn die Vergleichsmittel (17') eine vorgegebene Übereinstimmung zwischen diesen Zufallszahlen (RNG-C und RNG-T) feststellen.
DE60026186T 2000-01-26 2000-01-26 Verfahren zur Prüfung einer integrierten Schaltung mit vertraulichen Software- oder Hardware-elementen Expired - Lifetime DE60026186T2 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
EP00101502A EP1120662B1 (de) 2000-01-26 2000-01-26 Verfahren zur Prüfung einer integrierten Schaltung mit vertraulichen Software- oder Hardware-elementen

Publications (2)

Publication Number Publication Date
DE60026186D1 DE60026186D1 (de) 2006-04-27
DE60026186T2 true DE60026186T2 (de) 2006-11-16

Family

ID=8167703

Family Applications (1)

Application Number Title Priority Date Filing Date
DE60026186T Expired - Lifetime DE60026186T2 (de) 2000-01-26 2000-01-26 Verfahren zur Prüfung einer integrierten Schaltung mit vertraulichen Software- oder Hardware-elementen

Country Status (7)

Country Link
US (1) US6944778B2 (de)
EP (1) EP1120662B1 (de)
JP (1) JP4886934B2 (de)
KR (1) KR100818620B1 (de)
AT (1) ATE319103T1 (de)
DE (1) DE60026186T2 (de)
SG (1) SG114485A1 (de)

Families Citing this family (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7047174B2 (en) * 2001-05-02 2006-05-16 Freescale Semiconductor, Inc. Method for producing test patterns for testing an integrated circuit
FI114062B (fi) * 2001-06-08 2004-07-30 Nokia Corp Menetelmä tiedonsiirron turvallisuuden varmistamiseksi, tiedonsiirtojärjestelmä ja tiedonsiirtolaite
US20030120922A1 (en) * 2001-12-06 2003-06-26 Fairchild Semiconductor Corporation Device authentication system and method
FR2888433A1 (fr) * 2005-07-05 2007-01-12 St Microelectronics Sa Protection d'une quantite numerique contenue dans un circuit integre comportant une interface jtag
EP1785905A1 (de) * 2005-11-13 2007-05-16 Honeywell International Inc. Verbesserter Verschlüsselungsstandard zur Bereitstellung einer Hardwareschlüsselschnittstelle
US8171542B2 (en) 2006-02-13 2012-05-01 Honeywell International Inc. Advanced encryption standard to provide hardware key interface
US8135959B2 (en) * 2006-04-07 2012-03-13 Honeywell International Inc. External key to provide protection to devices
GB0615392D0 (en) * 2006-08-03 2006-09-13 Wivenhoe Technology Ltd Pseudo random number circuitry
JP2008180592A (ja) * 2007-01-24 2008-08-07 Nec Electronics Corp テストパターン生成回路及びテスト回路
JP5435354B2 (ja) * 2010-02-04 2014-03-05 豊丸産業株式会社 遊技機及び遊技システム
JP2012118884A (ja) * 2010-12-02 2012-06-21 Toshiba Corp プロセッサ及び半導体装置
JP6457824B2 (ja) * 2015-01-26 2019-01-23 株式会社ユニバーサルエンターテインメント 遊技機
JP6343568B2 (ja) * 2015-01-26 2018-06-13 株式会社ユニバーサルエンターテインメント 遊技機
JP2016137003A (ja) * 2015-01-26 2016-08-04 株式会社ユニバーサルエンターテインメント 遊技機
JP2016137001A (ja) * 2015-01-26 2016-08-04 株式会社ユニバーサルエンターテインメント 遊技機
CN106771950B (zh) * 2016-12-21 2023-06-27 珠海市中芯集成电路有限公司 一种用于晶圆的测试系统及其测试方法
JP6469201B2 (ja) * 2017-11-17 2019-02-13 株式会社ユニバーサルエンターテインメント 遊技機

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4802217A (en) * 1985-06-07 1989-01-31 Siemens Corporate Research & Support, Inc. Method and apparatus for securing access to a computer facility
US4799061A (en) * 1985-11-18 1989-01-17 International Business Machines Corporation Secure component authentication system
JP2860112B2 (ja) * 1989-06-21 1999-02-24 株式会社東芝 集積回路のテストデータ送信装置及び送信方法並びに集積回路のデバイステスト回路
US5526311A (en) * 1993-12-30 1996-06-11 Intel Corporation Method and circuitry for enabling and permanently disabling test mode access in a flash memory device
FR2716989B1 (fr) * 1994-03-04 1996-04-05 Gemplus Card Int Procédé de fonctionnement d'une carte à puce.
US5530753A (en) * 1994-08-15 1996-06-25 International Business Machines Corporation Methods and apparatus for secure hardware configuration
JP3764517B2 (ja) * 1996-01-26 2006-04-12 株式会社ルネサステクノロジ 通信装置
TW477787B (en) 1996-08-27 2002-03-01 Pfizer Pyrido six-membered nitrogen-containing cyclic ring derivatives having corticotropin releasing factor antagonist activity and pharmaceutical composition containing same
KR100213188B1 (ko) * 1996-10-05 1999-08-02 윤종용 사용자 인증 장치 및 방법
US5875248A (en) * 1997-02-25 1999-02-23 International Business Machines Corporation Method of counterfeit detection of electronic data stored on a device
JP3558488B2 (ja) * 1997-05-20 2004-08-25 エニー株式会社 暗号通信システム
KR100243347B1 (ko) * 1997-06-16 2000-08-01 정선종 컴퓨터 패스워드 보호 방법
FR2781066B1 (fr) * 1998-07-09 2002-05-03 Schlumberger Ind Sa Procedure de securisation de donnees dans une machine de test de composants electroniques
US6577229B1 (en) * 1999-06-10 2003-06-10 Cubic Corporation Multiple protocol smart card communication device

Also Published As

Publication number Publication date
DE60026186D1 (de) 2006-04-27
KR100818620B1 (ko) 2008-04-01
KR20010078041A (ko) 2001-08-20
ATE319103T1 (de) 2006-03-15
EP1120662A1 (de) 2001-08-01
US6944778B2 (en) 2005-09-13
JP4886934B2 (ja) 2012-02-29
JP2001264396A (ja) 2001-09-26
US20010010080A1 (en) 2001-07-26
EP1120662B1 (de) 2006-03-01
SG114485A1 (en) 2005-09-28

Similar Documents

Publication Publication Date Title
DE60026186T2 (de) Verfahren zur Prüfung einer integrierten Schaltung mit vertraulichen Software- oder Hardware-elementen
DE60020293T2 (de) Erzeugung eines wiederholbaren kryptographischen Schlüssels basierend auf variablen Parametern
DE69527773T2 (de) Schaltungsanordnung zur Überwachung der Benutzung von Funktionen in einem integrierten Schaltungkreis
DE69634880T2 (de) Verfahren und gerät zum kontrollierten zugriff zu verschlüsselten datenakten in einem computersystem
DE2912696C2 (de)
DE69410348T2 (de) Verfahren zum Beglaubigen eines tragbaren Objektes mittels eines off-line Terminals, entsprechendes, tragbares Objekt und entsprechendes Terminal
DE69832154T2 (de) Verwaltung und benutzung von neuen geheimzahlen in einer netzwerkumgebung
WO2014060134A2 (de) Verwenden einer puf zur prüfung einer authentisierung, insbesondere zum schutz vor unberechtigtem zugriff auf eine funktion eines ics oder steuergerätes
DE102004024002B4 (de) Verfahren zur Authentifizierung von Sensordaten und zugehörigem Sensor
DE102009055947A1 (de) Authentisierte Übertragung von Daten
DE3122534C1 (de) Verfahren zur Erzeugung sowie Kontrolle von Dokumenten, sowie Dokument und Vorrichtung zur Durchführung des Verfahrens
WO2000017826A1 (de) Vorrichtung zum liefern von ausgangsdaten als reaktion auf eingangsdaten und verfahren zum überprüfen der authentizität und verfahren zum verschlüsselten übertragen von informationen
DE69737905T2 (de) Gültigkeitsprüfung kryptografischer öffentlicher Schlüssel für Chipkarten
EP0030381A2 (de) Verfahren und Vorrichtung zur Erzeugung und späteren Kontrolle von gegen Nachahmung, Verfälschung und Missbrauch abgesicherten Dokumenten und Dokument zu dessen Durchführung
EP2235598B1 (de) Feldgerät und verfahren zu dessen betrieb
DE69330743T2 (de) Verfahren zur Beurkundung einer Informationseinheit durch eine andere
DE60116195T2 (de) Vorrichtung und Verfahren zur Verschleierung von Eingangsparametern
DE69736283T2 (de) Zugangskontrollsystem zu einer funktion, in der die chiffrierung mehrere dynamische veränderliche enthält
EP0280035B1 (de) Verfahren zum Sichern von Programmen und zur Integritätskontrolle gesicherter Programme
DE69826778T2 (de) Vorrichtungen zum Verschlüsseln und Entschlüsseln einer Schlüsselwiedergewinnungsbedingung
DE19925389A1 (de) Verfahren und Vorrichtung zur Übertragung von Daten auf SmartCards
EP3811260B1 (de) Kryptografiemodul und betriebsverfahren hierfür
WO2018104277A1 (de) Bidirektional verkettete blockchainstruktur
DE602004011965T2 (de) Verfahren und schaltung zum identifizieren und/oder verifizieren von hardware und/oder software eines geräts und eines mit dem gerät arbeitenden datenträgers
WO2006040250A1 (de) System und verfahren zur überprüfung einer zugangsberechtigung

Legal Events

Date Code Title Description
8364 No opposition during term of opposition