DE102010045580A1 - Circuit arrangement for use in microprocessor for e.g. smart card, has identification circuit producing key for encrypting data value to be written or decrypting data value to be read, where key depends on arrangement inherent properties - Google Patents

Circuit arrangement for use in microprocessor for e.g. smart card, has identification circuit producing key for encrypting data value to be written or decrypting data value to be read, where key depends on arrangement inherent properties Download PDF

Info

Publication number
DE102010045580A1
DE102010045580A1 DE201010045580 DE102010045580A DE102010045580A1 DE 102010045580 A1 DE102010045580 A1 DE 102010045580A1 DE 201010045580 DE201010045580 DE 201010045580 DE 102010045580 A DE102010045580 A DE 102010045580A DE 102010045580 A1 DE102010045580 A1 DE 102010045580A1
Authority
DE
Germany
Prior art keywords
key
memory
circuit arrangement
data
written
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.)
Ceased
Application number
DE201010045580
Other languages
German (de)
Inventor
Marcus Janke
Dr. Laackmann Peter
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.)
Infineon Technologies AG
Original Assignee
Infineon Technologies 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 Infineon Technologies AG filed Critical Infineon Technologies AG
Priority to DE201010045580 priority Critical patent/DE102010045580A1/en
Publication of DE102010045580A1 publication Critical patent/DE102010045580A1/en
Ceased legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/14Protection against unauthorised use of memory or access to memory
    • G06F12/1408Protection against unauthorised use of memory or access to memory by using cryptography
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/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]

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Storage Device Security (AREA)

Abstract

The arrangement (100) has a memory (20) e.g. ROM, coupled with a processing unit (10) i.e. CPU, for executing a reading and/or writing access. A cryptographic unit (40) i.e. memory encryption decryption unit, encrypts a data value to be written into the memory or decrypts the data value to be read from the memory. An identification circuit (50) i.e. physical unclonable function (PUF) circuit, produces a key (S1) for encrypting the data value to be written or decrypting the data value to be read. The key depends on inherent properties of the arrangement. An independent claim is also included for a method for operating a circuit arrangement.

Description

Die vorliegende Erfindung betrifft eine Schaltungsanordnung sowie einen Mikroprozessor mit einer Verarbeitungseinheit und einem Speicher, der zur Ausführung eines Lese- oder Schreibzugriffs mit der Verarbeitungseinheit gekoppelt ist.The present invention relates to a circuit arrangement and a microprocessor having a processing unit and a memory which is coupled to the processing unit for the purpose of a read or write access.

Die vorliegende Erfindung betrifft außerdem ein Verfahren zum Betreiben einer Schaltungsanordnung mit einem solchen Speicher.The present invention also relates to a method of operating a circuit arrangement with such a memory.

Mikroprozessoren weisen einen Speicher auf, um dauerhaft oder flüchtig zu verarbeitende Daten oder Programme zu speichern. Bei der Abarbeitung eines Programms greift der Mikroprozessor auf den Speicher zu, um aktuell benötigte Programmteile oder Daten zu laden. Mikroprozessoren finden unter anderem Anwendung in sicherheitskritischen Systemen, beispielsweise in Chipkarten. Der Mikroprozessor wird dort unter anderem dazu verwendet, den Datenverkehr zu verschlüsseln oder andere sicherheitskritische Anwendungen für den Chipkarteninhaber abzuwickeln. Dabei werden sicherheitskritische Daten und Programme in den flüchtigen und nichtflüchtigen Speichereinheiten des Mikroprozessors gespeichert bzw. aus diesen gelesen. Um ein Ausspähen und Sichtbarmachen dieser Informationen zu verhindern, werden solche Daten verschlüsselt über die Busleitungen in den Speicher gesendet und dort verschlüsselt abgelegt. Verschlüsselungsverfahren sind in der Regel aufwendig und erfordert entsprechenden Hardware-Aufwand und Rechenzeit.Microprocessors have memory to store persistent or volatile data or programs. During execution of a program, the microprocessor accesses the memory to load currently needed program parts or data. Among other things, microprocessors are used in safety-critical systems, for example in chip cards. Among other things, the microprocessor is used there to encrypt the data traffic or to handle other security-critical applications for the chip card holder. Safety-critical data and programs are stored in or read from the volatile and non-volatile memory units of the microprocessor. In order to prevent this information being spied on and visualized, such data is sent in encrypted form via the bus lines to the memory and stored there encrypted. Encryption methods are usually complex and require appropriate hardware complexity and computing time.

Mikroprozessoren für beispielsweise Chipkarten oder Komponenten für Embedded Security sind vielfältigen Angriffen ausgesetzt. Unter anderem versuchen die Angreifer Daten aus dem Chip auszuspähen. Dies erfolgt beispielsweise mittels sogenannter Observing oder Physical Attacks. Eine Ausprägung hiervon ist das Aufsetzen von feinen Nadeln auf dem Datenbus zwischen den integrierten Speichern und der Verarbeitungseinheit CPU. Die von den Nadeln abgegriffenen Signale werden aufgezeichnet und ausgewertet, so dass die intern gespeicherten und geheim zu haltenden Daten in die Hände des Angreifers gelangen. Diese Art von Angriff kann durch eine Verschlüsselung der Daten abgewehrt bzw. erschwert werden. Durch die Verschlüsselung werden die Daten für die Angreifer wertlos. Ein oben beschriebener Angriff würde zunächst nur verschlüsselte und damit nicht interpretierbare Daten bringen.Microprocessors for, for example, chip cards or components for embedded security are exposed to a variety of attacks. Among other things, the attackers try to spy data from the chip. This is done for example by means of so-called observing or physical attacks. One manifestation of this is the placement of fine needles on the data bus between the integrated memories and the processing unit CPU. The signals picked up by the needles are recorded and evaluated, so that the internally stored and secret data get into the hands of the attacker. This type of attack can be prevented or made more difficult by encrypting the data. Encryption makes the data worthless to the attackers. An attack described above would initially only encrypted and thus unrecognizable data bring.

Bekannt ist die Verschlüsselung mit einem Verschlüsselungsalgorithmus (vergleichbar zu Verschlüsselungsstandards wie DES (Data Encryption Standard) oder AES (Advanced Encryption Standard)). Hierbei wird möglichst räumlich nah an der Verarbeitungseinheit, der CPU, ein kryptographisches Modul implementiert. Das kryptographische Modul verschlüsselt die Daten mittels eines, in der Regel auf einer Zufallszahl basierenden, Schlüssels. Alle zu speichernden Daten werden anschließend in verschlüsselter Form über einen Datenbus zu einem Speicher transportiert und verschlüsselt in diesem abgelegt.Encryption is known using an encryption algorithm (comparable to encryption standards such as DES (Data Encryption Standard) or AES (Advanced Encryption Standard)). In this case, as close as possible to the processing unit, the CPU, a cryptographic module is implemented. The cryptographic module encrypts the data using a key, typically based on a random number. All data to be stored are then transported in encrypted form over a data bus to a memory and stored encrypted in this.

Aus der EP 1118941 B1 ist eine Mikroprozessoranordnung mit einer Verarbeitungseinheit, einem Speicher, der mit der Verarbeitungseinheit zur Ausführung eines Lese- oder Schreibzugriffs gekoppelt ist, eine kryptographische Einheit zur Verschlüsselung und Entschlüsselung von in den Speicher geschriebenen oder gelesenen Datenwerten sowie ein Mittel zur Bereitstellung eines veränderbaren Schlüssels bekannt.From the EP 1118941 B1 is a microprocessor arrangement comprising a processing unit, a memory coupled to the processing unit for performing a read or write access, a cryptographic unit for encrypting and decrypting data values written or read into the memory, and means for providing a variable key.

