DE102014215467A1 - Generating an identifier for a circuit - Google Patents

Generating an identifier for a circuit Download PDF

Info

Publication number
DE102014215467A1
DE102014215467A1 DE102014215467.7A DE102014215467A DE102014215467A1 DE 102014215467 A1 DE102014215467 A1 DE 102014215467A1 DE 102014215467 A DE102014215467 A DE 102014215467A DE 102014215467 A1 DE102014215467 A1 DE 102014215467A1
Authority
DE
Germany
Prior art keywords
circuit
switching stage
switching
elements
stages
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.)
Withdrawn
Application number
DE102014215467.7A
Other languages
German (de)
Inventor
Kai Fischer
Erwin Hess
Dominik Merli
Andreas Mucha
Fabian Riess
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.)
Siemens AG
Original Assignee
Siemens AG
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 Siemens AG filed Critical Siemens AG
Priority to DE102014215467.7A priority Critical patent/DE102014215467A1/en
Priority to PCT/EP2015/063806 priority patent/WO2016020098A1/en
Publication of DE102014215467A1 publication Critical patent/DE102014215467A1/en
Withdrawn legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09CCIPHERING OR DECIPHERING APPARATUS FOR CRYPTOGRAPHIC OR OTHER PURPOSES INVOLVING THE NEED FOR SECRECY
    • G09C1/00Apparatus or methods whereby a given sequence of signs, e.g. an intelligible text, is transformed into an unintelligible sequence of signs by transposing the signs or groups of signs or by replacing them by others according to a predetermined system
    • 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/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • H04L9/0866Generation of secret information including derivation or calculation of cryptographic keys or passwords involving user or device identifiers, e.g. serial number, physical or biometrical information, DNA, hand-signature or measurable physical characteristics
    • 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
    • H04L9/3278Cryptographic 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 using physically unclonable functions [PUF]

Abstract

Es wird eine Schaltung zum Erzeugen eines Identifizierers für die Schaltung bereitgestellt, die als eine physikalisch unklonbare Funktion fungiert und als ein Messergebnis mindestens ein Bit liefert, aus welchem alleine oder in Verbindung mit anderen Messwerten ein Identifizierer der Schaltung erzeugt wird. Die Schaltung weist mindestens zwei Schaltstufen auf, die Schaltstufen umfassend jeweils mindestens zwei Schaltstufenelemente, wobei durch eine einem jeweiligen Schaltstufenelement zuordenbare Permutationsvorschrift eine Zuordnung von Schaltstufenelementen aufeinanderfolgender Schaltstufe zueinander festlegbar ist. Ferner ist eine Schnittstelleneinheit zu einer Initialisierungseinheit vorgesehen, die Initialisierungseinheit geeignet zum Vorgeben eines festgelegten Wertes als Ausgangswert eines jeweiligen Ausgangs der Schaltstufenelemente der Schaltstufen, so dass die Schaltung während einer aktiven Phase der Initialisierungseinheit in einem instabilen Zustand haltbar ist, wobei nach Beenden der aktiven Phase die Schaltung eingerichtet ist zum Einnehmen eines für die Schaltung charakteristischen Zustandes in Abhängigkeit von der Permutationsvorschrift. Eine Erfassungseinheit ist zum Erfassen mindestens eines Bits innerhalb der Schaltung im charakteristischen Zustand vorgesehen zum Erzeugen des Identifizierers.A circuit is provided for generating an identifier for the circuit which functions as a physically nonclonable function and provides as a measurement result at least one bit from which an identifier of the circuit is generated alone or in conjunction with other measurement values. The circuit has at least two switching stages, the switching stages comprising in each case at least two switching stage elements, it being possible to fix an assignment of switching stage elements of successive switching stages to one another by means of a permutation rule assignable to a respective switching stage element. Further, an interface unit is provided to an initialization unit, the initialization unit suitable for setting a predetermined value as the output value of a respective output of the switching stage elements of the switching stages, so that the circuit is stable in an unstable state during an active phase of the initialization unit, wherein after completion of the active phase the circuit is set up to assume a characteristic state of the circuit as a function of the permutation rule. A detection unit is provided for detecting at least one bit within the circuit in the characteristic state for generating the identifier.

Description

Im industriellen sowie im privaten Umfeld kommen elektronische Geräte, integrierte Schaltungen oder eingebettete Geräte, sogenannte Embedded Devices, zum Einsatz. Diese Geräte, d.h. die physischen Objekte oder die Hardware, auf der beispielsweise ein eingebettetes System realisiert ist, sollen für zahlreiche unterschiedliche Anwendungen eindeutig identifiziert oder authentifiziert werden können. Überdies sollen für Anwendungen im Sicherheitsumfeld kryptographische Schlüssel vor unbefugtem Zugriff geschützt auf den beschriebenen Geräten gespeichert oder genutzt werden können. Es besteht oftmals ein Interesse, bei physikalischen Angriffen auf benutzte kryptographische Schlüssel, diese Schlüssel zu vernichten. In industrial and private environments, electronic devices, integrated circuits or embedded devices, so-called embedded devices, are used. These devices, i. For example, the physical objects or hardware on which, for example, an embedded system is implemented should be able to be uniquely identified or authenticated for many different applications. Moreover, for applications in the security environment cryptographic keys protected against unauthorized access stored on the devices described or can be used. There is often an interest in physical attacks on used cryptographic keys to destroy these keys.

Es ist bekannt, das Prinzip physikalisch unklonbarer Funktionen, sogenannte Physical Unclonable Functions, kurz PUFs, zu nutzen, wobei ein komplexes Verhalten eines physikalischen Systems analysiert wird. Das Verhalten wird durch Faktoren bestimmt, die weder vom Hersteller des Systems noch von irgendjemand anderem, insbesondere einem Angreifer, direkt beobachtbar, beeinflussbar oder reproduzierbar sind. Dabei wird angenommen, dass es einem Hersteller einer Hardware nicht möglich sein darf, eine Hardware mit vorgegebenen physikalisch unklonbaren Eigenschaften herzustellen. Dabei bildet eine PUF Eingangswerte oder Challenges auf durch das komplexe Verhalten bestimmte Weise auf Ausgangswerte oder Responses ab. Die Abbildung durch die PUF ist dabei bei jedem physischen Exemplar, auch Instanz genannt, unterschiedlich und für alle praktischen Belange zufällig, für das einzelne Exemplar jedoch stabil. It is known to use the principle of physically unclonable functions, so-called Physical Unclonable Functions, in short PUFs, whereby a complex behavior of a physical system is analyzed. The behavior is determined by factors that are neither directly observable, modifiable or reproducible by the manufacturer of the system nor by anyone else, in particular an attacker. It is assumed that a manufacturer of a hardware may not be able to produce a hardware with given physically unclonable properties. A PUF maps input values or challenges to output values or responses in a manner determined by the complex behavior. The illustration by the PUF is different for each physical copy, also called instance, and random for all practical purposes, but stable for the individual copy.

Somit kann eine Authentifizierung mittels der physikalisch unklonbaren Funktion erreicht werden, indem die intrinsische physikalische Eigenschaft der Hardware vermessen wird und eine daraus abgeleitete Information als Identifizierer verwendet wird. Mittels einer physikalisch unklonbaren Funktion kann geprüft werden, ob es sich bei einem Gerät oder einem Halbleiter-Schaltkreis um ein Originalprodukt handelt, wobei auch hier beispielsweise eine Response oder Messung ausgewertet wird, welche nicht auf einem nachgebauten oder manipulierten Gerät oder Halbleiter-Schaltkreis generiert werden kann. Thus, authentication by means of the physically unclonable function can be achieved by measuring the intrinsic physical property of the hardware and using information derived therefrom as an identifier. By means of a physically unclonable function, it can be checked whether a device or a semiconductor circuit is an original product, whereby here too, for example, a response or measurement is evaluated which are not generated on a replicated or manipulated device or semiconductor circuit can.

Falls die Anzahl möglicher Challenge Response Paare der PUF so groß ist, dass es für einen Angreifer nicht praktikabel ist, einen signifikanten Anteil davon in Erfahrung zu bringen, selbst wenn er physischen Zugriff auf das Objekt hat, spricht man von einer Strong PUF. If the number of possible PUF Challenge Response Pairs is so large that it is impractical for an attacker to learn a significant proportion of them, even if they have physical access to the object, it is called a Strong PUF.

Eine spezifische Ausprägung einer Strong PUF wurde in Chen et al. „The Bistable Ring PUF: A new architecture for strong Physical Unclonable Functions“ (2011 IEEE International Symposium on Hardware-Oriented Security and Trust (HOST), 134–141. IEEE, 2011) vorgestellt. Hier wird eine Bistable Ring PUF, kurz BRPUF, beschrieben, welche aus einer ringförmig verschalteten geraden Zahl von identischen Stufen aus digitalen Schaltungselementen besteht, die jeweils die logische Negation implementieren, z.B. Inverter. Aufgrund dieser Struktur hat der Ring zwei stabile Zustände. Beginnend mit einer beliebigen fix gewählten Stufe des Rings können die Ausgänge der Inverter entweder das Muster 0101 oder 1010 haben. Die durch die Herstellung bedingten zufälligen Variationen der Eigenschaften von integrierten Schaltungen und ihren Elementen beeinflussen bei jedem physischen Exemplar einer BRPUF, welchen der beiden stabilen Zustände der Ring einnimmt. Die Information, welcher der beiden Zustände vorliegt, entspricht einer PUF Response von einem Bit. Zur Verwirklichung eines Challenge-Response-Formalismus existieren innerhalb jeder Stufe zwei parallele Signalpfade, wobei über eine Challenge einer der beiden Pfade als aktives Element des Ringes konfiguriert wird, während der andere deaktiviert ist. Die Bit-Länge der Challenge entspricht dabei der Anzahl der Stufen des Rings, d.h. jedes Bit der Challenge bestimmt die Konfiguration des Signalpfades in einer Stufe. Um ein erneutes Auslesen der Response nach einer neuen Challenge zu ermöglichen, wird durch ein Reset-Signal der Ring vorübergehend in einen instabilen Zustand gezwungen, in dem alle Stufen im gleichen Zustand, 0 oder 1, sind. Nach Aufhebung des Reset-Zustandes fällt der Ring nach einer gewissen Einschwingzeit in einen der beiden stabilen Zustände. A specific expression of a Strong PUF has been found in Chen et al. "The Bistable Ring PUF: A New Architecture for Strong Physical Unclonable Functions" (2011 IEEE International Symposium on Hardware-Oriented Security and Trust (HOST), 134-141, IEEE, 2011) presented. Here is a bistable ring PUF, short BRPUF described, which consists of a ring-connected even number of identical stages of digital circuit elements, each implementing the logical negation, eg inverter. Because of this structure, the ring has two stable states. Starting with any fixed selected stage of the ring, the outputs of the inverters may have either the pattern 0101 or 1010. The random variations in the characteristics of integrated circuits and their elements due to fabrication in each physical instance of a BRPUF affect which of the two stable states the ring occupies. The information of which of the two states is present corresponds to a PUF response of one bit. In order to realize a challenge-response formalism, two parallel signal paths exist within each stage, one of the two paths being configured as an active element of the ring via a challenge, while the other is deactivated. The bit length of the challenge corresponds to the number of stages of the ring, ie each bit of the challenge determines the configuration of the signal path in one stage. To enable readout of the response after a new challenge, a reset signal temporarily forces the ring into an unstable state in which all stages are in the same state, 0 or 1. After canceling the reset state, the ring falls after one settling time in one of the two stable states.

Reale Implementierungen einer BRPUF liefern ungünstigerweise oft unabhängig von der Challenge dieselbe Response. Im Idealfall ist eine Gleichverteilung der Responses gewünscht. Unfortunately, real implementations of a BRPUF often provide the same response regardless of the challenge. Ideally, an equal distribution of responses is desired.

Es ist aus der Dissertation "Attacking and Protecting Ring Oscillator Physical Unclonable Functions and Code-Offset Fuzzy Extract" von D. Merli, 2013 , bekannt, eine sogenannte Twisted Bistable Ring PUF zu verwenden. Dabei wird ein Challenge-Bit nicht mehr dazu verwendet, ein Pfadelement inaktiv und dafür ein anderes aktiv zu schalten, sondern einen Tausch zweier Pfadelemente innerhalb eines Rings vorzunehmen. Somit sind immer alle Pfadelemente im Ring enthalten und die Ringlänge bleibt konstant. Ein Pfadelement ändert lediglich die Position innerhalb des Rings. It's from the dissertation "Attacking and Protecting Ring Oscillator Physical Unclonable Functions and Code-Offset Fuzzy Extract" by D. Merli, 2013 , known to use a so-called twisted bistable ring PUF. In this case, a challenge bit is no longer used to deactivate one path element and to activate another, but to exchange two path elements within a ring. Thus, all path elements are always contained in the ring and the ring length remains constant. A path element only changes the position within the ring.

Es besteht ein Bedarf, für eine Schaltung mit PUF-Funktionalität möglichst viele Challenge-Response-Paare zur Verfügung zu stellen und gleichzeitig gleichverteilte Responses zu erhalten. There is a need to provide as many challenge-response pairs as possible for a circuit with PUF functionality and at the same time to receive equally distributed responses.

Diese Aufgabe wird durch die unabhängigen Ansprüche der vorliegenden Anmeldung gelöst. Vorteilhafte Ausgestaltungen sind in den abhängigen Ansprüchen angegeben. This object is solved by the independent claims of the present application. Advantageous embodiments are specified in the dependent claims.