Nachteilig an den oben genannten Verfahren ist jedoch, dass der Schlüssel für die Verschlüsselung gespeichert werden muss. Obwohl hier teilweise aufwendig versucht wird, den Schlüssel nicht an einer Stelle zentral zu speichern, den Schlüssel zu teilen, zu verändern oder zu verstecken, kann ein Angreifer mit entsprechendem Aufwand den Schlüssel finden bzw. zusammensetzten und auslesen und nach Ermittlung des Verschlüsselungsverfahrens, die verschlüsselten Daten in Klartext zurück übersetzen. Der Angreifer wäre damit am Ziel und hätte, durch die nachträgliche Entschlüsselung, die zu schützenden Daten erfolgreich ausgespäht.A disadvantage of the above-mentioned method, however, is that the encryption key must be stored. Although it is sometimes tediously trying not to save the key centrally in one place, to divide the key, to change or to hide, an attacker can find the key with appropriate effort or composed and read and after determining the encryption method, the encrypted Translate data back to plain text. The attacker would thus be at the target and would have, by the subsequent decryption, successfully spied out the data to be protected.

Des Weiteren ist eine Verschlüsselung basierend auf chipindividuellen Parametern, so genannte „Physical Unclonable Functions” (PUFs), bekannt. PUFs können Schaltungen, Komponenten, Prozesse oder andere physikalische Systeme in einem Baustein sein, die es ermöglichen, aus mehreren Identifikationsbits einen individuellen, nicht klonbaren Identifikationscode bzw. Schlüssel zu erhalten. Ein solcher Schlüssel lässt sich immer und immer wieder aus den inhärenten Eigenschaften des Bausteins ableiten und muss nicht abgespeichert werden. PUFs basieren auf Schwankungen im Herstellungsprozess, Materialschwankungen oder Ähnlichem und sind bei der Herstellung nicht gezielt einstellbar. Durch die Bandbreite der Schwankungen und die Anzahl der verwendeten Identifikationsbits ist sichergestellt, dass jeder Baustein einer Serie einen individuellen Schlüssel erhält. Durch die Individualität der Schlüssel gibt es aber einen entscheidenden Nachteil. Es kann nicht vorhergesagt werden, ob die Verschlüsselung einer ausreichenden kryptographischen Stärke entspricht. Im ungünstigsten Fall ist der Schlüssel so schlecht, dass praktisch keine Verschlüsselung der Daten vorgenommen wird oder die Daten mit geringem Aufwand, ohne Kenntnis der konkreten Funktion, in Klartext zurückübersetzt werden können. Auch für eine oftmals notwendige Sicherheitszertifizierung ist dieses ein nicht akzeptabeler Zustand.Furthermore, an encryption based on chip-individual parameters, so-called "Physical Unclonable Functions" (PUFs) known. PUFs may be circuits, components, processes, or other physical systems in a device that make it possible to obtain an individual, non-clonable identification code or key from a plurality of identification bits. Such a key can be derived over and over again from the inherent properties of the block and does not have to be stored. PUFs are based on variations in the manufacturing process, material fluctuations or the like and are not specifically adjustable during production. The bandwidth of the fluctuations and the number of identification bits used ensures that each block in a series receives an individual key. Due to the individuality of the keys, there is a decisive disadvantage. It can not be predicted whether the encryption corresponds to a sufficient cryptographic strength. In the worst case, the key is so bad that virtually no encryption of the data is made or the data can be translated back into plain text with little effort, without knowing the specific function. Even for an often necessary safety certification this is an unacceptable condition.

Der vorliegenden Erfindung liegt daher die Aufgabe zugrunde, eine Schaltungsanordnung und ein Verfahren zum Betreiben einer Schaltungsanordnung bereitzustellen, welche ein höheres Sicherheitsniveau gegen Angriffe durch Ausspähen bietet. The present invention is therefore based on the object of providing a circuit arrangement and a method for operating a circuit arrangement, which offers a higher level of security against attacks by spying.

Diese Aufgabe wird durch eine Schaltungsanordnung mit den Merkmalen des Anspruchs 1 und durch ein Verfahren zum Betreiben einer Schaltungsanordnung mit den Merkmalen des Anspruchs 9 gelöst.This object is achieved by a circuit arrangement with the features of claim 1 and by a method for operating a circuit arrangement having the features of claim 9.

Die Schaltungsanordnung weist bei einem Ausführungsbeispiel eine Verarbeitungseinheit, einen Speicher, der mit der Verarbeitungseinheit zur Ausführung eines Lese- und/oder Schreibzugriffs gekoppelt ist, eine kryptographische Einheit zum Verschlüsseln eines in den Speicher zu schreibenden Datenwertes oder Entschlüsseln eines aus dem Speicher gelesenen Datenwertes sowie eine Identifikationsschaltung auf, wobei die Identifikationsschaltung eingerichtet ist, um einen ersten Schlüssel zum Verschlüsseln, des in den Speicher zu schreibenden Datenwertes oder Entschlüsseln des aus dem Speicher gelesenen Datenwertes, zu erzeugen, wobei der erste Schlüssel von den inhärenten Eigenschaften der Schaltungsanordnung abhängt. Die Identifikationsschaltung kann beispielsweise eine PUF-Schaltung sein.In one embodiment, the circuitry includes a processing unit, a memory coupled to the processing unit for performing read and / or write access, a cryptographic unit for encrypting a data value to be written to the memory, or decrypting a data value read from the memory Identification circuit, wherein the identification circuit is adapted to generate a first key for encrypting, the data to be written into the memory or decrypting the data read from the memory, the first key depending on the inherent characteristics of the circuit. The identification circuit may be, for example, a PUF circuit.

Die Erzeugung des ersten Schlüssels aus den inhärenten Eigenschaften der Schaltungsanordnung, beispielsweise aus den so genannten „Physical Unclonable Functions” (PUFs), hat den Vorteil, dass der erste Schlüssel reproduzierbar ist. Da sich der erste Schlüssel immer und immer wieder aus den inhärenten Eigenschaften der Schaltungsanordnung ableiten lässt, muss er auch nicht gespeichert werden, was einen deutlichen Sicherheitsgewinn gegen Angriffe von Außen darstellt. PUFs basieren auf Schwankungen im Herstellungsprozess, Materialschwankungen oder Ähnlichem und sind bei der Herstellung nicht gezielt einstellbar. Durch die Bandbreite der Schwankungen und die Anzahl der verwendeten Identifikationsbits ist sichergestellt, dass jede Schaltungsanordnung einer Serie einen individuellen Schlüssel erhält.The generation of the first key from the inherent properties of the circuit arrangement, for example from the so-called "Physical Unclonable Functions" (PUFs), has the advantage that the first key is reproducible. Since the first key can be derived time and time again from the inherent properties of the circuit arrangement, it does not have to be stored, which represents a significant gain in security against attacks from outside. PUFs are based on variations in the manufacturing process, material fluctuations or the like and are not specifically adjustable during production. The bandwidth of the fluctuations and the number of identification bits used ensures that each circuit arrangement of a series receives an individual key.

Die Verschlüsselung der Datenwerte kann beispielsweise mittels Blockchiffren wie Feistelchiffre/Feistelnetzwerk oder einem Substitution-Permutation Network (SPN) in der kryptographischen Einheit erfolgen. In einer weiteren Ausführungsform erfolgt die die Verschlüsselung gemäß einem der bekannten Verschlüsselungsstandards wie DES (Data Encryption Standard) oder AES (Advanced Encryption Standard).The encryption of the data values can take place, for example, by means of block ciphers such as Feistelchiffre / Feistelnetzwerk or a substitution-permutation network (SPN) in the cryptographic unit. In a further embodiment, the encryption takes place in accordance with one of the known encryption standards such as DES (Data Encryption Standard) or AES (Advanced Encryption Standard).

In einer weiteren Ausführungsform weist die Schaltungsanordnung ferner eine Schlüsselerzeugungseinrichtung auf, wobei die Schlüsselerzeugungseinrichtung eingerichtet ist, um einen zweiten Schlüssel, mittels einer Zufallszahl und/oder eines in der Schaltungsanordnung (100) hinterlegten Wertes, zu erzeugen, wobei die kryptographische Einheit eingerichtet ist, um den ersten Schlüssel und den zweiten Schlüssel zur Verschlüsselung des in den Speicher zu schreibenden Datenwertes oder zum Entschlüsseln des aus dem Speicher gelesenen Datenwertes zu verwenden.In a further embodiment, the circuit arrangement furthermore has a key generation device, wherein the key generation device is set up to generate a second key by means of a random number and / or in the circuit arrangement (FIG. 100 ), wherein the cryptographic unit is arranged to use the first key and the second key to encrypt the data value to be written into the memory or to decrypt the data value read from the memory.

Durch die Verwendung von zwei unterschiedlich erzeugten Schlüsseln zur Verschlüsselung, wird die Qualität/Stärke der Verschlüsselung der Datenwerte signifikant erhöht. Da der erste Schlüssel sich aus den inhärenten Eigenschaften der Schaltungsanordnung ergibt und demzufolge nicht abgespeichert werden muss bzw. nicht durch bestimmte Algorithmen ermittelt wird, ist er praktisch nicht zu ermitteln. Der zweite Schlüssel kann beispielsweise unter Verwendung einer Zufallszahl erzeugt werden, wobei die Zufallszahl beispielsweise durch einen Random Number Generators (RNG) generiert werden kann. Es ist aber auch möglich, dass der zweite Schlüssel zumindest teilweise ein Datum aufweist, welches in einem Speicher, beispielsweise einem Read Only Memory (ROM) oder einem Non Volatile Memory (NVM) oder durch Synthese auf der Schaltungsanordnung, versteckt oder offen hinterlegt ist. Der zweite Schlüssel kann aber auch zu einem Teil auf einer Zufallszahl basieren und zu einem weiteren Teil auf einem in der Schaltungsanordnung hinterlegtem Datum.By using two differently generated keys for encryption, the quality / strength of the encryption of the data values is significantly increased. Since the first key results from the inherent properties of the circuit arrangement and therefore does not have to be stored or is not determined by specific algorithms, it is practically impossible to determine. For example, the second key may be generated using a random number, where the random number may be generated, for example, by a Random Number Generator (RNG). But it is also possible that the second key has at least partially a date which is hidden in a memory, such as a read only memory (ROM) or a non-volatile memory (NVM) or by synthesis on the circuit arrangement, hidden or open. However, the second key can also be based in part on a random number and on another part on a date stored in the circuit arrangement.

Der erste und der zweite Schlüssel können entweder zu einem gemeinsamen Schlüssel zusammengelegt werden oder es finden zwei voneinander getrennte Verschlüsselungen des Datenwertes mittels einer oder zwei kryptographischer Einheiten statt. Eine der kryptographischen Einheiten kann dabei beispielsweise eine so genannte Memory Encryption Decryption Unit (MED) sein.The first and second keys can either be merged into a common key, or two separate encryptions of the data value take place by means of one or two cryptographic units. One of the cryptographic units can be, for example, a so-called Memory Encryption Decryption Unit (MED).

In einem Ausführungsbeispiel kann die Schlüsselerzeugungseinrichtung einen dritten und/oder einen weiteren Schlüssel, mittels einer Zufallszahl und/oder eines in der Schaltungsanordnung hinterlegten Wertes, erzeugen, wobei die kryptographische Einheit eingerichtet ist, um den ersten Schlüssel, den zweiten Schlüssel, den dritten und/oder weiteren Schlüssel zur Verschlüsselung des in den Speicher zu schreibenden Datenwertes oder zum Entschlüsseln des aus dem Speicher gelesenen Datenwertes zu verwenden.In one embodiment, the key generation means may generate a third and / or a further key, by means of a random number and / or a value stored in the circuitry, the cryptographic unit being arranged to write the first key, the second key, the third and / or or another key to encrypt the data value to be written into memory or to decrypt the data value read from the memory.

Der erste, zweite, dritte und eventuell weitere Schlüssel können beliebig zu einem oder mehreren gemeinsamen Schlüsseln zusammengelegt werden. Dieses kann beispielsweise durch bit-weises XOR bilden erfolgen. In einem weiteren Ausführungsbeispiel können mehrere Verschlüsselungen des Datenwerts mittels verschiedener Schlüssel sequenziell durchgeführt werden, wobei die Reihenfolge beliebig veränderbar ist. Für die Verschlüsselung können eine oder mehrere kryptographische Einheiten verwendet werden.The first, second, third and possibly further keys can be combined as desired to form one or more shared keys. This can be done, for example, by bit-wise XOR. In another In accordance with an embodiment, multiple encodings of the data value may be performed sequentially by means of different keys, the order being arbitrarily changeable. For encryption one or more cryptographic units can be used.

In einem Ausführungsbeispiel der Schaltungsanordnung weist der Speicher einen oder mehrere Bereiche zum Speichern eines oder mehrerer Schlüssel bzw. eines oder mehrerer Teile eines Schlüssels auf. Die Schlüssel bzw. Teile eines Schlüssels können auch in verschiedenen Speichern, versteckt oder offen, abgelegt sein, wobei der oder die Schlüssel während des Herstellungsprozesses oder während des Betriebs erzeugt und abgelegt werden können. Es kann aber auch ein Wert, welcher als Schlüssel verwendet werden kann, außerhalb des Speichers in der Schaltungsanordnung abgelegt werden.In one embodiment of the circuit arrangement, the memory has one or more areas for storing one or more keys or one or more parts of a key. The keys or parts of a key can also be stored in different stores, hidden or open, whereby the key or keys can be generated and stored during the manufacturing process or during operation. However, it is also possible for a value which can be used as a key to be stored outside the memory in the circuit arrangement.

Des Weiteren kann die Schaltungsanordnung auch in einem Mikroprozessor oder in einem Sicherheitskontroller, beispielsweise für Chipkarten, eingesetzt werden. Gerade bei sicherheitskritischen Anwendungen bietet die erfindungsgemäße Schaltungsanordnung einen guten Schutz vor Angriffen.Furthermore, the circuit arrangement can also be used in a microprocessor or in a security controller, for example for chip cards. Especially in safety-critical applications, the circuit arrangement according to the invention provides good protection against attacks.