Erfindungsgemäß wird eine Schaltung zum Erzeugen eines Identifizierers für die Schaltung bereitgestellt, mit
mindestens zwei Schaltstufen, die Schaltstufen umfassend jeweils mindestens zwei Schaltstufenelemente, wobei die mindestens zwei Schaltstufen derart ausgebildet sind, dass jeweilige Ausgangswerte an jeweiligen Ausgängen der mindestens zwei Schaltstufenelemente einer vorangehenden Schaltstufe jeweiligen Eingängen der mindestens zwei Schaltstufenelemente einer folgenden Schaltstufe alternativ zuführbar sind;
wobei durch eine einem jeweiligen Schaltstufenelement zuordenbare Permutationsvorschrift eine Zuordnung eines jeweiligen Eingangs des jeweiligen Schaltstufenelementes der folgenden Schaltstufe zu genau einem Ausgang eines Schaltstufenelementes der vorangehenden Schaltstufe festlegbar ist;
mit einer Schnittstelleneinheit zu einer Initialisierungseinheit, die Initialisierungseinheit geeignet zum Vorgeben eines festgelegten Wertes als Ausgangswert eines jeweiligen Ausgangs der Schaltstufenelemente der Schaltstufen, so dass die Schaltung während einer aktiven Phase der Initialisierungseinheit in einem instabilen Zustand haltbar ist;
wobei nach Beenden der aktiven Phase die Schaltung eingerichtet ist zum Einnehmen eines für die Schaltung charakteristischen Zustandes in Abhängigkeit von der Permutationsvorschrift;
mindestens eine Erfassungseinheit zum Erfassen mindestens eines Bits an mindestens einer Position innerhalb der Schaltung, wobei durch das Erfassen des mindestens einen Bits innerhalb der Schaltung im charakteristischen Zustand mit Hilfe des mindestens einen Bits der Identifizierer erzeugbar ist.
According to the invention, a circuit for generating an identifier for the circuit is provided, with
at least two switching stages, the switching stages each comprising at least two switching stage elements, wherein the respective output values at respective outputs of the at least two switching stage elements of a preceding switching stage are alternatively supplied to respective inputs of the at least two switching stage elements of a subsequent switching stage;
wherein a assignment of a respective input of the respective switching stage element of the following switching stage to exactly one output of a switching stage element of the preceding switching stage can be defined by a permutation rule that can be assigned to a respective switching stage element;
with an interface unit to an initialization unit, the initialization unit suitable for setting a fixed value as the output value of a respective output of the switching stage elements of the switching stages, so that the circuit is stable in an unstable state during an active phase of the initialization unit;
wherein after termination of the active phase, the circuit is arranged to assume a condition characteristic of the circuit as a function of the permutation rule;
at least one detection unit for detecting at least one bit at at least one position within the circuit, wherein the identifier can be generated by detecting the at least one bit within the circuit in the characteristic state with the aid of the at least one bit.

Die Schaltung fungiert als eine physikalisch unklonbare Funktion und liefert als ein Messergebnis mindestens ein Bit, aus welchem alleine oder in Verbindung mit anderen Messwerten ein Identifizierer der Schaltung erzeugt wird. Bei dem Identifizierer kann es sich insbesondere um ein Bitmuster handeln. Dieses Bitmuster ist charakteristisch und identifiziert ein spezifisches Exemplar der Schaltung eindeutig. Ein Nachbau oder eine Fälschung der Schaltung oder ein weiteres Exemplar der Schaltung liefert bei identischer Vermessung der Schaltung einen abweichenden Identifizierer. Bei der Schaltung handelt es sich beispielsweise um einen integrierten Schaltkreis, insbesondere einen digitalen Schaltkreis, einen FPGA oder einen ASIC. Insbesondere ist die Schaltung nur ein Abschnitt oder ein Teilbereich auf einem integrierten Schaltkreis oder FPGA oder ASIC. Beispielsweise weist nur dieser Abschnitt eine PUF-Funktionalität auf. Dieser Abschnitt wird dann für die Erzeugung des Identifizierers, beispielsweise für die Prüfung auf Identität einer vorliegenden Schaltung mit einer Originalschaltung, herangezogen. The circuit acts as a physically unclonable function and provides as a measurement result at least one bit from which alone or in conjunction with other measurement values an identifier of the circuit is generated. The identifier may in particular be a bit pattern. This bit pattern is characteristic and uniquely identifies a specific copy of the circuit. A replica or forgery of the circuit or another copy of the circuit will provide a different identifier if the circuit is mapped identically. The circuit is, for example, an integrated circuit, in particular a digital circuit, an FPGA or an ASIC. In particular, the circuit is only a portion or portion of an integrated circuit or FPGA or ASIC. For example, only this section has a PUF functionality. This section is then used for the generation of the identifier, for example for the verification of identity of a present circuit with an original circuit.

Ist beispielsweise ein Zugriff auf die Original-Schaltung nicht vorhanden, beispielsweise weil es sich bei einer vorliegenden und zu prüfenden Schaltung um ein anderes Gerät oder ein anderes Exemplar der Schaltung handelt, oder liegt ein veränderter, manipulierter oder nachgebauter Schaltkreis vor, so kann der Identifizierer mittels der physikalisch unklonbaren Funktion nicht ermittelt werden. For example, if an access to the original circuit does not exist, for example, because it is a different device or another copy of the circuit in an existing and to be tested circuit, or if there is a modified, manipulated or replicated circuit, the identifier can not be determined by the physically unclonable function.

Unter der Schaltstufe wird ein Block aus mindestens zwei Schaltstufenelementen verstanden. Die logische Gruppierung mehrerer Schaltstufenelemente zu dem Block entsteht dadurch, dass alle alternativen Schaltstufenelemente, denen ein jeweiliger Ausgangswert zuführbar ist, logisch zusammengefasst werden. Das heißt, dass ein potentiell in der Schaltung propagierender Signalwechsel ein Schaltstufenelement einer spezifischen Schaltstufe passiert und daraufhin der nächsten Schaltstufe zugeführt wird und ein kausal durch diesen Signalwechsel bedingtes Signal ein anderes Schaltstufenelement dieser spezifischen Schaltstufe oder dasselbe Schaltstufenelement erst nach einer Umlaufzeit durch alle vorhandenen Schaltstufen wieder passieren kann. The switching stage is understood to mean a block of at least two switching stage elements. The logical grouping of several switching stage elements to the block arises from the fact that all alternative switching stage elements to which a respective output value can be supplied are logically combined. This means that a signal propagation potentially propagating in the circuit passes through a switching stage element of a specific switching stage and is then fed to the next switching stage and a causally caused by this signal change signal another switching stage element of this specific switching stage or the same switching stage element only after a circulation time through all existing switching stages again can happen.

Unter einem Schaltstufenelement wird ein Funktionselement verstanden, welches eine Logikfunktion realisiert. Insbesondere handelt es sich um Inverter, welche die logische Negation eines Eingangssignals als Ausgangssignal ausgeben. Insbesondere werden digitale Schaltungselemente verwendet, um die gewünschte Logikfunktion zu realisieren. Auf reprogrammierbaren Digitalbausteinen, sogenannten Field Programmable Gate Arrays, kurz FPGAs, kann beispielsweise die Invertierungsfunktion besonders günstig durch sogenannte Look-Up-Tables, kurz LUTs, realisiert werden. LUTs können im Rahmen ihrer verfügbaren Eingangs- und Ausgangssignale beliebige Logikfunktionen realisieren, da in ihnen in Form einer Wertetabelle zu jeder möglichen Kombination von Eingangssignalen ein dazugehöriger Ausgangswert hinterlegt werden kann. Insbesondere handelt es sich bei den Schaltstufenelementen um Funktionselemente, welche über zwei Eingänge verfügen und in Abhängigkeit von einem fest an einem der Eingänge vorliegenden Eingangssignal für Signale an dem anderen Eingang als Inverter wirkt, beispielsweise NOR-Gatter. A switching stage element is understood to mean a functional element which implements a logic function. In particular, they are inverters which output the logical negation of an input signal as an output signal. In particular, digital circuit elements are used to realize the desired logic function. On reprogrammable digital components, so-called field programmable gate arrays, short FPGAs, for example, the inversion function can be particularly favorable by so-called look-up tables, short LUTs, realized. LUTs can realize arbitrary logic functions within the scope of their available input and output signals, since a corresponding output value can be stored in the form of a value table for each possible combination of input signals. In particular, the switching stage elements are functional elements which have two inputs and acts as an inverter, for example NOR gates, as a function of an input signal fixedly present on one of the inputs for signals at the other input.

Die Verschaltung zwischen zwei Schaltstufen ist derart vorgesehen, dass von mehreren Eingängen eines Schaltstufenelementes nur einer mit einem Ausgang eines Schaltstufenelementes der vorangehenden Schaltstufe verbunden ist. Bei Verwendung eines Multiplexers, der einem Schaltstufenelement vorgeschaltet wird, wird durch den Multiplexer eine von möglichen Verbindungen von Ausgängen vorheriger Schaltstufenelemente zu Eingängen nachfolgender Schaltstufenelemente gewählt. Gleichzeitig wird einem Schaltstufenelement nur ein Ausgang der vorherigen Schaltstufe zugeführt, so dass eine Verschaltung von Schaltstufenelementen der vorigen Schaltstufe zu Schaltstufenelementen der nachfolgenden Schaltstufe hinsichtlich der Zuordnung der jeweiligen Schaltstufenelemente zueinander permutiert wird. Dabei können zwei Zuordnungen oder mehr vertauscht werden, d.h. alle durch Permutation erreichbaren Kombinationen von Verschaltungen können angenommen werden. The interconnection between two switching stages is provided such that only one of a plurality of inputs of a switching stage element is connected to an output of a switching stage element of the preceding switching stage. When using a multiplexer, which is connected upstream of a switching stage element, by the multiplexer selected one of possible connections of outputs of previous switching stage elements to inputs of subsequent switching stage elements. At the same time, only one output of the previous switching stage is supplied to a switching stage element, so that an interconnection of switching stage elements of the previous switching stage to switching stage elements of the subsequent switching stage is permuted with respect to the assignment of the respective switching stage elements to one another. In this case, two assignments or more can be interchanged, ie all achievable by permutation combinations of interconnections can be accepted.

Die Permutationsvorschrift legt für jedes Schaltstufenelement einer Schaltstufe die Verschaltung mit den Ausgängen der Schaltstufenelemente der vorangehenden Schaltstufe fest. Beispielsweise werden Eingänge der jeweiligen Schaltstufenelemente durch die Permutationsvorschrift aktiv geschaltet und ein Ausgang eines Schaltstufenelementes einer vorherigen Stufe ist nur einem Schaltstufenelement der nachfolgenden Schaltstufe zuführbar. Insbesondere legt eine Permutationsvorschrift die Zuordnung für alle Schaltstufenelemente einer Schaltstufe gemeinsam fest. Je Schaltstufe werden bei der Wahl der Permutationsvorschrift alle für die Permutation vorgesehenen Schaltstufenelemente berücksichtigt. Somit wird eine doppelte Zuordnung von mehreren Ausgängen von Schaltstufenelementen vorheriger Schaltstufen zu einem Eingang eines Schaltstufenelementes vorteilhaft vermieden. In einer Variante können Schaltstufenelemente vorgesehen sein, die nicht über die Permutationsvorschrift konfiguriert werden, sondern unveränderbare Verbindungen zu vorherigen oder nachfolgenden Schaltstufen aufweisen. Die Anzahl an der Permutation beteiligter Schaltstufenelemente stimmt in benachbarten Schaltstufen überein. Die Permutationsvorschrift kann als eine Challenge zum Vermessen der als PUF wirkenden Schaltung aufgefasst werden. The permutation rule specifies the interconnection with the outputs of the shift stage elements of the preceding shift stage for each shift stage element of a shift stage. For example, inputs of the respective shift stage elements are actively switched by the permutation rule and an output of a shift stage element of a previous stage can be fed to only one shift stage element of the subsequent shift stage. In particular, a permutation rule determines the assignment for all switching stage elements of a switching stage together. For each switching stage, all switching stage elements provided for the permutation are taken into account when selecting the permutation rule. Thus, a double assignment of multiple outputs of switching stage elements of previous switching stages to an input of a switching stage element is advantageously avoided. In a variant, switching stage elements can be provided which are not configured via the permutation rule but have invariable connections to previous or subsequent switching stages. The number of switching stage elements involved in the permutation coincides in adjacent switching stages. The permutation rule can be understood as a challenge for measuring the circuit acting as a PUF.

Insbesondere ist für alle Schaltstufen der Schaltung eine jeweilige Permutationsvorschrift vorgesehen, so dass eine maximale Anzahl an unterschiedlichen Verschaltungen von Schaltstufenelementen der jeweiligen Schaltstufen zueinander möglich ist. In particular, a respective permutation rule is provided for all switching stages of the circuit, so that a maximum number of different interconnections of switching stage elements of the respective switching stages to each other is possible.