Ein Ausführungsbeispiel eines Verfahrens zum Betreiben einer Schaltungsanordnung weist die folgenden Schritte auf: Erzeugen eines ersten Schlüssels, wobei der erste Schlüssel von einer inhärenten Eigenschaften der Schaltungsanordnung abhängt, Verschlüsseln eines in einen Speicher zu schreibenden Datenwertes unter Verwendung des ersten Schlüssels oder Entschlüsseln eines aus einem Speicher gelesenen Datenwertes unter Verwendung des ersten Schlüssels. Der erste Schlüssel kann dabei basierend auf einer PUF-Funktion erzeugt werden.An embodiment of a method of operating a circuit arrangement comprises the steps of generating a first key, wherein the first key depends on inherent characteristics of the circuitry, encrypting a data value to be written to a memory using the first key, or decrypting one from a memory read data value using the first key. The first key can be generated based on a PUF function.

Da sich der erste Schlüssel immer und immer wieder aus den inhärenten Eigenschaften, beispielsweise einer PUF-Funktion der Schaltungsanordnung ableiten lässt, muss er auch nicht gespeichert werden, was einen deutlichen Sicherheitsgewinn gegen Angriffe darstellt.Since the first key over and over again from the inherent properties, such as a PUF function of the circuit can be derived, it does not need to be stored, which represents a significant gain in security against attacks.

Ein weiteres Ausführungsbeispiel des Verfahrens zum Betreiben einer Schaltungsanordnung weist die folgenden zusätzlichen Schritte auf: Erzeugen eines zweiten Schlüssels, wobei der zweite Schlüssel von einer Zufallszahl und/oder von einem in der Schaltungsanordnung hinterlegtem Wert abhängt, Verschlüsseln des in den Speicher zu schreibenden Datenwertes unter Verwendung des ersten und zweiten Schlüssels oder Entschlüsseln des aus dem Speicher gelesenen Datenwertes unter Verwendung des ersten und zweiten Schlüssels.A further embodiment of the method for operating a circuit arrangement has the following additional steps: generating a second key, wherein the second key depends on a random number and / or on a value stored in the circuit arrangement, encrypting the data value to be written into the memory using of the first and second keys or decrypting the data read from the memory using the first and second keys.

Durch die Verwendung von zwei unterschiedlich erzeugten Schlüsseln zur Verschlüsselung, wird die Qualität/Stärke der Verschlüsselung der Datenwerte signifikant erhöht. Der erste und der zweite Schlüssel können entweder, beispielsweise mittels einer XOR-Funktion, zu einem gemeinsamen Schlüssel zusammengelegt werden oder es finden zwei voneinander getrennte Verschlüsselungen des Datenwertes mittels einer oder zwei kryptographischer Einheiten statt. Eine der kryptographischen Einheiten kann dabei beispielsweise eine so genannte Memory Encryption Decryption Unit (MED) sein.By using two differently generated keys for encryption, the quality / strength of the encryption of the data values is significantly increased. The first and second keys can either be combined to form a common key, for example by means of an XOR function, or two separate codifications of the data value take place by means of one or two cryptographic units. One of the cryptographic units can be, for example, a so-called Memory Encryption Decryption Unit (MED).

In einem Ausführungsbeispiel des Verfahrens zum Betreiben einer Schaltungsanordnung wird der in den Speicher zu schreibenden Datenwert in einem ersten Schritt mit dem ersten Schlüssel und in einem zweiten Schritt mit dem zweiten Schlüssel verschlüsselt. Die Schritte können auch vertauscht werden, so dass der in den Speicher zu schreibende Datenwert in einem ersten Schritt mit dem zweiten Schlüssel und in einem zweiten Schritt mit dem ersten Schlüssel verschlüsselt wird.In one embodiment of the method for operating a circuit arrangement, the data value to be written into the memory is encrypted in a first step with the first key and in a second step with the second key. The steps can also be swapped so that the data value to be written into the memory is encrypted in a first step with the second key and in a second step with the first key.

Ein weiteres Ausführungsbeispiel des Verfahrens zum Betreiben einer Schaltungsanordnung weist die folgenden zusätzlichen Schritte auf: Erzeugen eines dritten und/oder eines weiteren Schlüssels, wobei der dritte und/oder weitere Schlüssel von einer Zufallszahl und/oder von einem in der Schaltungsanordnung hinterlegtem Wert abhängt, Verschlüsseln des in den Speicher zu schreibenden Datenwertes unter Verwendung des ersten, zweiten, dritten und/oder weiteren Schlüssels oder Entschlüsseln des aus dem Speicher gelesenen Datenwertes unter Verwendung des ersten, zweiten, dritten und/oder weiteren Schlüssels.A further exemplary embodiment of the method for operating a circuit arrangement has the following additional steps: generating a third and / or a further key, wherein the third and / or further key depends on a random number and / or on a value stored in the circuit arrangement, encrypting the data value to be written into the memory using the first, second, third and / or further keys or decrypting the data read from the memory using the first, second, third and / or further key.

Der erste, zweite, dritte und eventuell weitere Schlüssel können beliebig zu einem oder mehreren gemeinsamen Schlüsseln zusammengelegt werden. Dieses kann beispielsweise durch bitweises XOR bilden erfolgen. In einem weiteren Ausführungsbeispiel kann die Verschlüsselungen des Datenwerts durch mehrere, aufeinander folgende, Verschlüsselungsschritte und mittels verschiedener Schlüssel erfolgen, wobei die Reihenfolge der Verschlüsselungsschritte beliebig veränderbar ist. Für die Verschlüsselung können eine oder mehrere kryptographische Einheiten verwendet werden.The first, second, third and possibly further keys can be combined as desired to form one or more shared keys. This can be done for example by bitwise XOR. In a further embodiment, the encryption of the data value by several, successive, encryption steps and by means of different keys can be done, the order of the encryption steps is arbitrarily changeable. For encryption one or more cryptographic units can be used.

In einem Ausführungsbeispiel des Verfahrens zum Betreiben einer Schaltungsanordnung wird der in den Speicher zu schreibende Datenwert in einem ersten Schritt mit dem ersten Schlüssel und in einem zweiten Schritt mit dem zweiten, dritten und/oder einem weiteren Schlüssel verschlüsselt oder in einem weiteren Ausführungsbeispiel in einem ersten Schritt mit dem zweiten, dritten und/oder einem weiteren Schlüssel und in einem zweiten Schritt mit dem ersten Schlüssel verschlüsselt.In one embodiment of the method for operating a circuit arrangement, the data value to be written into the memory is encrypted in a first step with the first key and in a second step with the second, third and / or another key or in a further embodiment in a first Step with the second, third and / or one another key and encrypted in a second step with the first key.

In einem Ausführungsbeispiel des Verfahrens zum Betreiben einer Schaltungsanordnung weist der Speicher einen oder mehrere Bereiche zum Speichern eines oder mehrerer Schlüssel bzw. eines oder mehrerer Teile eines Schlüssels auf. Der erste, zweite, dritte und/oder ein weiterer Schlüssel oder ein Teil des ersten, zweiten, dritten und/oder eines weiteren Schlüssels können beispielsweise in einem Speicher gespeichert werden. Die Schlüssel bzw. Teile eines Schlüssels können aber auch in verschiedenen Speichern, versteckt oder offen, abgelegt sein, wobei der Schlüssel während des Herstellungsprozesses oder während des Betriebs erzeugt und abgelegt werden kann. Es ist auch möglich, einen Wert, welcher als Schlüssel verwendet werden kann, außerhalb des Speichers in der Schaltungsanordnung abzulegen.In one embodiment of the method for operating a circuit arrangement, the memory has one or more areas for storing one or more keys or one or more parts of a key. The first, second, third and / or another key or part of the first, second, third and / or another key can be stored, for example, in a memory. However, the keys or parts of a key can also be stored in different stores, hidden or open, wherein the key can be generated and stored during the manufacturing process or during operation. It is also possible to store a value which can be used as a key outside of the memory in the circuit arrangement.