Um die Schaltung in einen instabilen Zustand zu versetzen, welcher unabhängig von einer Verschaltung der Schaltstufenelemente und unabhängig von einer herstellungsbedingten Ausprägung der verbauten Bauelemente Ausgangswerte der jeweiligen Ausgänge der Schaltstufenelemente fest vorgibt, ist eine Schnittstelleneinrichtung zu einer Initialisierungseinheit vorgesehen. Die Schnittstelleneinrichtung kann derart ausgestaltet sein, dass insbesondere für alle Schaltstufenelemente einer Schaltstufe und für jede der verbauten Schaltstufen ein Eingang vorgesehen ist, an welchem ein von der Initialisierungseinheit vorgebbarer Wert fest angelegt ist, so dass durch das Schaltstufenelement ein Wert unabhängig vom jeweils anderen Eingang, der das Ausgangssignal des vorgeschalteten Schaltungselementes empfängt, ausgegeben wird. Somit wird beispielsweise die invertierende Funktion der Schaltstufenelemente während der aktiven Phase der Initialisierungseinheit unterdrückt und es findet kein Signalwechsel aufgrund der implementierten Logikfunktion des Schaltstufenelementes statt. Sobald die aktive Phase beendet ist, d.h. sobald beispielsweise der von der Initialisierungseinheit angesteuerte Eingang eines Schaltstufenelementes derart belegt ist, dass das Schaltstufenelement eine Abbildung des Wertes am jeweils anderen Eingang unabhängig von dem von der Initialisierungseinheit belegten Eingang abbildet, verlässt die Schaltung den instabilen Zustand. Somit wird eine Reset-Funktionalität durch die Initialisierungseinheit eingebaut, welche unabhängig von einem bestehenden Zustand in der Schaltung die Schaltung kurzzeitig in einen instabilen Zustand versetzt und erst nach dem Beenden der aktiven Phase keinen Einfluss mehr auf den Zustand nimmt. Nach dem Verlassen des instabilen Zustandes können die Ausgangssignale der Schaltstufenelemente in der Schaltung eine gewisse Zeitdauer teilweise chaotisches oszillatorisches Verhalten zeigen, das schließlich endet, wenn durch die Schaltung ein stabiler Zustand eingenommen wird, welcher von der Permutationsvorschrift und ihren individuellen, exemplar-spezifischen Eigenschaften bestimmt wird. Die Schaltung kann ferner für eine vorgegebene Zeitspanne in einem nicht-stabilen Zustand verbleiben. Dann besteht der charakteristische Zustand darin, dass gerade keiner der beiden stabilen Zustände angenommen wird. Auch aus dieser Information ist ein Identifizierer ableitbar, beispielsweise indem mehrbittige Responses ausgewertet werden, die neben den zwei möglichen stabilen Zuständen auch den instabilen Zustand als charakteristischen Zustand erfassen. In order to put the circuit in an unstable state, which defines fixed output values of the respective outputs of the switching stage elements independently of an interconnection of the switching stage elements and independently of a production-related characteristic of the installed components, an interface device to an initialization unit is provided. The interface device can be configured in such a way that, in particular, an input is provided for all switching stage elements of a switching stage and for each of the built-in switching stages, to which a value predeterminable by the initialization unit is permanently applied, so that a value independent of the respective other input, by the switching stage element, which receives the output signal of the upstream circuit element is output. Thus, for example, the inverting function of the switching stage elements during the active phase of the initialization unit is suppressed and there is no signal change due to the implemented logic function of the switching stage element. Once the active phase is completed, i. For example, as soon as the input of a switching stage element triggered by the initialization unit is assigned such that the switching stage element maps an image of the value at the other input independently of the input occupied by the initialization unit, the circuit leaves the unstable state. Thus, a reset functionality is installed by the initialization unit, which, regardless of an existing state in the circuit, the circuit temporarily put in an unstable state and only after the termination of the active phase has no influence on the state. After leaving the unstable state, the output signals of the switching elements in the circuit may exhibit for some time partially chaotic oscillatory behavior, which eventually ends when the circuit assumes a stable state determined by the permutation regulation and its individual, copy-specific properties becomes. The circuit may also remain in a non-stable state for a predetermined period of time. Then the characteristic state is that neither of the two stable states is assumed. An identifier can also be derived from this information, for example by evaluating multi-bit responses which, in addition to the two possible stable states, also detect the unstable state as a characteristic state.

Durch die Permutationsvorschrift wird die Konfiguration der Schaltung bestimmt, d.h. die Position von Schaltstufenelementen innerhalb der Schaltung. Es wird dabei die Konfiguration der gesamten Schaltung bestimmt und es wird insbesondere festgelegt, welche Schaltstufenelemente sich innerhalb eines bistabilen Ringes und insbesondere eines gemeinsamen bistabilen Ringes befinden. Durch die Permutationsvorschrift ist somit gleichzeitig festgelegt, wie viele Ringe sich aus der Verschaltung der jeweiligen Schaltstufenelemente ergeben. Ferner wird durch die Permutationsvorschrift festgelegt, wie viele potentiell stabile Ringe gebildet werden. Beispielsweise wird ein bistabiler Ring gebildet, welcher alle Schaltungselemente aufweist. In einer anderen Variante werden zwei bistabile Ringe gebildet. Es ist ebenso möglich, dass durch die Permutationsvorschrift ein oder mehr bistabile Ringe gebildet werden sowie ein instabiler Ring, z.B. eine Schwingschaltung. The permutation rule determines the configuration of the circuit, ie, the position of switch elements within the circuit. In this case, the configuration of the entire circuit is determined and in particular it is determined which switching stage elements are located within a bistable ring and in particular a common bistable ring. The permutation rule thus simultaneously determines how many rings result from the interconnection of the respective shift stage elements. Furthermore, the permutation rule determines how many potentially stable rings are formed. For example, a bistable ring is formed, which has all the circuit elements. In another variant, two bistable rings are formed. It is also possible that one or more bistable rings are formed by the permutation rule and an unstable ring, eg a resonant circuit.

Die Schnittstelleneinrichtung besteht insbesondere aus einer Schnittstelle aller in der Schaltung befindlichen Schaltstufenelemente zu einer Initialisierungseinheit, welche für alle Schaltstufen einheitlich den Ausgangswert vorgibt. Eine Vorprägung durch einen Ausgangswert an einer Stelle innerhalb der Schaltung, der das Einnehmen einer der beiden bistabilen Zustände vorbestimmt, wird somit vermieden. The interface device consists in particular of an interface of all the switching stage elements located in the circuit to form an initialization unit which uniformly specifies the output value for all switching stages. Preprinting by an output value at a position within the circuit which predetermines the assumption of one of the two bistable states is thus avoided.

Liegt die Permutationsvorschrift vor, d.h. wurde eine Permutationsvorschrift ausgewählt und wurde die Permutationsvorschrift über Einheiten wie beispielsweise Multiplexer an die jeweiligen Schaltstufenelemente übermittelt, so dass die Zuordnung jeweils vorgenommen werden konnte, so kann über die Schnittstellenvorrichtung ein Initialisierungssignal, d.h. ein festgelegter Wert vorgegeben werden, der feste Ausgangswerte der Schaltstufenelemente vorgibt. Die Schaltung wird nun in einem instabilen Zustand gehalten, so dass zuvor angenommenen Werte innerhalb der Schaltung keinen Einfluss mehr auf den instabilen Zustand haben. Daraufhin wird die aktive Phase der Initialisierungseinheit beendet und in dem oder den mehreren bistabilen Ringschaltungen wird nun jeweils einer der bistabilen Zustände oder ein instabiler Zustand angenommen. If the permutation rule is present, i. If a permutation rule has been selected and if the permutation rule has been transmitted to the respective switching stage elements via units such as multiplexers, so that the assignment could be made in each case, an initialization signal, i. a predetermined value can be specified, which specifies fixed output values of the switching stage elements. The circuit is now kept in an unstable state, so that previously assumed values within the circuit no longer have any influence on the unstable state. Thereafter, the active phase of the initialization unit is terminated and in the one or more bistable ring circuits, one of the bistable states or an unstable state is assumed.

Der gewählte Zustand der Ringe ist charakteristisch für die Realisierung oder für das Exemplar der über die Permutationsvorschrift konfigurierten Schaltung und kann ausgelesen werden mit Hilfe einer Erfassungseinheit, welche an mindestens einer Position der Schaltung, beispielsweise in jedem bistabil geschlossenen Ring, vorgesehen ist. Die Erfassungseinheit erfasst ein Bit oder eine mehrbittiges Muster als Response auf die gewählte Permutationsvorschrift, d.h. die gewählte Challenge. Wird an einer Stelle innerhalb eines bistabil geschlossenen Ringes ein Bit erfasst, welches den logischen Wert an dieser Stelle registriert, so ist eindeutig bestimmt, welcher der beiden bistabilen Zustände angenommen wurde. Der Identifizierer kann nun beispielsweise aus einem ausgelesenen Bit gebildet werden, falls durch die Konfiguration ein einzelner Ring gebildet wurde. Eine mehrbittige Response zur Bestimmung eines der drei möglichen charakteristischen Zustände – stabil 0101 ... oder stabil 1010 ... oder instabil – geht analog in die Bildung des Identifizieres ein. Wurden mehrere Ringe gebildet, so können die Bits, die den Zustand in jedem der Ringe repräsentieren, zusammengefasst werden, um den Identifizierer zu erzeugen. Ein Bit aus einem kurzen gebildeten Ring kann insbesondere in die Erzeugung des Identifizieres eingehen, um ein Challenge-Response-Verhalten des kurzen Rings mit überschaubarem Challenge-Response-Raum zu verhindern. The selected state of the rings is characteristic of the realization or the copy of the circuit configured via the permutation rule and can be read out by means of a detection unit provided at at least one position of the circuit, for example in each bistable closed ring. The detection unit detects a bit or a multi-bit pattern in response to the selected permutation rule, i. the chosen challenge. If a bit is detected at a position within a bistable closed ring, which registers the logical value at this point, then it is uniquely determined which of the two bistable states was assumed. The identifier can now be formed, for example, from a read-out bit if a single ring has been formed by the configuration. A multi-bit response to determine one of the three possible characteristic states - stable 0101 ... or stable 1010 ... or unstable - is analogous to the formation of the identifier. If multiple rings have been formed, the bits representing the state in each of the rings may be combined to produce the identifier. In particular, a bit from a short formed ring may be included in the generation of the identifier to prevent challenge-response behavior of the short ring with manageable challenge-response space.

Durch die Permutationsvorschrift wird eine Vielzahl möglicher Verschaltungen zur Auswahl gestellt, welche zu einer Vielzahl unterschiedlicher Konfigurationen führt. Dabei unterscheiden sich die Konfigurationen sowohl durch die Anzahl gebildeter Ringe als auch die Gestalt der Ringe, d.h. die Position einzelner Schaltstufenelemente innerhalb der Schaltung. Die gewählte Permutationsvorschrift kann als Challenge angesehen werden, welche der Schaltung vorgegeben wird und aus welcher sich eine Konfiguration der Schaltung ergibt. Es steht somit ein sehr großer Challenge-Raum zur Verfügung, der durch die Anzahl möglicher Permutationen jeweiliger Schaltstufenelemente von jeweiligen Schaltstufen bestimmt ist. Für eine Anzahl L aufeinanderfolgender Schaltstufen mit jeweils einer Anzahl N unterschiedlicher Schaltstufenelemente ergibt sich eine Anzahl von N!L möglichen Konfigurationen. Der Identifizierer kann als Response angesehen werden. Für ein Exemplar einer Schaltung ist eine Response zu einer gegebenen Challenge nicht vorhersehbar, da das Annehmen von einem der beiden stabilen Zustände bedingt wird durch herstellungsbedingte Variationen der Hardware, welche weder reproduzierbar noch vom Hersteller vorhersehbar in eine Hardware eingehen. The permutation rule provides a multiplicity of possible interconnections, which leads to a multiplicity of different configurations. The configurations differ both in the number of rings formed and in the shape of the rings, ie the position of individual switching stage elements within the circuit. The chosen permutation rule can be regarded as a challenge, which is given to the circuit and from which results a configuration of the circuit. Thus, a very large challenge space is available, which is determined by the number of possible permutations of respective shift stage elements of respective shift stages. For a number L of successive switching stages, each with a number N of different switching stage elements results in a number of N! L possible configurations. The identifier can be considered a response. For a copy of a circuit, a response to a given challenge is unpredictable because assuming either of the two stable states is due to manufacturing variations of the hardware that are neither reproducible nor predictably hardware-in-one from the manufacturer.

Das Challenge-Response-Verhalten der Schaltung ist somit weder vorhersehbar noch reproduzierbar und der erzeugte Identifizierer ist somit in der Lage, über die Originalität einer Schaltung Auskunft zu geben. Wurde die Schaltung manipuliert, so kann auch dies über ein Challenge-Response-Verhalten erkannt werden, bei dem Responses zu gewählten Challenges nicht mit den Responses übereinstimmen, die von einem Hersteller oder von einer vertrauenswürdigen Instanz zu einem Zeitpunkt, zu dem gesichert noch keine Manipulation stattgefunden hat, übereinstimmen. The challenge-response behavior of the circuit is thus neither predictable nor reproducible, and the identifier generated is thus able to provide information about the originality of a circuit. If the circuit has been manipulated, this can also be detected via a challenge-response behavior in which responses to selected challenges do not match the responses made by a manufacturer or a trusted entity at a time when no manipulation has been secured has taken place.

Die Schaltung zeigt ein vorteilhaftes Response-Verhalten, welches eine übermäßige Tendenz zu einer fixen Response, unabhängig von der angelegten Challenge, vermeidet. Durch die starke Durchmischung der Signalpfade durch Wahl der Konfiguration mittels der Permutationsvorschrift und Variation der Ringlängen in Abhängigkeit von der Challenge entsteht eine größere Varianz der internen Schaltungsparameter, die für ein ausgeglichenes Response-Verhalten sorgt. Durch die große interne Komplexität werden sogenannte Machine Learning Angriffe auf die PUF, bei denen versucht wird, basierend auf einer bekannten Teilmenge von Challenge-Response-Paaren die Responses der PUF für beliebige andere Challenges vorherzusagen, erschwert. Der Aufwand an Schaltungsressourcen und damit die Kosten in der Implementierung sind dabei gering. The circuit exhibits an advantageous response behavior which avoids an excessive tendency for a fixed response, independent of the applied challenge. The strong mixing of the signal paths by choosing the configuration by means of the permutation rule and variation of the ring lengths as a function of the challenge results in a greater variance of the internal circuit parameters, which ensures a balanced response behavior. Due to the large internal complexity, so-called machine learning attacks on the PUF, which attempt to predict the responses of the PUF to any other challenges based on a known subset of challenge-response pairs, are made more difficult. The cost of circuit resources and thus the costs in the implementation are low.

Gemäß einer Ausgestaltung ist durch Zuführen jeweiliger Ausgänge von Schaltstufenelementen einer folgenden Schaltstufe an jeweilige Eingänge von Schaltstufenelementen einer vorangehenden Schaltstufe mindestens ein bistabil geschlossener Ring konstruierbar. D.h., dass die Schaltstufen zu einem Ring schließbar sind, wobei durch die Permutationsvorschrift festgelegt wird, welche Schaltstufenelemente an der Rückkopplungsstelle miteinander verschaltet werden. Die Zuordnung von Schaltstufenelementen zueinander erfolgt also an jeder Stelle innerhalb des Rings in analoger Weise. Durch das Zusammenwirken aller Permutationsvorschriften, d.h. aller Zuordnungen an den verbauten Schaltstufen wird das Verhalten der Schaltung im Hinblick auf die Anzahl der Ringe festgelegt. Erst wenn die Permutationsvorschrift an allen Schaltstufen, welche konfigurierbar ausgestaltet sind, feststeht und vorgegeben wird, ist die Konfiguration der gesamten Schaltung festgelegt. According to one embodiment, by supplying respective outputs of switching stage elements of a following switching stage to respective ones Inputs of switching stage elements of a preceding switching stage at least one bistable closed ring constructable. This means that the switching stages can be closed to form a ring, it being determined by the permutation rule which switching stage elements are interconnected at the feedback point. The assignment of switching stage elements to each other thus takes place at any point within the ring in an analogous manner. Through the interaction of all Permutationsvorschriften, ie all assignments to the built-shift levels, the behavior of the circuit is determined in terms of the number of rings. Only when the permutation rule at all switching stages, which are designed configurable, is fixed and specified, the configuration of the entire circuit is fixed.