Nachfolgend werden bevorzugte Ausführungsbeispiele der Schaltungsanordnung anhand der Figuren näher erläutert. Es zeigen:Hereinafter, preferred embodiments of the circuit arrangement will be explained in more detail with reference to FIGS. Show it:

1 ein Ausführungsbeispiel einer Schaltungsanordnung 100. 1 an embodiment of a circuit arrangement 100 ,

2 ein weiteres Ausführungsbeispiel einer Schaltungsanordnung 100. 2 a further embodiment of a circuit arrangement 100 ,

In 1 ist ein Ausführungsbeispiel einer Schaltungsanordnung 100 dargestellt. Die Schaltungsanordnung 100 weist eine Verarbeitungseinheit 10, beispielsweise eine CPU, einen Speicher 20, der mit der Verarbeitungseinheit 10 zur Ausführung eines Lese- und/oder Schreibzugriffs, gekoppelt ist, eine kryptographische Einheit 40 zum Verschlüsseln eines in den Speicher 20 zu schreibenden Datenwertes oder Entschlüsseln eines aus dem Speicher 20 gelesenen Datenwertes sowie eine Identifikationsschaltung 50 auf. Die Identifikationsschaltung 50 ist eingerichtet, um einen ersten Schlüssel S1 zum Verschlüsseln, des in den Speicher 20 zu schreibenden Datenwertes oder Entschlüsseln des aus dem Speicher 20 gelesenen Datenwertes, zu erzeugen, wobei der erste Schlüssel S1 von den inhärenten Eigenschaften der Schaltungsanordnung 100 abhängt. Die Kopplung zwischen der Verarbeitungseinheit 10 und dem Speicher 20 kann beispielsweise über einen Bus 30 erfolgen. Die Verarbeitungseinheit 10, die kryptographische Einheit 40 und die Identifikationsschaltung 50 können, aus Sicherheitsgründen, in einem Ausführungsbeispiel in enger räumlicher Nähe angeordnet sein. Die Identifikationsschaltung 50 kann beispielsweise eine PUF-Schaltung sein.In 1 is an embodiment of a circuit arrangement 100 shown. The circuit arrangement 100 has a processing unit 10 , for example, a CPU, a memory 20 that with the processing unit 10 for performing a read and / or write access, is a cryptographic unit 40 to encrypt one in memory 20 to write data or decrypt one from memory 20 read data value and an identification circuit 50 on. The identification circuit 50 is set up to encrypt a first key S1 in the memory 20 to write data value or decrypt the memory 20 data value to be generated, wherein the first key S1 of the inherent properties of the circuit arrangement 100 depends. The coupling between the processing unit 10 and the memory 20 can for example via a bus 30 respectively. The processing unit 10 , the cryptographic unit 40 and the identification circuit 50 may, for safety reasons, be arranged in close proximity in one embodiment. The identification circuit 50 may be a PUF circuit, for example.

Die Erzeugung des ersten Schlüssels S1 aus den inhärenten Eigenschaften der Schaltungsanordnung 100, beispielsweise mittels PUF-Funktion, hat den Vorteil, dass der erste Schlüssel S1 reproduzierbar ist und damit auch nicht gespeichert werden muss, was einen deutlichen Sicherheitsgewinn gegen Angriffe von Außen darstellt. PUFs basieren auf Schwankungen im Herstellungsprozess, Materialschwankungen oder Ähnlichem und sind bei der Herstellung nicht gezielt einstellbar. Durch die Bandbreite der Schwankungen und die Anzahl der verwendeten Identifikationsbits ist sichergestellt, dass jede Schaltungsanordnung einer Serie einen individuellen Schlüssel erhält.The generation of the first key S1 from the inherent properties of the circuit arrangement 100 , For example by means of PUF function, has the advantage that the first key S1 is reproducible and thus does not need to be stored, which represents a significant gain in security against attacks from outside. PUFs are based on variations in the manufacturing process, material fluctuations or the like and are not specifically adjustable during production. The bandwidth of the fluctuations and the number of identification bits used ensures that each circuit arrangement of a series receives an individual key.

Die Verschlüsselung der Datenwerte kann beispielsweise mittels Blockchiffren wie Feistelchiffre/Feistelnetzwerk oder einem Substitution-Permutation Network (SPN) in der kryptographischen Einheit erfolgen.The encryption of the data values can take place, for example, by means of block ciphers such as Feistelchiffre / Feistelnetzwerk or a substitution-permutation network (SPN) in the cryptographic unit.

In 2 ist ein weiteres Ausführungsbeispiel einer Schaltungsanordnung 100 dargestellt. Die Schaltungsanordnung 100 weist ferner eine Schlüsselerzeugungseinrichtung 70 auf, wobei die Schlüsselerzeugungseinrichtung 70 eingerichtet ist, um einen zweiten Schlüssel S2, mittels einer Zufallszahl und/oder eines in der Schaltungsanordnung (100) hinterlegten Wertes, zu erzeugen, wobei die kryptographische Einheit 40 eingerichtet ist, um den ersten Schlüssel S1 und den zweiten Schlüssel S2 zur Verschlüsselung des in den Speicher 20 zu schreibenden Datenwertes oder zum Entschlüsseln des aus dem Speicher 20 gelesenen Datenwertes zu verwenden.In 2 is another embodiment of a circuit arrangement 100 shown. The circuit arrangement 100 also has a key generator 70 on, with the key generator 70 is arranged to generate a second key S2 by means of a random number and / or one in the circuit arrangement ( 100 ) stored value, the cryptographic unit 40 is set up to the first key S1 and the second key S2 for encryption of the memory 20 to write data or to decrypt the memory 20 read data value to use.

Durch die Verwendung von zwei unterschiedlich erzeugten Schlüsseln S1, S2 zur Verschlüsselung, wird die Qualität/Stärke der Verschlüsselung der Datenwerte signifikant erhöht. Da der erste Schlüssel S1 sich aus den inhärenten Eigenschaften der Schaltungsanordnung 100 ergibt und demzufolge nicht abgespeichert werden muss, ist er praktisch nicht zu ermitteln. Der zweite Schlüssel S2 kann beispielsweise unter Verwendung einer Zufallszahl erzeugt werden. Es ist aber auch möglich, dass der zweite Schlüssel S2 zumindest teilweise ein Datum aufweist, welches in dem Speicher 20, versteckt oder offen, hinterlegt ist. Der Speicher 20 kann beispielsweise ein Read Only Memory (ROM) oder einem Non Volatile Memory (NVM) sein. Der zweite Schlüssel S2 kann aber auch zu einem Teil auf einer Zufallszahl basieren und zu einem weiteren Teil auf einem in der Schaltungsanordnung 100 hinterlegtem Datum.By using two differently generated keys S1, S2 for encryption, the quality / strength of the encryption of the data values is significantly increased. Since the first key S1 is the inherent properties of the circuit arrangement 100 results and therefore does not need to be stored, it is practically impossible to determine. The second key S2 may be generated, for example, using a random number. But it is also possible that the second key S2 at least partially has a date which in the memory 20 , hidden or open, is deposited. The memory 20 may be, for example, a read only memory (ROM) or a nonvolatile memory (NVM). However, the second key S2 may also be based in part on a random number and on a further part on one in the circuit arrangement 100 deposited date.