Gemäß einer Ausgestaltung sind drei oder mehr Schaltstufen vorgesehen, deren jeweilige Schaltstufenelemente jeweils über die Permutationsvorschrift gemäß Anspruch 1 verschaltet werden, so dass mindestens ein bistabil geschlossener Ring konstruierbar ist. According to one embodiment, three or more switching stages are provided, the respective switching stage elements are interconnected in each case via the permutation rule according to claim 1, so that at least one bistable closed ring can be constructed.

Dabei ist sowohl die Gesamtanzahl der vorgesehenen Schaltstufen variabel, als auch die Anzahl der verschiedenen Schaltstufenelemente je Schaltstufe. Es können in der Schaltung neben den konfigurierbaren Schaltstufen auch Schaltstufen vorgesehen sein, welche nicht über eine Permutationsvorschrift hinsichtlich ihrer Verschaltung innerhalb der Schaltung veränderbar sind. Somit kann vorteilhaft abgewogen werden zwischen Aufwand durch zusätzliche Schaltungsressourcen und der Möglichkeit, die Konfiguration der Schaltung zu variieren. In this case, both the total number of switching stages provided is variable, as well as the number of different shift stage elements per shift stage. It can be provided in the circuit in addition to the configurable switching stages and switching stages, which are not changeable via a permutation with respect to their interconnection within the circuit. Thus, it may be advantageous to balance between the overhead of additional circuit resources and the ability to vary the configuration of the circuit.

Gemäß einer Ausgestaltung umfasst mindestens ein Schaltstufenelement mehrere Signalpfade, wobei einer der mehreren Signalpfade über eine Auswahlvorschrift aktivierbar ist. Für das Ableiten des Identifizierers wird dann neben der Challenge, die für ausgewählte Schaltstufen die Verschaltung der Schaltstufenelemente festlegt, auch eine weitere Challenge je Schaltstufenelement angelegt, die für jedes Schaltstufenelement mit mehreren Signalpfaden individuell einen der beiden oder mehrere Signalpfade auswählt zum Weiterleiten und Verarbeiten des Signals in der Schaltung. Somit kann zwischen noch mehr Varianten als mögliche Konfigurationen gewählt werden. Beide Challenges werden vorgegeben zum Festlegen der Konfiguration, woraufhin dann die aktive Phase der Initialisierungseinheit gestartet wird. Nach Beenden der aktiven Phase können dann die eine oder die mehreren Responses ausgewertet werden. According to one embodiment, at least one switching stage element comprises a plurality of signal paths, wherein one of the plurality of signal paths can be activated via a selection rule. For the derivation of the identifier is then next to the Challenge, which determines the interconnection of the switching stage elements for selected switching stages, also created another challenge per switching stage element that selects individually for each switching stage element with multiple signal paths one or both signal paths for forwarding and processing of the signal in the circuit. Thus, even more variants than possible configurations can be chosen. Both challenges are specified for setting the configuration, whereupon the active phase of the initialization unit is started. After completing the active phase, the one or more responses can then be evaluated.

Gemäß einer Ausgestaltung weist die Schaltung ferner eine jeweilige Erfassungseinheit in einem jeden von mittels der Permutationsvorschrift konstruierten bistabil geschlossenen Ringen zum Erfassen mindestens eines jeweiligen Bits auf, wobei aus mehreren Bits der jeweiligen Bits der Identifizierer ableitbar ist. Auf vorteilhafte Weise wird in jeder Spur eine jeweilige Erfassungseinheit vorgesehen, wobei die Anzahl der Spuren durch die Anzahl der Schaltstufenelemente je Schaltstufe definiert ist. Je nach Konfiguration wird nur ein Anteil der verbauten Erfassungseinheiten zum Erfassen mindestens eines jeweiligen Bits, d.h. eines jeweiligen charakteristischen Zustandes in einem Ring, benötigt. Die maximale Anzahl konstruierbarer Ringe ist durch die Anzahl an Spuren, d.h. an Schaltstufenelementen je Schaltstufe, vorgegeben. According to one embodiment, the circuit further comprises a respective detection unit in each of the bistable closed rings constructed by the permutation rule for detecting at least one respective bit, the identifier being derivable from a plurality of bits of the respective bits. Advantageously, a respective detection unit is provided in each track, wherein the number of tracks is defined by the number of shift stage elements per shift stage. Depending on the configuration, only a portion of the built-in detection units will be used to detect at least one particular bit, i. a respective characteristic state in a ring, needed. The maximum number of constructible rings is determined by the number of tracks, i. at switching stage elements per switching stage, specified.

Gemäß einer Ausgestaltung ist die Permutationsvorschrift als eine Challenge vorgebbar, welche für jedes Schaltstufenelement der Schaltstufe die Zuordnung festlegt. Die Challenge wird je Schaltstufe den Schaltstufenelementen vorgegeben, wobei für zwei aufeinanderfolgende über Challenges ansprechbare Schaltstufen die gleiche Anzahl an Schaltstufenelementen je Schaltstufe permutiert wird. Für ein weiteres Paar aufeinanderfolgender Schaltstufen kann eine abweichende Anzahl an Schaltstufenelementen je Schaltstufe über die Permutationsvorschrift verschaltet werden. Die Challenge ist insbesondere mehrbittig, d.h. umfasst mehr als ein Bit, und kann somit eine Information über den je Schaltstufenelement zu wählenden Eingang enthalten. According to one embodiment, the permutation rule can be specified as a challenge, which determines the assignment for each shift stage element of the shift stage. The challenge is specified for each shift stage the shift stage elements, wherein for two consecutive over Challenges responsive shift stages, the same number of shift stage elements per shift stage is permuted. For a further pair of successive switching stages, a different number of switching stage elements per switching stage can be interconnected via the permutation rule. The challenge is especially multi-bit, i. includes more than one bit, and thus may contain information about the input to be selected per switch stage element.

Gemäß einer Ausgestaltung stellt das mindestens eine Bit eine Response in Abhängigkeit von der Challenge dar und die Response ist charakteristisch für ein Exemplar der Schaltung. Je nach Anzahl der gebildeten Ringe besteht die Response in einer Information über den angenommenen charakteristischen Zustand eines jeden bistabil geschlossenen Ringes. Die Response kann insbesondere aus einer Verknüpfung der jeweils erfassten Bits gebildet werden und den Identifizierer für die Schaltung bilden. According to one embodiment, the at least one bit represents a response in response to the challenge, and the response is characteristic of a copy of the circuit. Depending on the number of rings formed, the response consists of information about the assumed characteristic state of each bistable closed ring. In particular, the response can be formed from a combination of the respectively detected bits and form the identifier for the circuit.

Gemäß einer Ausgestaltung ist die Response einbittig oder mehrbittig. Dabei kann für eine vorgegebene Challenge aus der dadurch gewählten Konfiguration bereits vorgegeben sein, wie viele Bits die Response umfasst. Die Auswertung eines in einem Ring erfassten Bits oder Bitmusters kann abhängig von der Challenge erfolgen. Wenn die Konfiguration der Spuren derart war, dass nur ein Ring entsteht, wird der Zustand einer bestimmten Stufe als ein-Bit-Response verwendet. Wenn mehrere Ringe entstehen, kann mit deren Responses genauso verfahren werden, wie wenn diese Responses getrennt realisierten PUF Schaltungen entnommen werden. Es können entsprechend der Anzahl der Ringe mehrere Bits als Response ausgegeben werden. Alternativ erfolgt eine Verknüpfung und Verarbeitung der Zustände zu einer gemeinsamen Response von einem oder mehr Bit, beispielsweise durch eine kombinatorische Schaltung. Der Identifizierer kann aus einer Response oder mehreren Responses gebildet werden. Je nachdem, wie Eindeutig oder Aussagekräftig das Vorliegen einer Response für eine Authentifizierung oder Schlüsselableitung ist, kann ein aus beliebig vielen der erfassbaren Responses zusammengesetzter Identifizierer gebildet werden. According to one embodiment, the response is unanimous or multi-bit. In this case, it can already be predetermined for a given challenge from the configuration selected thereby how many bits the response comprises. The evaluation of a bit or bit pattern detected in a ring can be done depending on the challenge. If the configuration of the tracks was such that only one ring is formed, the state of a particular stage is used as a one-bit response. If several rings arise, their responses can be handled in exactly the same way as when these responses are taken from separately implemented PUF circuits. Several bits can be output in response to the number of rings. Alternatively, a linking and processing of the states to a common response of one or more bits, for example by a combinatorial circuit. The identifier can be formed from one or more responses. Depending on how clear or meaningful the existence of a response for authentication or key derivation is, an identifier composed of any number of detectable responses can be formed.

Gemäß einer Ausgestaltung weist die Schaltung ferner eine Einheit zum Auswerten der Response hinsichtlich einer Stabilisierungseigenschaft auf. Es kann das zeitliche Verhalten des Stabilisierungsvorgangs in die Auswertung der aus verschiedenen Ringen erfassten Bits einfließen. Beispielsweise wird für jeden Ring zusätzlich zum erfassten Bit auch die benötigte Zeit vom Verlassen des Initialisierungszustandes oder Reset-Zustandes bis zum Erreichen des angenommenen stabilen Zustandes erfasst. Basierend auf dieser Information können ein oder mehrere Bits der einzelnen Ringe zur Ausgabe oder weiteren Verarbeitung ausgegeben werden, deren Stabilisierungszeit vorgegebene Bedingungen erfüllt. Insbesondere deutet eine lange Stabilisierungszeit darauf hin, dass die intrinsische Tendenz eines Ringes zu einem der beiden möglichen stabilen Endzustände nur gering ausgeprägt ist. Werden also beispielsweise immer die Responses zu unterschiedlichen Challenges ausgewählt, deren Stabilisierungszeiten am längsten waren, so ist zu erwarten, dass sich insgesamt eine eher ausgewogene Verteilung von 0-1-Responses ergibt. Dies ist vorteilhaft, wenn ein leichtes Erraten oder eine Vorhersagbarkeit einer Response vermieden werden soll. Gleichzeitig deutet ein schneller Stabilisierungsvorgang auf eine starke intrinsische Tendenz zu einem der stabilen Zustände hin, was erwarten lässt, dass auch bei veränderten Umgebungsbedingungen und unter Einfluss von physikalischem Rauschen, welches in realen Implementierungen unvermeidbar ist, die identische angelegte Challenge immer zur gleichen Response führt. Auch dies ist im Sinne der Verlässlichkeit und Fehlerfreiheit von Challenge Response Verfahren auf PUFs wünschenswert. Diese beiden Aspekte können berücksichtigt werden, um je nach Anforderung an die Response eine günstige Auswertung oder ein günstiges Auswahlkriterium für die Responses zu wählen. Die Einheit kann ferner vorteilhaft verwendet werden, um eine Zeitspanne festzulegen, innerhalb derer ein Zustand in einem bistabilen Ring angenommenen werden muss, damit er als stabiler Zustand erkannt wird. Wird die Zeitspanne überschritten und ist kein stabiler Zustand eingenommen worden, so gilt der charakteristische Zustand als instabil. According to one embodiment, the circuit further comprises a unit for evaluating the response regarding a stabilization property. It can incorporate the temporal behavior of the stabilization process in the evaluation of the detected from different rings bits. For example, for each ring in addition to the detected bit and the required time from the exit of the initialization state or reset state is detected until reaching the assumed stable state. Based on this information, one or more bits of the individual rings may be output for output or further processing, the stabilization time of which satisfies predetermined conditions. In particular, a long stabilization time indicates that the intrinsic tendency of a ring to one of the two possible stable end states is only slightly pronounced. So, for example, if you always choose the responses to different challenges whose stabilization times were the longest, you can expect that overall there will be a more balanced distribution of 0-1 responses. This is advantageous if easy guessing or predictability of a response is to be avoided. At the same time, a fast stabilization process points to a strong intrinsic tendency to one of the stable states, which suggests that even under changing environmental conditions and under the influence of physical noise, which is unavoidable in real implementations, the identical applied challenge always leads to the same response. Again, this is desirable in terms of reliability and accuracy of Challenge Response methods on PUFs. These two aspects can be taken into account in order to select a favorable evaluation or a favorable selection criterion for the responses, depending on the requirement for the response. The unit may also be advantageously used to establish a period of time within which a condition in a bistable ring must be assumed to be recognized as a stable condition. If the time span is exceeded and no stable state has been assumed, the characteristic state is considered to be unstable.

Gemäß einer Ausgestaltung weist die Einheit eine Zeiterfassungseinheit, insbesondere einen Zähler, auf und/oder eine Auswahleinheit zum Auswählen von Responses und zum Weiterleiten an eine Ausgabeeinheit. So kann die Stabilisierungseigenschaft technisch derart ermittelt werden, dass ein Zähler in einem Ring die Perioden eines Taktsignales zählt. Somit wird erfasst, wie lange ein jeweiliger durch die Konfiguration gebildeter Ring benötigt, bis er einen stabilen Zustand einnimmt, oder ob er einen stabilen Zustand einnimmt. Der Auswahleinheit können dabei Schwellenwerte vorgegeben werden, welche angeben, für welches Intervall einer benötigten Stabilisierungszeit ein erfasstes Bit in einem Ring als Response ausgewählt werden soll. Beispielsweise wird die ausgewählte Response direkt als Identifizierer einer Ausgabeeinheit bereitgestellt. Alternativ werden mehrere Responses an die Ausgabeeinheit weitergeleitet und dort direkt oder nach dem Anwenden einer Verknüpfungsfunktion einbittig oder mehrbittig ausgegeben. According to one embodiment, the unit has a time recording unit, in particular a counter, and / or a selection unit for selecting responses and for forwarding to an output unit. Thus, the stabilization property can be technically determined such that a counter in a ring counts the periods of a clock signal. Thus, it is detected how long a respective ring formed by the configuration takes until it assumes a steady state or assumes a steady state. In this case, threshold values can be specified for the selection unit, which specify for which interval of a required stabilization time a detected bit in a ring should be selected as the response. For example, the selected response is provided directly as an identifier of an output device. Alternatively, multiple responses are forwarded to the output unit and output there, either one-bit or multi-bit, directly or after applying a shortcut function.