Der erste Schlüssel S1 und der zweite Schlüssel S2 können entweder zu einem gemeinsamen Schlüssel zusammengelegt werden oder es finden zwei voneinander getrennte Verschlüsselungen des Datenwertes mittels einer oder zwei kryptographischer Einheiten 40 statt. Eine der kryptographischen Einheiten 40 kann dabei beispielsweise eine so genannte Memory Encryption Decryption Unit (MED) sein.The first key S1 and the second key S2 can either be combined to form a common key or two separate encryptions of the data value can be found by means of one or two cryptographic units 40 instead of. One of the cryptographic units 40 can for example a so-called Memory Encryption Decryption Unit (MED).

In einem Ausführungsbeispiel kann die Schlüsselerzeugungseinrichtung 70 einen dritten und/oder einen weiteren Schlüssel, mittels einer Zufallszahl und/oder eines in der Schaltungsanordnung hinterlegten Wertes, erzeugen, wobei die kryptographische Einheit 40 eingerichtet ist, um den ersten Schlüssel S1, den zweiten Schlüssel S2, den dritten und/oder weiteren Schlüssel zur Verschlüsselung des in den Speicher 20 zu schreibenden Datenwertes oder zum Entschlüsseln des aus dem Speicher 20 gelesenen Datenwertes zu verwenden.In one embodiment, the key generator may 70 generate a third and / or another key, by means of a random number and / or a stored value in the circuit arrangement, wherein the cryptographic unit 40 is set up to the first key S1, the second key S2, the third and / or further key for encryption of the memory 20 to write data or to decrypt the memory 20 read data value to use.

Der erste Schlüssel S1, der zweite Schlüssel S2, der dritte Schlüssel und eventuell weitere Schlüssel können beliebig zu einem oder mehreren gemeinsamen Schlüsseln zusammengelegt werden. Dieses kann beispielsweise durch bitweises XOR bilden erfolgen. In einem weiteren Ausführungsbeispiel können mehrere Verschlüsselungen des Datenwerts mittels verschiedener Schlüssel sequenziell durchgeführt werden, wobei die Reihenfolge beliebig veränderbar ist. Für die Verschlüsselung können eine oder mehrere kryptographische Einheiten 40 verwendet werden.The first key S1, the second key S2, the third key and possibly further keys can be combined as desired to form one or more shared keys. This can be done for example by bitwise XOR. In a further embodiment, multiple encryption of the data value can be performed sequentially by means of different keys, wherein the sequence is arbitrarily changeable. For encryption, one or more cryptographic units 40 be used.

In der Schaltungsanordnung 100 kann der Speicher einen oder mehrere Bereiche zum Speichern eines oder mehrerer Schlüssel bzw. eines oder mehrerer Teile eines Schlüssels aufweisen. Die Schlüssel bzw. Teile eines Schlüssels können auch in verschiedenen Speichern 20, versteckt oder offen, abgelegt sein, wobei der oder die Schlüssel während des Herstellungsprozesses oder während des Betriebs erzeugt und abgelegt werden können. Es kann aber auch ein Wert, welcher als Schlüssel verwendet werden kann, außerhalb des Speichers in der Schaltungsanordnung 100 abgelegt werden.In the circuit arrangement 100 The memory may have one or more areas for storing one or more keys or one or more parts of a key. The keys or parts of a key can also be stored in different stores 20 hidden or open, where the key (s) can be generated and stored during the manufacturing process or during operation. However, it is also possible to use a value which can be used as a key outside the memory in the circuit arrangement 100 be filed.

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 PatentliteraturCited patent literature

  • EP 1118941 B1 [0006] EP 1118941 B1 [0006]

Claims (19)