Gemäß einer Ausgestaltung weist die Schaltung ferner eine Auswerteschaltung zum Detektieren des charakteristischen Zustandes auf, die Auswerteschaltung geeignet zum Erfassen eines zeitlich stabilen alternierenden Musters entlang der Stufenschaltungen. Die Auswerteschaltung vollzieht insbesondere Überkreuzungen der Spur nach und rekonstruiert den Signalverlauf entlang der Ringe. Tritt ein zeitlich stabiles alternierendes Muster der Zustände 0 und 1 entlang der Stufenschaltungen innerhalb einer Spur, d.h. zu einem Ring gehörig, auf, so ist der Stabilisierungsvorgang abgeschlossen, der Ring hat einen stabilen Zustand eingenommen und eine Response kann ausgewertet werden. So kann vorteilhaft die minimal benötigte Zeit bestimmt werden, die zum Erzeugen des Identifizierers nötig ist, ohne eine unnötig lange Wartezeit abwarten zu müssen. Die Auswerteschaltung kann ferner eine Zeitspanne fest vorgeben, innerhalb derer das Einnehmen eines stabilen Zustandes erwartet wird. Ist bis dahin kein stabiler Zustand angenommen worden, so wird der charakteristische Zustand als instabil erfasst. According to one embodiment, the circuit further comprises an evaluation circuit for detecting the characteristic state, the evaluation circuit suitable for detecting a temporally stable alternating pattern along the step circuits. The evaluation circuit in particular carries out cross-over of the track and reconstructs the signal course along the rings. If a time stable alternating pattern of states 0 and 1 occurs along the tap circuits within one track, i. belonging to a ring, so the stabilization process is completed, the ring has taken a stable state and a response can be evaluated. Thus, advantageously, the minimum time required to generate the identifier may be determined without having to wait an unnecessarily long time. The evaluation circuit may further specify a period of time within which the assumption of a stable state is expected. If no stable state has been assumed until then, the characteristic state is detected as unstable.

Die Erfindung betrifft ferner ein Verfahren zum Erzeugen eines Identifizierers für eine Schaltung mit mindestens zwei Schaltstufen, die Schaltstufen umfassend jeweils mindestens zwei Schaltstufenelemente,

  • – wobei jeweilige Ausgangswerte an jeweiligen Ausgängen der mindestens zwei Schaltstufenelementen einer vorangehenden Schaltstufe jeweiligen Eingängen der mindestens zwei Schaltstufenelemente einer folgenden Schaltstufe alternativ zugeführt werden;
  • – wobei durch eine einem jeweiligen Schaltstufenelement zuordenbare Permutationsvorschrift eine Zuordnung eines jeweiligen Eingangs des jeweiligen Schaltstufenelementes der folgenden Schaltstufe zu genau einem Ausgang eines Schaltstufenelementes der vorangehenden Schaltstufe festgelegt wird;
  • – wobei mittels einer Initialisierungseinheit ein festgelegter Wert als Ausgangswert eines jeweiligen Ausganges der Schaltstufenelemente der Schaltstufen vorgegeben wird, so dass die Schaltung während einer aktiven Phase der Initialisierungseinheit in einem instabilen Zustand gehalten wird;
  • – wobei nach Beenden der aktiven Phase die Schaltung einen für die Schaltung charakteristischen Zustand einnimmt in Abhängigkeit von der Permutationsvorschrift und mittels einer Erfassungseinheit mindestens eines Bits an mindestens einer Position innerhalb der Schaltung im charakteristischen Zustand erfasst wird zum Erzeugen des Identifizierers.
The invention further relates to a method for generating an identifier for a circuit having at least two switching stages, the switching stages each comprising at least two switching stage elements,
  • Wherein respective output values at respective outputs of the at least two switching stage elements of a preceding switching stage are alternatively supplied to respective inputs of the at least two switching stage elements of a subsequent switching stage;
  • - An assignment of a respective input of the respective switching stage element of the following switching stage to exactly one output of a switching stage element of the preceding switching stage is determined by a respective switching stage element assignable Permutationsvorschrift;
  • - By means of an initialization unit, a predetermined value as the output value of respective output of the switching stage elements of the switching stages is set, so that the circuit is kept in an unstable state during an active phase of the initialization unit;
  • - After completion of the active phase, the circuit occupies a characteristic state for the circuit in response to the Permutationsvorschrift and is detected by means of a detection unit of at least one bit at least one position within the circuit in the characteristic state for generating the identifier.

Die Erfindung betrifft ferner ein Verfahren zum Erzeugen eines Identifizierers für eine Schaltung mit den Schritten:

  • – Bereitstellen einer Schaltung mit mindestens zwei Schaltstufen, die Schaltstufen umfassend jeweils mindestens zwei Schaltstufenelemente, wobei die mindestens zwei Schaltstufen derart ausgebildet sind, dass jeweilige Ausgangswerte an jeweiligen Ausgängen der mindestens zwei Schaltstufenelemente einer vorangehenden Schaltstufe jeweiligen Eingängen der mindestens zwei Schaltstufenelemente einer folgenden Schaltstufe alternativ zuführbar sind;
  • – Anlegen einer Challenge mittels einer Permutationsvorschrift, wobei durch die Permutationsvorschrift eine Verschaltung eines jeweiligen Eingangs des jeweiligen Schaltstufenelementes der folgenden Schaltstufe zu genau einem Ausgang eines Schaltstufenelementes der vorangehenden Schaltstufe festgelegt wird;
  • – Vorgeben eines festgelegten Wertes als Ausgangswert eines jeweiligen Ausganges der Schaltstufenelemente der Schaltstufen zum Halten eines instabilen Zustandes der Schaltung während einer aktiven Phase;
  • – Erfassen einer Response nach Beenden der aktiven Phase, wobei die Response aus mindestens einem an mindestens einer Position der Schaltung in einem charakteristischen Zustand der Schaltung abgegriffenen Bit gebildet wird und abhängig von der Challenge ist sowie charakteristisch für ein Exemplar der Schaltung.
The invention further relates to a method for generating an identifier for a circuit comprising the steps:
  • - Providing a circuit having at least two switching stages, the switching stages comprising at least two switching stage elements, wherein the at least two switching stages are formed such that respective output values at respective outputs of the at least two switching stage elements of a preceding switching stage respective inputs of the at least two switching stage elements of a subsequent switching stage fed alternatively are;
  • - Creating a challenge by means of a permutation rule, wherein the interconnection of a respective input of the respective switching stage element of the following switching stage is set to exactly one output of a switching stage element of the preceding switching stage by the permutation rule;
  • - Specifying a predetermined value as the output value of a respective output of the switching stage elements of the switching stages for maintaining an unstable state of the circuit during an active phase;
  • Detecting a response after termination of the active phase, wherein the response is formed from at least one bit tapped at at least one position of the circuit in a characteristic state of the circuit and is dependent on the challenge and characteristic for a copy of the circuit.

Die Erfindung betrifft ferner ein Computerprogrammprodukt mit einem Computerprogramm, das Mittel zur Durchführung des Verfahrens nach einem der vorhergehenden Ansprüche aufweist, wenn das Computerprogramm auf einer programmgesteuerten Einrichtung zur Ausführung gebracht wird. The invention further relates to a computer program product with a computer program having means for carrying out the method according to one of the preceding claims, when the computer program is executed on a program-controlled device.

Die Erfindung wird nachfolgend anhand von Ausführungsbeispielen mit Hilfe der Figuren näher erläutert. Es zeigen: The invention will be explained in more detail by means of embodiments with the aid of the figures. Show it:

1 eine schematische Darstellung einer Schaltung zum Erzeugen eines Identifizierers für die Schaltung gemäß einem ersten Ausführungsbeispiel der Erfindung; 1 a schematic representation of a circuit for generating an identifier for the circuit according to a first embodiment of the invention;

2 eine schematische Darstellung einer Schaltung zum Erzeugen eines Identifizierers für die Schaltung gemäß einem zweiten Ausführungsbeispiel der Erfindung; 2 a schematic representation of a circuit for generating an identifier for the circuit according to a second embodiment of the invention;

3 eine schematische Darstellung einer Schaltung zum Erzeugen eines Identifizierers für die Schaltung gemäß einem dritten Ausführungsbeispiel der Erfindung; 3 a schematic representation of a circuit for generating an identifier for the circuit according to a third embodiment of the invention;

4 eine schematische Darstellung einer Schaltstufe einer Schaltung gemäß einem vierten Ausführungsbeispiel der Erfindung. 4 a schematic representation of a switching stage of a circuit according to a fourth embodiment of the invention.

In 1 ist eine Schaltung 1 dargestellt, welche beispielsweise ein digitaler integrierter Schaltkreis ist, mit vier Schaltstufen 10, 20, 30, 40, wobei jede der vier Schaltstufen 10, 20, 30, 40 jeweils aus zwei Schaltstufenelementen 100, 101, 200, 201, 300, 301, 400, 401 besteht. In 1 is a circuit 1 which is, for example, a digital integrated circuit with four switching stages 10 . 20 . 30 . 40 , wherein each of the four shift stages 10 . 20 . 30 . 40 each of two shift stage elements 100 . 101 . 200 . 201 . 300 . 301 . 400 . 401 consists.

Jeder Ausgang der Schaltstufenelemente 100, 101 einer vorangehenden Schaltstufe 10 wird alternativ einem jeweiligen Eingang aller Schaltstufenelemente 200, 201 der nachfolgenden Schaltstufe 20 zugeführt. Die Schaltung ist derart ausgebildet, dass für zwei Schaltstufenelemente in einer Schaltstufe alle Verschaltungen möglich sind, d.h. sowohl eine Verbindung zwischen einem ersten Schaltstufenelement 100 der vorangehenden Schaltstufe 10 mit dem ersten Schaltstufenelement 200 der nachfolgenden Schaltstufe 20 als auch mit dem zweiten Schaltstufenelement 201 der nachfolgenden Schaltstufe 20. Ein jeweiliges Schaltstufenelement kann immer nur über einen Eingang mit einem Ausgang eines vorherigen Schaltstufenelementes verbunden werden. Es sind in Figur alle möglichen alternativen Kombinationen dargestellt. Each output of the switching stage elements 100 . 101 a preceding shift stage 10 is alternatively a respective input of all switching stage elements 200 . 201 the subsequent switching stage 20 fed. The circuit is designed such that all interconnections are possible for two shift stage elements in one shift stage, ie both a connection between a first shift stage element 100 the previous switching stage 10 with the first shift stage element 200 the subsequent switching stage 20 as well as with the second shift stage element 201 the subsequent switching stage 20 , A respective shift stage element can always be connected via only one input to an output of a previous shift stage element. All possible alternative combinations are shown in FIG.

Schematisch ist ferner dargestellt, wie für jede Schaltstufe 10, 20, 30, 40 eine jeweilige Challenge C10, C20, C30, C40 angelegt wird. Eine der Challenges C10, C20, C30, C40 beinhaltet als Information die Permutationsvorschrift, welche für dieses Ausführungsbeispiel insbesondere einbittig sein kann und für beide Schaltstufenelemente einer Schaltstufe gemeinsam für die Schaltstufe, an der die jeweilige Challenge anliegt, einen zu wählenden Eingang vorgibt. Die beiden kombinatorischen Möglichkeiten, die beiden Schaltstufenelemente der zwei benachbarten Schaltstufen zu verbinden, sind über die Challenge vorgebbar. Das Vorgeben der Challenge kann insbesondere für alle Schaltstufen 10, 20, 30, 40 analog erfolgen. An mindestens einer Stelle innerhalb der Schaltung ist eine Erfassungseinheit E vorgesehen, welche einen logischen Zustandswert an dieser Stelle der Schaltung erfasst. Trotz der linearen Auftragung der Schaltstufen sind alle abgebildeten Schaltstufen innerhalb der Schaltung 1 gleichwertig. Entsprechend kann auch die Erfassungseinheit E zwischen allen gezeigten Schaltstufen und in allen Spuren sinnvoll verbaut werden. Schematically is also shown as for each switching stage 10 . 20 . 30 . 40 a respective challenge C10, C20, C30, C40 is created. One of the Challenges C10, C20, C30, C40 contains as information the permutation rule, which can be particularly unanimous for this embodiment and for both switching stage elements of a switching stage together for the switching stage at which the respective challenge is applied, specifies an input to be selected. The two combinatorial ways of connecting the two switching stage elements of the two adjacent switching stages can be specified via the challenge. Specifying the challenge can in particular for all switching stages 10 . 20 . 30 . 40 carried out analogously. At least one point within the circuit, a detection unit E is provided, which detects a logical state value at this point of the circuit. Despite the linear Application of the switching stages are all illustrated switching stages within the circuit 1 equivalent. Accordingly, the detection unit E between all switching stages shown and can be installed in all tracks meaningful.