Schaltungsanordnung (100), aufweisend, – eine Verarbeitungseinheit (10), – einen Speicher (20), der mit der Verarbeitungseinheit (10) zur Ausführung eines Lese- und/oder Schreibzugriffs gekoppelt ist, – eine kryptographische Einheit (40) zum Verschlüsseln eines in den Speicher (20) zu schreibenden Datenwertes oder Entschlüsseln eines aus dem Speicher (20) gelesenen Datenwertes, dadurch gekennzeichnet, dass die Schaltungsanordnung (100) ferner eine Identifikationsschaltung (50) aufweist, wobei die Identifikationsschaltung (50) eingerichtet ist, um einen ersten Schlüssel (S1) zum Verschlüsseln, des in den Speicher (20) zu schreibenden Datenwertes oder Entschlüsseln des aus dem Speicher (20) gelesenen Datenwertes, zu erzeugen, wobei der erste Schlüssel (S1) von den inhärenten Eigenschaften der Schaltungsanordnung (100) abhängt.Circuit arrangement ( 100 ), comprising, - a processing unit ( 10 ), - a memory ( 20 ) connected to the processing unit ( 10 ) is coupled to perform a read and / or write access, - a cryptographic unit ( 40 ) to encrypt one in the memory ( 20 ) data to be written or decrypting one from memory ( 20 ) read data value, characterized in that the circuit arrangement ( 100 ) an identification circuit ( 50 ), wherein the identification circuit ( 50 ) is set up to encrypt a first key (S1) into the memory (S1). 20 ) data to be written or decrypting from the memory ( 20 ), wherein the first key (S1) depends on the inherent properties of the circuit arrangement ( 100 ) depends. Schaltungsanordnung (100) nach Anspruch 1, wobei die Identifikationsschaltung (50) eine PUF-Schaltung ist.Circuit arrangement ( 100 ) according to claim 1, wherein the identification circuit ( 50 ) is a PUF circuit. Schaltungsanordnung (100) nach einem der Ansprüche 1 oder 2, wobei die Schaltungsanordnung (100) ferner eine Schlüsselerzeugungseinrichtung (70) aufweist, wobei die Schlüsselerzeugungseinrichtung (70) eingerichtet ist, um einen zweiten Schlüssel (S2), mittels einer Zufallszahl und/oder eines in der Schaltungsanordnung (100) hinterlegten Wertes, zu erzeugen, wobei die kryptographische Einheit (40) eingerichtet ist, um den ersten Schlüssel (S1) und den zweiten Schlüssel (S2) zur Verschlüsselung des in den Speicher (20) zu schreibenden Datenwertes oder zum Entschlüsseln des aus dem Speicher (20) gelesenen Datenwertes zu verwenden.Circuit arrangement ( 100 ) according to one of claims 1 or 2, wherein the circuit arrangement ( 100 ) a key generating device ( 70 ), wherein the key generation device ( 70 ) is adapted to a second key (S2), by means of a random number and / or in the circuit arrangement ( 100 ) value, whereby the cryptographic unit ( 40 ) is arranged to the first key (S1) and the second key (S2) for encryption of the memory in the memory (S1) 20 ) data to be written or for decrypting from the memory ( 20 ) data value to be used. Schaltungsanordnung (100) nach Anspruch 3, wobei die Schlüsselerzeugungseinrichtung (70) eingerichtet ist, um einen dritten Schlüssel und/oder einen weiteren Schlüssel, mittels einer Zufallszahl und/oder eines in der Schaltungsanordnung (100) hinterlegten Wertes, zu erzeugen, wobei die kryptographische Einheit (40) eingerichtet ist, um den ersten Schlüssel (S1), den zweiten Schlüssel (S2), den dritten Schlüssel und/oder einen weiteren Schlüssel zur Verschlüsselung des in den Speicher (20) zu schreibenden Datenwertes oder zum Entschlüsseln des aus dem Speicher (20) gelesenen Datenwertes zu verwenden.Circuit arrangement ( 100 ) according to claim 3, wherein the key generating means ( 70 ) is adapted to a third key and / or another key, by means of a random number and / or in the circuit arrangement ( 100 ) value, whereby the cryptographic unit ( 40 ) is set up to store the first key (S1), the second key (S2), the third key and / or a further key for encryption of the key into the memory (S1). 20 ) data to be written or for decrypting from the memory ( 20 ) data value to be used. Schaltungsanordnung (100) nach einem der Ansprüche 3 oder 4, wobei die Schaltungsanordnung (100) eingereichtet ist, um die Verschlüsselung des in den Speicher (20) zu schreibenden Datenwertes mit dem ersten Schlüssel (S1) und die Verschlüsselung des in den Speicher (20) zu schreibenden Datenwertes mit dem zweiten Schlüssel (S2) und/oder einem weiteren Schlüssel sequenziell abzuarbeiten.Circuit arrangement ( 100 ) according to one of claims 3 or 4, wherein the circuit arrangement ( 100 ) is submitted to the encryption of the memory ( 20 ) to be written data with the first key (S1) and the encryption of the memory ( 20 ) to be written data to be written sequentially with the second key (S2) and / or another key. Schaltungsanordnung (100) nach einem der vorhergehenden Ansprüche, wobei der Speicher (20) einen Bereich zum Speichern eines Schlüssels (S1, S2) aufweist.Circuit arrangement ( 100 ) according to one of the preceding claims, wherein the memory ( 20 ) has an area for storing a key (S1, S2). Schaltungsanordnung (100) nach einem der Ansprüche 1 bis 5, wobei der Speicher (20) zumindest zwei Bereiche zum Speichern eines Schlüssels (S1, S2) und/oder eines Schlüsselteiles aufweist.Circuit arrangement ( 100 ) according to one of claims 1 to 5, wherein the memory ( 20 ) has at least two areas for storing a key (S1, S2) and / or a key part. Mikroprozessor, aufweisend eine Schaltungsanordnung (100) nach einem der Ansprüche 1 bis 7.Microprocessor, comprising a circuit arrangement ( 100 ) according to one of claims 1 to 7. Verfahren zum Betreiben einer Schaltungsanordnung (100), mit folgenden Schritten: – Erzeugen eines ersten Schlüssels, wobei der erste Schlüssel von einer inhärenten Eigenschaften der Schaltungsanordnung (100) abhängt, – Verschlüsseln eines in einen Speicher (20) zu schreibenden Datenwertes unter Verwendung des ersten Schlüssels (S1) oder Entschlüsseln eines aus einem Speicher (20) gelesenen Datenwertes unter Verwendung des ersten Schlüssels (S1).Method for operating a circuit arrangement ( 100 ), comprising the following steps: generating a first key, wherein the first key of an inherent properties of the circuit arrangement ( 100 ), - encrypt one into a memory ( 20 ) data to be written using the first key (S1) or decrypting one from a memory ( 20 ) read data using the first key (S1). Verfahren nach Anspruch 9, wobei der erste Schlüssel (S1) basierend auf einer PUF-Funktion erzeugt wird.The method of claim 9, wherein the first key (S1) is generated based on a PUF function. Verfahren nach einem der Ansprüche 9 bis 10, mit folgenden Schritten: – Erzeugen eines zweiten Schlüssels (S2) basierend auf einer Zufallszahl und/oder eines in der Schaltungsanordnung (100) hinterlegten Wertes, – Verschlüsseln des in den Speicher (20) zu schreibenden Datenwertes unter Verwendung des ersten Schlüssels (S1) und des zweiten Schlüssels (S2) oder Entschlüsseln des aus dem Speicher (20) gelesenen Datenwertes unter Verwendung des ersten Schlüssels (S1) und des zweiten Schlüssels (S2).Method according to one of Claims 9 to 10, with the following steps: generating a second key (S2) based on a random number and / or in the circuit arrangement ( 100 ) stored value, - Encrypt the memory ( 20 ) data to be written using the first key (S1) and the second key (S2) or decrypting from the memory ( 20 ) using the first key (S1) and the second key (S2). Verfahren nach einem der Ansprüche 9 bis 11, mit folgenden Schritten: – Erzeugen eines dritten Schlüssels und/oder eines weiteren Schlüssels, wobei der dritte Schlüssel und/oder der weitere Schlüssel von einer Zufallszahl und/oder von einem in der Schaltungsanordnung (100) hinterlegten Wert abhängt, – Verschlüsseln des in den Speicher (20) zu schreibenden Datenwertes unter Verwendung des ersten Schlüssels (S1), des zweiten Schlüssels (S2), des dritten Schlüssels und/oder eines weiteren Schlüssels oder Entschlüsseln des aus dem Speicher (20) gelesenen Datenwertes unter Verwendung des ersten Schlüssels (S1), des zweiten Schlüssels (S2), des dritten Schlüssels und/oder eines weiteren Schlüssels. Method according to one of claims 9 to 11, with the following steps: generating a third key and / or another key, wherein the third key and / or the further key of a random number and / or one in the circuit arrangement ( 100 ) deposited value, - encrypting the memory ( 20 ) data to be written using the first key (S1), the second key (S2), the third key and / or another key or decrypting from the memory ( 20 ) using the first key (S1), the second key (S2), the third key and / or another key. Verfahren nach einem der Ansprüche 9 bis 11, wobei der in den Speicher (20) zu schreibenden Datenwert in einem ersten Schritt mit dem ersten Schlüssel (S1) und in einem zweiten Schritt mit dem zweiten Schlüssel (S2) verschlüsselt wird.Method according to one of Claims 9 to 11, in which the memory ( 20 ) to be written data in a first step with the first key (S1) and in a second step with the second key (S2) is encrypted. Verfahren nach einem der Ansprüche 9 bis 11, wobei der in den Speicher (20) zu schreibenden Datenwert in einem ersten Schritt mit dem zweiten Schlüssel (S2) und in einem zweiten Schritt mit dem ersten Schlüssel (S1) verschlüsselt wird.Method according to one of Claims 9 to 11, in which the memory ( 20 ) to be written data in a first step with the second key (S2) and in a second step with the first key (S1) is encrypted. Verfahren nach Anspruch 12, wobei der in den Speicher (20) zu schreibenden Datenwert in einem ersten Schritt mit dem ersten Schlüssel (S1) und in einem zweiten Schritt mit dem zweiten Schlüssel (S2), dem dritten Schlüssel und/oder einem weiteren Schlüssel verschlüsselt wird.The method of claim 12, wherein the memory ( 20 ) to be written data in a first step with the first key (S1) and in a second step with the second key (S2), the third key and / or another key is encrypted. Verfahren nach Anspruch 12, wobei der in den Speicher (20) zu schreibenden Datenwert in einem ersten Schritt mit dem zweiten Schlüssel (S2), dem dritten Schlüssel und/oder einem weiteren Schlüssel und in einem zweiten Schritt mit dem ersten Schlüssel (S1) verschlüsselt wird.The method of claim 12, wherein the memory ( 20 ) to be written data in a first step with the second key (S2), the third key and / or another key and in a second step with the first key (S1) is encrypted. Verfahren nach einem der Ansprüche 9 bis 16, wobei ein erster Schlüssel (S1) und/oder ein Teil des ersten Schlüssels (S1) in dem Speicher (20) gespeichert wird.Method according to one of claims 9 to 16, wherein a first key (S1) and / or a part of the first key (S1) in the memory ( 20 ) is stored. Verfahren nach einem der Ansprüche 11 bis 17, wobei ein zweiter Schlüssel (S2) und/oder ein weiterer Schlüssel und/oder ein Teil des zweiten Schlüssels (S2) und/oder eines weiteren Schlüssels in dem Speicher (20) gespeichert werden.Method according to one of claims 11 to 17, wherein a second key (S2) and / or a further key and / or a part of the second key (S2) and / or another key in the memory ( 20 ) get saved. Verfahren nach einem der Ansprüche 11 bis 16, wobei ein erster Schlüssel (S1) oder ein Teil des ersten Schlüssels (S1) in einem ersten Bereich der Speichers (20) gespeichert wird und zumindest ein weiterer Schlüssel und/oder zumindest ein Teil eines weiteren Schlüssels in einem zweiten Bereich des Speichers (20) gespeichert wird.Method according to one of claims 11 to 16, wherein a first key (S1) or a part of the first key (S1) is stored in a first area of the memory (S1). 20 ) and at least one further key and / or at least part of a further key in a second area of the memory ( 20 ) is stored.
DE201010045580 2010-09-16 2010-09-16 Circuit arrangement for use in microprocessor for e.g. smart card, has identification circuit producing key for encrypting data value to be written or decrypting data value to be read, where key depends on arrangement inherent properties Ceased DE102010045580A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
DE201010045580 DE102010045580A1 (en) 2010-09-16 2010-09-16 Circuit arrangement for use in microprocessor for e.g. smart card, has identification circuit producing key for encrypting data value to be written or decrypting data value to be read, where key depends on arrangement inherent properties

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE201010045580 DE102010045580A1 (en) 2010-09-16 2010-09-16 Circuit arrangement for use in microprocessor for e.g. smart card, has identification circuit producing key for encrypting data value to be written or decrypting data value to be read, where key depends on arrangement inherent properties

Publications (1)

Publication Number Publication Date
DE102010045580A1 true DE102010045580A1 (en) 2012-03-22

Family

ID=45768848

Family Applications (1)

Application Number Title Priority Date Filing Date
DE201010045580 Ceased DE102010045580A1 (en) 2010-09-16 2010-09-16 Circuit arrangement for use in microprocessor for e.g. smart card, has identification circuit producing key for encrypting data value to be written or decrypting data value to be read, where key depends on arrangement inherent properties

Country Status (1)

Country Link
DE (1) DE102010045580A1 (en)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102014205306A1 (en) * 2014-03-21 2015-09-24 Bayerische Motoren Werke Aktiengesellschaft Method for storing an encryption key and encryption system for a motor vehicle
ES2558078A1 (en) * 2014-08-01 2016-02-01 Universitat Pompeu Fabra Portable electronic coin device (Machine-translation by Google Translate, not legally binding)
US9875378B2 (en) 2015-06-12 2018-01-23 QUALCOMOM Incorporated Physically unclonable function assisted memory encryption device techniques
US11392301B2 (en) 2020-04-02 2022-07-19 Axiado Corporation Secure boot hardware including hardware serial presence detection

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1118941B1 (en) 2000-01-18 2008-01-02 Infineon Technologies AG Microprocessor system and arrangement in order to operate a microprocessor system

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1118941B1 (en) 2000-01-18 2008-01-02 Infineon Technologies AG Microprocessor system and arrangement in order to operate a microprocessor system

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102014205306A1 (en) * 2014-03-21 2015-09-24 Bayerische Motoren Werke Aktiengesellschaft Method for storing an encryption key and encryption system for a motor vehicle
ES2558078A1 (en) * 2014-08-01 2016-02-01 Universitat Pompeu Fabra Portable electronic coin device (Machine-translation by Google Translate, not legally binding)
US9875378B2 (en) 2015-06-12 2018-01-23 QUALCOMOM Incorporated Physically unclonable function assisted memory encryption device techniques
US11392301B2 (en) 2020-04-02 2022-07-19 Axiado Corporation Secure boot hardware including hardware serial presence detection
US11416150B2 (en) 2020-04-02 2022-08-16 Axiado Corporation Associating a processing chip and a non-volatile memory chip
US11520494B2 (en) 2020-04-02 2022-12-06 Axiado Corporation Securely booting a processing chip
US11640250B2 (en) 2020-04-02 2023-05-02 Axiado Corporation Secure boot of a processing chip via hardware memory configuration
US11644984B2 (en) 2020-04-02 2023-05-09 Axiado Corporation Securely booting a processing chip to execute securely updated executable code
US11650741B2 (en) 2020-04-02 2023-05-16 Axiado Corporation Securely booting a processor complex via a securely bootable subsystem
US11768611B2 (en) 2020-04-02 2023-09-26 Axiado Corporation Secure boot of a processing chip
US12008246B2 (en) 2020-04-02 2024-06-11 Axiado Corporation Secure executable code update for a securely-bootable processing chip

Similar Documents

Publication Publication Date Title
DE102011088502B3 (en) Method and apparatus for securing block ciphers against template attacks
EP2899714B1 (en) Secure provision of a key
DE102013203415B4 (en) Create a derived key from a cryptographic key using a non-cloning function
DE60217260T2 (en) Data processing and encryption unit
DE102014206992A1 (en) Random number generator and method for generating random numbers
DE102009000869A1 (en) Method and device for tamper-proof transmission of data
EP1099197A1 (en) Device for supplying output data in reaction to input data, method for checking authenticity and method for encrypted data transmission
EP3552344B1 (en) Bidirectionally linked blockchain structure
EP0981115A2 (en) Encyphering program execution method for data encyphering in a microprocessor-supported portable data carrier
DE102010045580A1 (en) Circuit arrangement for use in microprocessor for e.g. smart card, has identification circuit producing key for encrypting data value to be written or decrypting data value to be read, where key depends on arrangement inherent properties
DE602004001732T2 (en) Data encryption in an electronic device with multiple symmetric processors
DE102008055076A1 (en) Device and method for protecting data, computer program, computer program product
DE102014210282A1 (en) Generate a cryptographic key
DE102015206643A1 (en) Apparatus and method for generating a key in a programmable hardware module
DE10232348A1 (en) Integrated semiconductor circuit with internal bus data transmission and associated data transmission method
DE102014117311B4 (en) Communication arrangement and method for generating a cryptographic key
EP3629516A1 (en) Decentralised identity management solution
DE112019004146T5 (en) AUTHENTICATION OF FILES
DE102015208899A1 (en) Apparatus and method for flexibly generating cryptographic private keys and device with flexibly generated cryptographic private keys
DE102021101697B3 (en) DATA PROCESSING DEVICE AND METHOD FOR PROCESSING SECRET DATA
DE102009029749A1 (en) System for generating arbitrarily long randomized bit lists on computers in normal operation
EP3371733B1 (en) Encrypting the memory content of a memory in an embedded system
DE102017005057A1 (en) Personalizing a semiconductor element
DE102012219205A1 (en) Apparatus and method for carrying out a cryptographic method
EP1573955B1 (en) Encoding method

Legal Events

Date Code Title Description
R079 Amendment of ipc main class

Free format text: PREVIOUS MAIN CLASS: G06F0021240000

Ipc: G06F0021600000

R079 Amendment of ipc main class

Free format text: PREVIOUS MAIN CLASS: G06F0021240000

Ipc: G06F0021600000

Effective date: 20130201

R016 Response to examination communication
R002 Refusal decision in examination/registration proceedings
R003 Refusal decision now final