Eine Spur innerhalb der Schaltung wird durch eine Aneinanderreihung von Schaltstufenelementen jeweils aufeinanderfolgender Schaltstufen gebildet. Beispielsweise werden zwei parallele Spuren gebildet, falls alle Challenges C10, C20, C30, C40 jeweils vorgeben, den in der Zeichnung veranschaulichten oberen Eingang zu wählen. Somit bilden alle in der oberen Reihe abgebildeten Schaltstufenelemente der Schaltstufe und jeweils alle unteren Schaltstufenelemente jeweils eine Spur. Die Bezeichnung einer Verschaltung als Spur oder als Signalverlauf innerhalb einer Spur ist willkürlich, kann aber beispielsweise derart sinnvoll gewählt werden, dass kürzeste Signalpfade ausgewählt werden, um eine Spur zu kennzeichnen. A track within the circuit is formed by a juxtaposition of shift stage elements of respective successive shift stages. For example, if all challenges C10, C20, C30, C40 respectively specify to select the upper input illustrated in the drawing, two parallel tracks are formed. Thus, all the shift stage elements of the shift stage depicted in the upper row and in each case all the lower shift stage elements each form one track. The designation of an interconnection as a track or as a signal course within a track is arbitrary, but can be chosen so meaningful, for example, that the shortest signal paths are selected to mark a track.

Die Erfassungseinheit E überprüft, ob ein stabiler Zustand der Schaltung angenommen wurde, insbesondere dadurch, dass für eine ausreichend lange Zeit unverändert ein logischer Wert an der Erfassungseinheit vorliegt, und gibt diesen logischen Wert als Response aus. Aus der Response ist der Identifizierer I erzeugbar. Werden durch die Challenge zwei bistabile Ringe gebildet, so wird in beiden Spuren durch die Erfassungseinheit, an gleicher oder unterschiedlicher logischer Stelle innerhalb der Schaltung, die jeweilige Response erzeugt. Wurde die Challenge gewählt, d.h. die Konfiguration der Schaltung 1 vorgenommen, so wird die Schaltung 1 zunächst in einen instabilen Zustand versetzt. The detection unit E checks whether a stable state of the circuit has been assumed, in particular by maintaining a logical value unchanged on the detection unit for a sufficiently long time, and outputs this logical value as a response. The identifier I can be generated from the response. If two bistable rings are formed by the challenge, the respective response is generated in both tracks by the detection unit, at the same or different logical location within the circuit. Has the challenge been selected, ie the configuration of the circuit 1 made, so will the circuit 1 initially put in an unstable state.

Das Vorsehen einer Initialisierungseinheit zum Halten des instabilen Zustandes ist in 2 gezeigt. The provision of an initialization unit for holding the unstable state is in 2 shown.

In allen Figuren sind funktionsgleiche Elemente mit denselben Bezugszeichen versehen, sofern nichts anderes angegeben ist. In all figures, functionally identical elements are provided with the same reference numerals, unless stated otherwise.

2 zeigt schematisch, wie eine Schnittstelleneinrichtung mit einer Initialisierungseinheit R mit Schnittstellen zu allen Schaltstufenelementen aller Schaltstufen vorgesehen ist. Bei den Schaltstufenelementen handelt es sich beispielsweise um NOR-Gatter bzw. um Nachschlagetabellen oder sogenannte Look-Up-Tables, welche die Logikfunktion eines NOR-Gatters in Software realisieren. 2 schematically shows how an interface device is provided with an initialization unit R with interfaces to all the switching stage elements of all switching stages. The switching stage elements are, for example, NOR gates or look-up tables or so-called look-up tables, which implement the logic function of a NOR gate in software.

Zum Festlegen der Konfiguration über jeweilige Permutationsvorschriften an den Schaltstufen wurden drei Challenges gewählt. Insbesondere wird die erste Challenge C10 der ersten Schaltstufe 10, die zweite Challenge C20 der zweiten Schaltstufe 20 sowie die vierte Challenge C40 der vierten Schaltstufe 40 derart gewählt, dass durch die Verschaltung kein Spurwechsel durchgeführt wird. Die dritte Challenge C30, welche an der dritten Schaltstufe 30 anliegt, wurde dagegen so gewählt, dass eine Permutation zwischen der zweiten Schaltstufe 20 und der dritten Schaltstufe 30 auftritt. Ein Signal am Ausgang des Schaltstufenelementes 201 der oberen Spur wird demgemäß dem Eingang des Schaltstufenelementes 300 der unteren Spur zugeführt. Diese Zuordnung bewirkt, dass ein langer Ring der Länge 2 × 4, also 8, entsteht und dass alle Schaltstufenelemente der Schaltung innerhalb dieses Ringes miteinander verschaltet sind. To set the configuration via respective permutation rules at the switching stages three challenges were chosen. In particular, the first challenge C10 becomes the first shift stage 10 , the second Challenge C20 of the second shift stage 20 and the fourth Challenge C40 of the fourth shift stage 40 chosen such that no lane change is performed by the interconnection. The third Challenge C30, which at the third shift stage 30 is applied, however, was chosen so that a permutation between the second switching stage 20 and the third switching stage 30 occurs. A signal at the output of the switching stage element 201 the upper track is accordingly the input of the switching stage element 300 fed to the lower track. This assignment causes a long ring of length 2 × 4, ie 8, arises and that all switching stage elements of the circuit are interconnected within this ring.

Der Übersichtlichkeit halber sind in 2 nur noch die aktivierten Verschaltungen, also die über die Challenges ausgewählten Verbindungen, abgebildet. For the sake of clarity, in 2 only the activated interconnections, ie the connections selected via the challenges, are displayed.

Für die Initialisierung der Schaltung 1 wird an jedem Schnittstelleneingang jedes Schaltstufenelementes zu der Initialisierungseinheit R beispielsweise der Wert 1 oder logisch HIGH fest vorgegeben, so dass unabhängig vom logischen Wert, der am über die Permutationsvorschrift ausgewählten Eingang eines Schaltstufenelementes vorliegt, immer eine logische 0 oder logisch LOW am Ausgang eines jeden Schaltstufenelementes anliegt. Das Einnehmen des logischen Wertes 0 wird somit durch die Initialisierungseinheit an jeder Stelle der Schaltung 1, d.h. zwischen allen Schaltstufen und in allen Spuren oder Ringen erzwungen. For the initialization of the circuit 1 At each interface input of each switching stage element to the initialization unit R, for example, the value 1 or logical HIGH is fixed, so that regardless of the logical value, which is present at the input of a switching stage element selected via the permutation rule, there will always be a logic 0 or a logic LOW at the output of each switching stage element is applied. The assumption of the logical value 0 thus becomes by the initialization unit at each point of the circuit 1 ie forced between all switching stages and in all tracks or rings.

Zum Ableiten der Response, die zu der über die Permutationsvorschrift angelegten Challenge gehörig ist, wird der Schnittstelleneingang eines jeden Schaltstufenelementes zur Initialisierungseinheit R auf den Wert logisch 0 gesetzt. Nun wirken die Schaltstufenelemente jeweils als Inverter und liefern an ihrem jeweiligen Ausgang die logische Negation des am über die Permutationsvorschrift gewählten Eingang anliegenden logischen Wertes. To derive the response associated with the challenge applied via the permutation rule, the interface input of each switching stage element to the initialization unit R is set to the logical 0 value. The switching stage elements now each act as inverters and deliver at their respective outputs the logical negation of the logical value applied to the input selected via the permutation rule.

Nach Beenden der aktiven Phase der Initialisierungseinheit, in der ein instabiler Zustand an allen Positionen innerhalb der Schaltung angenommen wird, schalten nun alle Schaltstufenelemente entsprechend ihrer logisch negierenden Funktionalität, und zwar theoretisch gleichzeitig. Durch herstellungsbedingte Unterschiede ab der Durchlaufzeit der einzelnen Schaltstufenelemente oder durch zeitliche Variationen und Verzögerungen bei der Umsetzung der logischen Funktion mittels verbauter Look-Up-Tables stellt sich einer der bistabilen Zustände innerhalb des Ringes ein, welcher von der für die Hardware der Schaltung 1 charakteristischen Tendenz hin zu einer Bitmusterausprägung 0101 oder 1010 usw. abhängt. Für die Erfassung des Bitmusters in zeitlich hintereinander durchgeführten Messungen sollte eine identische Position zwischen zwei Invertern gewählt werden, um die Vergleichbarkeit sicherzustellen. Alternativ kann eine identische logische Position sinnvoll sein, d.h. zum Beispiel eine im Vergleich zur ursprünglichen Position um zwei Inverter versetzte Position, so dass das Bitmuster aufgrund der zwei dazwischenliegenden Negationen wieder gleich erscheint. After completion of the active phase of the initialization unit, in which an unstable state is assumed at all positions within the circuit, now all switching stage elements switch according to their logically negating functionality, theoretically at the same time. Due to production-related differences from the cycle time of the individual switching stage elements or by temporal variations and delays in the implementation of the logical function using built-look-up tables, one of the bistable states within the ring, which depends on the hardware for the circuit 1 characteristic trend towards a bit pattern characteristic 0101 or 1010 and so on. For the detection of the bit pattern in successive measurements, an identical position between two inverters should be chosen for comparability sure. Alternatively, an identical logical position may be useful, ie, for example, a position offset by two inverters compared to the original position, so that the bit pattern appears equal again due to the two intervening negations.

In 3 ist schematisch dargestellt, wie bei Veränderung einer anliegenden Challenge sich die Anzahl der gebildeten Ringe verändern kann. In diesem dritten Ausführungsbeispiel findet sowohl zwischen der ersten Schaltstufe 10 und der zweiten Schaltstufe 20 als auch zwischen der dritten Schaltstufe 30 und der vierten Schaltstufe 40 eine Permutation der Spuren statt. Nun überkreuzen sich die Spuren an zwei Stellen, so dass der Effekt des Spurenwechsels nach der geradzahligen Anzahl an Permutationen, nämlich zwei Permutationen, wieder aufgehoben ist. Somit wird ein Signal am Ausgang der vierten Schaltstufe 40 an den Eingang desjenigen Schaltstufenelementes potentiell rückgekoppelt, von dem das Signal aus einem vorherigen Durchlauf bereits gestartet ist. Es bilden sich im Hinblick auf einen Signalverlauf zwei Ringe, welche jeweils eine geradzahlige Anzahl an Schaltstufen aufweisen. In jedem Ring sind vier Schaltstufenelemente enthalten, welche allerdings aus unterschiedlichen Spuren stammen. Entsprechend kann durch Anlegen einer logisch negierten Challenge ebenfalls erreicht werden, dass zwei bistabil geschlossene Ringe existieren, wobei gerade jedem Schaltstufenelement im Vergleich zur vorherigen Konfiguration das jeweils andere Schaltstufenelement der benachbarten Schaltstufe zugeführt wird. Somit kann durch Anlegen verschiedener Challenges die Zugehörigkeit von Schaltstufenelementen zu Spuren oder Ringen und damit der Einfluss einzelner Schaltstufenelemente in diesen Ringen verändert werden. Eindeutige Tendenzen, welche das Einnehmen eines der möglichen stabilen Zustände antreiben, werden durch das Permutieren an unterschiedlichen Positionen innerhalb der Schaltung, also beispielsweise in unterschiedlichen Ringen, unterdrückt. In 3 is shown schematically, how can change the number of rings formed when changing an adjacent Challenge. In this third embodiment takes place both between the first switching stage 10 and the second switching stage 20 as well as between the third switching stage 30 and the fourth shift stage 40 a permutation of the tracks instead. Now the tracks intersect in two places, so that the effect of the track change after the even number of permutations, namely two permutations, is canceled again. Thus, a signal at the output of the fourth switching stage 40 is potentially fed back to the input of that switching stage element from which the signal from a previous pass has already been started. With regard to a signal curve, two rings are formed, each of which has an even number of switching stages. In each ring four shift stage elements are included, which, however, come from different tracks. Accordingly, by applying a logically negated challenge, it can also be achieved that two bistable closed rings exist, with just each switching stage element being supplied with the respective other switching stage element of the adjacent switching stage in comparison to the previous configuration. Thus, by applying various challenges, the membership of shift stage elements to tracks or rings and thus the influence of individual shift stage elements in these rings can be changed. Unique tendencies, which drive the taking of one of the possible stable states, are suppressed by permuting at different positions within the circuit, for example in different rings.

Aus Gründen der Übersichtlichkeit wurde hier auf das Einzeichnen der Initialisierungseinheit mit den jeweiligen Schnittstellen verzichtet. For reasons of clarity, the drawing in of the initialization unit with the respective interfaces was omitted here.

4 zeigt schematisch, wie gemäß einem vierten Ausführungsbeispiel der Erfindung innerhalb eines Schaltstufenelementes nochmals mehrere Signalpfade vorgesehen sein können, wobei über eine weitere Challenge je Schaltstufenelement vorgegeben wird, welcher der beiden oder mehreren Signalpfade aktiv geschaltet wird. Für ein Schaltstufenelement 100 der ersten Schaltstufe 10 ist beispielsweise gezeigt, wie zwei NOR-Gatter oder zwei Look-Up-Tables mit NOR-Funktionalität parallel zueinander verbaut sind und eine weitere oder innere Challenge C100 eine Auswahlvorschrift vorgibt zum Auswählen der Signalpfade. Analog kann in einem weiteren Schaltstufenelement 101 der ersten Schaltstufe 10 über eine innere Challenge C101 ebenso eine weitere Variation des gewählten Signalpfades vorgegeben werden. Alternativ ist das durch die Challenge steuerbare Zuschalten einer Verzögerungsstrecke in einem der Schaltstufenelemente möglich und bietet ohne großen Schaltungsaufwand eine Variation der Schaltungseigenschaften. 4 shows schematically how, according to a fourth embodiment of the invention, a plurality of signal paths can be provided within a switching stage element again, being specified via a further challenge per switching stage element, which of the two or more signal paths is activated. For a switching stage element 100 the first switching stage 10 For example, it is shown how two NOR gates or two NOR look-up tables are installed in parallel, and another, or inner, challenge C100 specifies a selection rule for selecting the signal paths. Analog can be in another switching stage element 101 the first switching stage 10 via an internal challenge C101 as well as a further variation of the selected signal path can be specified. Alternatively, the controllable by the Challenge switching a delay path in one of the switching stage elements is possible and provides a great deal of circuit complexity, a variation of the circuit properties.

Die innere Challenge C100 oder C101 wird insbesondere an einen Multiplexer als Steuersignal angelegt, welches festlegt, welcher Eingang des Multiplexers gewählt wird, d.h. welches der beiden NOR-Funktionselemente gewählt wird, um das Signal aus diesem Funktionselementpfad an den Ausgang des Schaltstufenelementes weiterzugeben. In particular, the inner challenge C100 or C101 is applied to a multiplexer as the control signal which determines which input of the multiplexer is selected, i. which of the two NOR function elements is selected in order to pass on the signal from this function element path to the output of the switching stage element.

Durch die Kombination der äußeren Challenge zur Bestimmung der Permutation mit der inneren Challenge zur Auswahl paralleler alternativer Pfade wird eine nochmals größere Anzahl an Challenge-Response-Paaren geschaffen und der Challenge-Raum somit nochmals vorteilhaft vergrößert. Das Einführen alternativer Signalpfade, welche durch die innere Challenge als aktiv ausgewählt werden, kann für einzelne Schaltstufenelemente oder mehrere Schaltstufenelemente einer Stufe oder mehrerer verschiedener Stufen und insbesondere für alle Schaltstufenelemente vorgesehen sein. By combining the outer challenge to determine the permutation with the inner challenge to select parallel alternative paths, an even larger number of challenge-response pairs are created and thus the challenge space is advantageously increased again. The introduction of alternative signal paths which are selected as active by the internal challenge can be provided for individual shift stage elements or multiple shift stage elements of one or more different stages and in particular for all shift stage elements.

Die Ausführungsbeispiele beschränken sich auf Varianten der erfindungsgemäßen Schaltung, welche eine überschaubare Anzahl von Schaltstufen, nämlich vier Schaltstufen, und eine kleine Zahl von Schaltstufenelementen je Schaltstufe, nämlich zwei Schaltstufenelementen, aufweisen. Die Beispiele wurden so gewählt, um die Lesbarkeit in den Figuren zu gewährleisten. Vorteilhafterweise wird eine Vielzahl von Schaltstufenelementen je Schaltstufe vorgesehen, so dass eine Vielzahl möglicher Verschaltungen von Schaltstufenelementen zweier benachbarter Schaltstufen untereinander konfigurierbar ist, nämlich bei einer Anzahl N Schaltstufenelementen N! mögliche Permutationen. Es können dabei auch Schaltungen mit einer ungeraden Anzahl an Schaltstufen verwendet werden, da durch eine geeignete Permutationsvorschrift die Konfiguration der Schaltung derart vorgegeben werden kann, dass ein Ring von geradzahliger Anzahl an Schaltstufenelementen entsteht, indem ein geradzahlig Vielfaches an benachbarten Spuren zusammengeschaltet wird. Bleibt in einem Fall eine ungeradzahlige Anzahl von Schaltstufenelementen übrig, welche nicht zu einem bistabilen Ring geschlossen werden kann, so kann diese bei der Auswertung unberücksichtigt bleiben. Liegt insgesamt eine geradzahlige Anzahl an Schaltstufenelementen, unter Berücksichtigung aller Schaltstufen, vor, so ist der längste konstruierbare Ring immer durch die Gesamtanzahl der Schaltstufenelemente vorgegeben. The embodiments are limited to variants of the circuit according to the invention, which have a manageable number of switching stages, namely four switching stages, and a small number of switching stage elements per switching stage, namely two switching stage elements. The examples were chosen to ensure readability in the figures. Advantageously, a plurality of switching stage elements per switching stage is provided, so that a multiplicity of possible interconnections of switching stage elements of two adjacent switching stages can be configured with one another, namely with a number N of switching stage elements N! possible permutations. It can also be used circuits with an odd number of switching stages, as by a suitable Permutationsvorschrift the configuration of the circuit can be specified such that a ring of even number of switching stage elements is created by an even multiple connected to adjacent tracks. If, in one case, there remains an odd number of switching stage elements which can not be closed to form a bistable ring, this can be disregarded in the evaluation. If an even number of switching stage elements is present, taking into account all the switching stages, then the longest constructible one is available Ring always given by the total number of switching stage elements.

Aus Gründen der Lesbarkeit wurde in den 2 bis 4 auf die Erfassungseinheit verzichtet. Diese kann in allen Spuren an einer gemeinsamen Position innerhalb der Schaltung vorgesehen sein oder für unterschiedliche Spuren an unterschiedlichen Positionen. Ferner kann die Erfassungseinheit kombiniert mit einer Auswerteschaltung verbaut sein, welche beispielsweise hinter jeder Stufenschaltung ein Bit abgreift zum Erkennen des zeitlich stabilen alternierenden Musters. Auch die Auswerteschaltung ist vorzugsweise in allen Spuren der Schaltung vorgesehen, so dass unabhängig von der Anzahl der gebildeten Ringe der geeignete Zeitpunkt zum Auslesen der Response erkannt werden kann. For reasons of readability was in the 2 to 4 waived the registration unit. This can be provided in all tracks at a common position within the circuit or for different tracks at different positions. Furthermore, the detection unit can be installed in combination with an evaluation circuit which, for example, picks off a bit behind each stage circuit for recognizing the time-stable alternating pattern. Also, the evaluation circuit is preferably provided in all tracks of the circuit, so that regardless of the number of rings formed the appropriate time for reading the response can be detected.

Je nach Anwendungsgebiet wird die durch die Schaltung realisierte physikalisch unklonbare Funktion als Schlüsselspeicher oder als Authentizitätsprüfung verwendet. Der abgeleitete Identifizierer dient dabei beispielsweise zum Bilden eines kryptographischen Schlüssels, welcher in einer nicht auslesbaren Form auf einer Hardware gespeichert ist und nur auf dieser dafür vorgesehenen Hardware erzeugt werden kann. Für eine Authentizitätsprüfung kann der Identifizierer eingehen in eine Antwort, welche ein Überprüfer eines Gerätes von dem Schaltkreis erwartet. Depending on the field of application, the physically unclonable function realized by the circuit is used as a key memory or as an authenticity check. The derived identifier serves, for example, to form a cryptographic key, which is stored in a non-readable form on a hardware and can only be generated on this hardware provided for this purpose. For an authenticity check, the identifier may enter into a response which a validator of a device expects from the circuit.

Um die Qualität der Response Daten weiter zu erhöhen, können in einer Learning Phase, in welcher Challenge-Response-Paare gesammelt werden, die im weiteren zur Authentifizierung oder zur Erzeugung eines kryptographischen Schlüssels verwendet werden, solche Challenges aussortiert werden, die auf eine starke Vorprägung der Response deuten lassen. Dafür wird insbesondere pro Challenge die Zeit gemessen, die die PUF benötigt, um einen stabilen Zustand zu erreichen. Challenges, die unter einer gewissen Schwelle liegen, werden zukünftig nicht weiter verwendet. Somit wird gewährleistet, dass eine Response nicht erraten werden kann oder nicht aussagekräftig als zu einer Challenge gehörig erkannt wird. In order to further increase the quality of the response data, in a learning phase, in which challenge-response pairs are collected, which are subsequently used for authentication or for generating a cryptographic key, such challenges can be sorted out, which are based on a strong predistinction to interpret the response. In particular, the time that the PUF needs to reach a stable state is measured per challenge. Challenges below a certain threshold will not be used in the future. This ensures that a response can not be guessed or is not meaningfully recognized as belonging to a challenge.

Die Funktionselemente innerhalb einer Schaltstufe können beliebig gewählt werden. Wenn die Erfindung innerhalb eines reprogrammierbaren Digitalbausteins, d.h. Field Programmable Gate Arrays, kurz FPGAs, realisiert wird, kann die Auswahl-, Invertierungs- und Reset-Funktion besonders günstig gemeinsam durch sogenannte Look-Up-Tables realisiert werden. Look-Up-Tables können im Rahmen ihrer verfügbaren Eingangs- und Ausgangssignale beliebige Logikfunktionen realisieren, da in ihnen in Form einer Wertetabelle zu jeder möglichen Kombination von Eingangssignalen ein dazugehöriger Ausgangswert hinterlegt werden kann. The functional elements within a switching stage can be chosen arbitrarily. If the invention is within a reprogrammable digital device, i. Field programmable gate arrays, short FPGAs, is realized, the selection, inversion and reset function can be realized particularly well together by so-called look-up tables. Look-up tables can realize arbitrary logic functions within the scope of their available input and output signals, since a corresponding output value can be stored in the form of a value table for each possible combination of input signals.

ZITATE ENTHALTEN IN DER BESCHREIBUNG QUOTES INCLUDE IN THE DESCRIPTION

Diese Liste der vom Anmelder aufgeführten Dokumente wurde automatisiert erzeugt und ist ausschließlich zur besseren Information des Lesers aufgenommen. Die Liste ist nicht Bestandteil der deutschen Patent- bzw. Gebrauchsmusteranmeldung. Das DPMA übernimmt keinerlei Haftung für etwaige Fehler oder Auslassungen.This list of the documents listed by the applicant has been generated automatically and is included solely for the better information of the reader. The list is not part of the German patent or utility model application. The DPMA assumes no liability for any errors or omissions.

Zitierte Nicht-PatentliteraturCited non-patent literature

  • Chen et al. „The Bistable Ring PUF: A new architecture for strong Physical Unclonable Functions“ (2011 IEEE International Symposium on Hardware-Oriented Security and Trust (HOST), 134–141. IEEE, 2011) [0005] Chen et al. "The Bistable Ring PUF: A New Architecture for Strong Physical Unclonable Functions" (2011 IEEE International Symposium on Hardware-Oriented Security and Trust (HOST), 134-141, IEEE, 2011) [0005]
  • "Attacking and Protecting Ring Oscillator Physical Unclonable Functions and Code-Offset Fuzzy Extract" von D. Merli, 2013 [0007] "Attacking and Protecting Ring Oscillator Physical Unclonable Functions and Code-Offset Fuzzy Extract" by D. Merli, 2013 [0007]

Claims (15)

Schaltung (1) zum Erzeugen eines Identifizierers (I) für die Schaltung (1), mit – mindestens zwei Schaltstufen (10, 20), die Schaltstufen (10, 20) umfassend jeweils mindestens zwei Schaltstufenelemente (100, 101, 200, 201), wobei die mindestens zwei Schaltstufen (10, 20) derart ausgebildet sind, dass jeweilige Ausgangswerte an jeweiligen Ausgängen der mindestens zwei Schaltstufenelemente (100, 101) einer vorangehenden Schaltstufe (10) jeweiligen Eingängen der mindestens zwei Schaltstufenelemente (200, 201) einer folgenden Schaltstufe (20) alternativ zuführbar sind; wobei durch eine einem jeweiligen Schaltstufenelement (10, 20) zuordenbare Permutationsvorschrift eine Zuordnung eines jeweiligen Eingangs des jeweiligen Schaltstufenelementes (200, 201) der folgenden Schaltstufe (20) zu genau einem Ausgang eines Schaltstufenelementes (100, 101) der vorangehenden Schaltstufe (10) festlegbar ist; – einer Schnittstelleneinrichtung zu einer Initialisierungseinheit (R), die Initialisierungseinheit (R) geeignet zum Vorgeben eines festgelegten Wertes als Ausgangswert eines jeweiligen Ausganges der Schaltstufenelemente (100, 101, 200, 201) der Schaltstufen (10, 20), so dass die Schaltung (1) während einer aktiven Phase der Initialisierungseinheit in einem instabilen Zustand haltbar ist; wobei nach Beenden der aktiven Phase die Schaltung eingerichtet ist zum Einnehmen eines für die Schaltung (1) charakteristischen Zustandes in Abhängigkeit von der Permutationsvorschrift; – mindestens eine Erfassungseinheit (E) zum Erfassen mindestens eines Bits an mindestens einer Position innerhalb der Schaltung, wobei durch das Erfassen des mindestens einen Bits innerhalb der Schaltung (1) im charakteristischen Zustand mit Hilfe des mindestens einen Bits der Identifizierer (I) erzeugbar ist. Circuit ( 1 ) for generating an identifier (I) for the circuit ( 1 ), with - at least two switching stages ( 10 . 20 ), the switching stages ( 10 . 20 ) comprising in each case at least two switching stage elements ( 100 . 101 . 200 . 201 ), wherein the at least two switching stages ( 10 . 20 ) are formed such that respective output values at respective outputs of the at least two switching stage elements ( 100 . 101 ) of a preceding switching stage ( 10 ) respective inputs of the at least two switching stage elements ( 200 . 201 ) of a following switching stage ( 20 ) can be fed alternatively; wherein by a respective switching stage element ( 10 . 20 ) Assignable Permutationsvorschrift an assignment of a respective input of the respective switching stage element ( 200 . 201 ) of the following switching stage ( 20 ) to exactly one output of a switching stage element ( 100 . 101 ) of the preceding switching stage ( 10 ) is definable; - an interface device to an initialization unit (R), the initialization unit (R) suitable for specifying a predetermined value as the output value of a respective output of the switching stage elements ( 100 . 101 . 200 . 201 ) of the switching stages ( 10 . 20 ), so the circuit ( 1 ) is stable in an unstable state during an active phase of the initialization unit; wherein after termination of the active phase the circuit is set up to take one for the circuit ( 1 ) characteristic state as a function of the permutation rule; At least one detection unit (E) for detecting at least one bit at at least one position within the circuit, wherein by detecting the at least one bit within the circuit (E) 1 ) in the characteristic state with the aid of the at least one bit of the identifier (I) can be generated. Schaltung (1) nach Anspruch 1, wobei durch Zuführen jeweiliger Ausgänge von Schaltstufenelementen (200, 201) einer folgenden Schaltstufe (20) an jeweilige Eingänge von Schaltstufenelementen (100, 101) einer vorangehenden Schaltstufe (10) mindestens ein bistabil geschlossener Ring konstruierbar ist. Circuit ( 1 ) according to claim 1, wherein by supplying respective outputs of switching stage elements ( 200 . 201 ) of a following switching stage ( 20 ) to respective inputs of switching stage elements ( 100 . 101 ) of a preceding switching stage ( 10 ) At least one bistable closed ring is constructable. Schaltung (1) nach Anspruch 1 oder 2, wobei drei oder mehr Schaltstufen (10, 20, 30, ...) vorgesehen sind, deren jeweilige Schaltstufenelemente (100, 101, 200, 201, 300, 301, ...) jeweils über die Permutationsvorschrift gemäß Anspruch 1 verschaltet werden, so dass mindestens ein bistabil geschlossener Ring konstruierbar ist. Circuit ( 1 ) according to claim 1 or 2, wherein three or more switching stages ( 10 . 20 . 30 , ...) are provided whose respective switching stage elements ( 100 . 101 . 200 . 201 . 300 . 301 , ...) in each case via the permutation rule according to claim 1 are connected, so that at least one bistable closed ring can be constructed. Schaltung (1) nach einem der vorstehenden Ansprüche, wobei mindestens ein Schaltstufenelement (100) mehrere Signalpfade umfasst und wobei einer der mehreren Signalpfade über eine Auswahlvorschrift aktivierbar ist. Circuit ( 1 ) according to one of the preceding claims, wherein at least one switching stage element ( 100 ) comprises a plurality of signal paths and wherein one of the plurality of signal paths can be activated via a selection rule. Schaltung (1) nach einem der vorstehenden Ansprüche, ferner aufweisend eine jeweilige Erfassungseinheit (E) in einem jeden von mittels der Permutationsvorschrift konstruierten bistabil geschlossenen Ringen zum Erfassen mindestens eines jeweiligen Bits, wobei aus mehreren Bits der jeweiligen Bits der Identifizierer (I) ableitbar ist. Circuit ( 1 ) according to one of the preceding claims, further comprising a respective detection unit (E) in each of the bistable closed rings constructed by the permutation rule for detecting at least one respective bit, the identifier (I) being derivable from a plurality of bits of the respective bits. Schaltung (1) nach einem der vorstehenden Ansprüche, wobei die Permutationsvorschrift als eine Challenge (C10, C20) vorgebbar ist, welche für jedes Schaltstufenelement (100, 101) der Schaltstufe (100) die Zuordnung festlegt. Circuit ( 1 ) according to one of the preceding claims, wherein the permutation rule is predeterminable as a challenge (C10, C20), which for each shift stage element ( 100 . 101 ) of the switching stage ( 100 ) determines the assignment. Schaltung (1) nach Anspruch 6, wobei das mindestens eine Bit eine Response in Abhängigkeit von der Challenge darstellt und die Response charakteristisch für ein Exemplar der Schaltung (1) ist. Circuit ( 1 ) according to claim 6, wherein the at least one bit represents a response in response to the challenge, and the response is characteristic of an instance of the circuit ( 1 ). Schaltung (1) nach Anspruch 7, wobei die Response einbittig oder mehrbittig ist. Circuit ( 1 ) according to claim 7, wherein the response is single-bit or multi-bit. Schaltung (1) nach einem der vorstehenden Ansprüche, ferner aufweisend eine Einheit zum Auswerten der Response hinsichtlich einer Stabilisierungseigenschaft. Circuit ( 1 ) according to one of the preceding claims, further comprising a unit for evaluating the response with respect to a stabilizing property. Schaltung (1) nach Anspruch 9, wobei die Einheit eine Zeiterfassungseinheit, insbesondere einen Zähler, aufweist und/ oder eine Auswahleinheit zum Auswählen von Responses und zum Weiterleiten an eine Ausgabeeinheit. Circuit ( 1 ) according to claim 9, wherein the unit comprises a time detection unit, in particular a counter, and / or a selection unit for selecting responses and for forwarding to an output unit. Schaltung (1) nach einem der vorstehenden Ansprüche, ferner aufweisend eine Auswerteschaltung zum Detektieren des charakteristischen Zustandes, die Auswerteschaltung geeignet zum Erfassen eines zeitlich stabilen alternierenden Musters entlang der Stufenschaltungen. Circuit ( 1 ) according to one of the preceding claims, further comprising an evaluation circuit for detecting the characteristic state, the evaluation circuit suitable for detecting a temporally stable alternating pattern along the step circuits. Verfahren zum Erzeugen eines Identifizierers für eine Schaltung mit mindestens zwei Schaltstufen, die Schaltstufen umfassend jeweils mindestens zwei Schaltstufenelemente, – wobei jeweilige Ausgangswerte an jeweiligen Ausgängen der mindestens zwei Schaltstufenelementen einer vorangehenden Schaltstufe jeweiligen Eingängen der mindestens zwei Schaltstufenelemente einer folgenden Schaltstufe alternativ zugeführt werden; – wobei durch eine einem jeweiligen Schaltstufenelement zuordenbare Permutationsvorschrift eine Zuordnung eines jeweiligen Eingangs des jeweiligen Schaltstufenelementes der folgenden Schaltstufe zu genau einem Ausgang eines Schaltstufenelementes der vorangehenden Schaltstufe festgelegt wird; – wobei mittels einer Initialisierungseinheit ein festgelegter Wert als Ausgangswert eines jeweiligen Ausganges der Schaltstufenelemente der Schaltstufen vorgegeben wird, so dass die Schaltung während einer aktiven Phase der Initialisierungseinheit in einem instabilen Zustand gehalten wird; – wobei nach Beenden der aktiven Phase die Schaltung einen für die Schaltung charakteristischen Zustand einnimmt in Abhängigkeit von der Permutationsvorschrift und mittels einer Erfassungseinheit mindestens eines Bits an mindestens einer Position innerhalb der Schaltung im charakteristischen Zustand erfasst wird zum Erzeugen des Identifizierers. A method for generating an identifier for a circuit having at least two switching stages, the switching stages comprising at least two switching stage elements, - wherein respective output values are supplied to respective outputs of the at least two switching stage elements of a preceding switching stage respective inputs of the at least two switching stage elements of a subsequent switching stage alternatively; - An assignment of a respective input of the respective switching stage element of the following switching stage to exactly one output of a switching stage element of the preceding switching stage is determined by a respective switching stage element assignable Permutationsvorschrift; - By means of an initialization unit, a predetermined value as the output value of a respective Output of the switching stage elements of the switching stages is set so that the circuit is kept in an unstable state during an active phase of the initialization unit; - After completion of the active phase, the circuit occupies a characteristic state for the circuit in response to the Permutationsvorschrift and is detected by means of a detection unit of at least one bit at least one position within the circuit in the characteristic state for generating the identifier. Verfahren zum Erzeugen eines Identifizierers für eine Schaltung mit den Schritten: – Bereitstellen einer Schaltung mit mindestens zwei Schaltstufen, die Schaltstufen umfassend jeweils mindestens zwei Schaltstufenelemente, wobei die mindestens zwei Schaltstufen derart ausgebildet sind, dass jeweilige Ausgangswerte an jeweiligen Ausgängen der mindestens zwei Schaltstufenelemente einer vorangehenden Schaltstufe jeweiligen Eingängen der mindestens zwei Schaltstufenelemente einer folgenden Schaltstufe alternativ zuführbar sind; – Anlegen einer Challenge mittels einer Permutationsvorschrift, wobei durch die Permutationsvorschrift eine Verschaltung eines jeweiligen Eingangs des jeweiligen Schaltstufenelementes der folgenden Schaltstufe zu genau einem Ausgang eines Schaltstufenelementes der vorangehenden Schaltstufe festgelegt wird; – Vorgeben eines festgelegten Wertes als Ausgangswert eines jeweiligen Ausganges der Schaltstufenelemente der Schaltstufen zum Halten eines instabilen Zustandes der Schaltung während einer aktiven Phase; – Erfassen einer Response nach Beenden der aktiven Phase, wobei die Response aus mindestens einem an mindestens einer Position der Schaltung in einem stabilen Zustand der Schaltung abgegriffenen Bit gebildet wird und abhängig von der Challenge ist sowie charakteristisch für ein Exemplar der Schaltung. Method for generating an identifier for a circuit comprising the steps: - Providing a circuit having at least two switching stages, the switching stages comprising at least two switching stage elements, wherein the at least two switching stages are designed such that respective output values at respective outputs of the at least two switching stage elements of a preceding switching stage respective inputs of the at least two switching stage elements of a subsequent switching stage fed alternatively are; - Creating a challenge by means of a permutation rule, wherein the interconnection of a respective input of the respective switching stage element of the following switching stage is set to exactly one output of a switching stage element of the preceding switching stage by the permutation rule; - Specifying a predetermined value as the output value of a respective output of the switching stage elements of the switching stages for maintaining an unstable state of the circuit during an active phase; Detecting a response after termination of the active phase, wherein the response is formed from at least one bit tapped at at least one position of the circuit in a stable state of the circuit and is dependent on the challenge and characteristic for a copy of the circuit. Verfahren nach Anspruch 13, wobei drei oder mehr Schaltstufen bereitgestellt werden, deren jeweilige Schaltstufenelemente jeweils über die Permutationsvorschrift gemäß Anspruch 13 verschaltet werden, so dass mindestens ein bistabil geschlossener Ring konfiguriert wird. The method of claim 13, wherein three or more switching stages are provided, the respective switching stage elements are each interconnected via the permutation rule according to claim 13, so that at least one bistable closed ring is configured. Computerprogrammprodukt mit einem Computerprogramm, das Mittel zur Durchführung des Verfahrens nach einem der vorhergehenden Ansprüche aufweist, wenn das Computerprogramm auf einer programmgesteuerten Einrichtung zur Ausführung gebracht wird. A computer program product comprising a computer program having means for carrying out the method according to one of the preceding claims, when the computer program is executed on a program-controlled device.
DE102014215467.7A 2014-08-05 2014-08-05 Generating an identifier for a circuit Withdrawn DE102014215467A1 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
DE102014215467.7A DE102014215467A1 (en) 2014-08-05 2014-08-05 Generating an identifier for a circuit
PCT/EP2015/063806 WO2016020098A1 (en) 2014-08-05 2015-06-19 Generating an identifier for a circuit

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE102014215467.7A DE102014215467A1 (en) 2014-08-05 2014-08-05 Generating an identifier for a circuit

Publications (1)

Publication Number Publication Date
DE102014215467A1 true DE102014215467A1 (en) 2016-02-04

Family

ID=53496648

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102014215467.7A Withdrawn DE102014215467A1 (en) 2014-08-05 2014-08-05 Generating an identifier for a circuit

Country Status (2)

Country Link
DE (1) DE102014215467A1 (en)
WO (1) WO2016020098A1 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111339576B (en) * 2020-02-12 2023-01-24 鹏城实验室 Three-state physical unclonable function circuit, control method and chip

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7840803B2 (en) * 2002-04-16 2010-11-23 Massachusetts Institute Of Technology Authentication of integrated circuits
JP5333669B2 (en) * 2010-06-30 2013-11-06 富士通株式会社 Individual information generation apparatus and individual information generation method

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
"Attacking and Protecting Ring Oscillator Physical Unclonable Functions and Code-Offset Fuzzy Extract" von D. Merli, 2013
Chen et al. "The Bistable Ring PUF: A new architecture for strong Physical Unclonable Functions" (2011 IEEE International Symposium on Hardware-Oriented Security and Trust (HOST), 134-141. IEEE, 2011)
Quingquing Chen, Csaba, G.; Lugli, P.; Schlichtmann, U.; Rührmair, U.: The Bistable Ring PUF - a new Architecture for Strong Physical Unclonable Funktions. Proceedings of the 2011 IEEE International Symposium on Hardware-Oriented Security and Trust (HOST), 5. - 6. Juni 2011, San Diego, USA.URL: http://ieeexplore.ieee.org/iel5/5946040/5954984/05955011.pdf?arnumber=5955011 *
Quingquing Chen, Csaba, G.; Lugli, P.; Schlichtmann, U.; Rührmair, U.: The Bistable Ring PUF – a new Architecture for Strong Physical Unclonable Funktions. Proceedings of the 2011 IEEE International Symposium on Hardware-Oriented Security and Trust (HOST), 5. – 6. Juni 2011, San Diego, USA.URL: http://ieeexplore.ieee.org/iel5/5946040/5954984/05955011.pdf?arnumber=5955011

Also Published As

Publication number Publication date
WO2016020098A1 (en) 2016-02-11

Similar Documents

Publication Publication Date Title
EP2976707B1 (en) System and method for generating random bits
EP2240848B1 (en) Circuit and method for generating a true, circuit-specific and time-invariant random number
DE112011106024B4 (en) Device specific information generating apparatus and device specific information generating method
DE102008048292A1 (en) Apparatus and method for generating a random bit string
DE102012210990A1 (en) Method for generating random numbers
EP1177628B1 (en) Circuit arrangement for generating current impulses in the supply current of integrated circuits
DE102010029735A1 (en) Method for generating a bit vector
DE102018212833A1 (en) DEVICE AND METHOD FOR GENERATING PHYSICALLY UNCLONABLE FUNCTIONS
DE102013204274A1 (en) Method for detecting a correlation
DE102009007246A1 (en) Pseudo-random number generator and method for generating a pseudorandom number bit sequence
DE102009027086A1 (en) Apparatus and method for forming a signature
DE102019112583A1 (en) INTEGRATED ELECTRONIC CIRCUIT
EP2873190A1 (en) Identification circuit
DE102014215467A1 (en) Generating an identifier for a circuit
DE102005037357B3 (en) Logic circuit for calculating result operand esp. for safety-sensitive applications, has two logic stages with first between input and intermediate node, and second between intermediate nodes and output
DE102012210361A1 (en) Method for monitoring an output of a random number generator
DE102014200309A1 (en) Method for checking an output
DE102004009144B4 (en) A logic cell and method for performing a dual rail logic operation and storage medium
DE102014200164A1 (en) A method for generating an output of a random source of a random number generator
DE102014224421A1 (en) Method and apparatus for generating random bits
DE10217375A1 (en) Circuit arrangement and method for generating a dual rail signal
DE102018217016A1 (en) One-chip system and security circuit with such a one-chip system
DE102013213385A1 (en) Method for evaluating an output of a random number generator
DE102015210425A1 (en) Physically unclonable function with at least two ring circuits and a coupling unit
DE102016115551A1 (en) Configurable security modules

Legal Events

Date Code Title Description
R012 Request for examination validly filed
R230 Request for early publication
R016 Response to examination communication
R119 Application deemed withdrawn, or ip right lapsed, due to non-payment of renewal fee