DE102023108678A1 - Method for signing or decrypting data with a cryptographic key and computer program product and device therefor - Google Patents
Method for signing or decrypting data with a cryptographic key and computer program product and device therefor Download PDFInfo
- Publication number
- DE102023108678A1 DE102023108678A1 DE102023108678.2A DE102023108678A DE102023108678A1 DE 102023108678 A1 DE102023108678 A1 DE 102023108678A1 DE 102023108678 A DE102023108678 A DE 102023108678A DE 102023108678 A1 DE102023108678 A1 DE 102023108678A1
- Authority
- DE
- Germany
- Prior art keywords
- key
- physical property
- indicator
- physical properties
- data
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 44
- 238000004590 computer program Methods 0.000 title claims abstract description 5
- 230000000704 physical effect Effects 0.000 claims abstract description 171
- 238000012544 monitoring process Methods 0.000 claims description 4
- 230000001419 dependent effect Effects 0.000 claims description 3
- 230000007704 transition Effects 0.000 description 5
- 230000006399 behavior Effects 0.000 description 4
- 230000006870 function Effects 0.000 description 4
- 239000003990 capacitor Substances 0.000 description 3
- JJWKPURADFRFRB-UHFFFAOYSA-N carbonyl sulfide Chemical compound O=C=S JJWKPURADFRFRB-UHFFFAOYSA-N 0.000 description 3
- 230000005855 radiation Effects 0.000 description 3
- 239000004065 semiconductor Substances 0.000 description 3
- 230000002123 temporal effect Effects 0.000 description 3
- 238000012795 verification Methods 0.000 description 2
- 241000876446 Lanthanotidae Species 0.000 description 1
- 230000032683 aging Effects 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 230000000717 retained effect Effects 0.000 description 1
- 230000036962 time dependent Effects 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/602—Providing cryptographic facilities or services
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/30—Authentication, i.e. establishing the identity or authorisation of security principals
- G06F21/31—User authentication
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Health & Medical Sciences (AREA)
- Bioethics (AREA)
- General Health & Medical Sciences (AREA)
- Computer Hardware Design (AREA)
- Computer Security & Cryptography (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Storage Device Security (AREA)
Abstract
Die Erfindung betrifft ein Verfahren zum Signieren und/oder Entschlüsseln von Daten (18) mit einem kryptographischen Schlüssel (20, 20a, 20b). Das Verfahren umfasst ein Empfangen (40) einer Aufforderung (42) zum Erzeugen mindestens eines Schlüssels (20, 20a, 20b) zur Signatur oder zur Entschlüsselung von Daten (18), ein Erfassen (43) eines Indikators (34), ein Auswählen (44) mindestens einer physikalischen Eigenschaft (30a, 30b, 30c, 30d) mindestens eines Bauelements (26a, 26b, 26c, 26d) einer Vorrichtung (10) in Abhängigkeit vom Indikator (34), ein Erzeugen (46) mindestens eines Schlüssels (20, 20a, 20b) in Abhängigkeit von der ausgewählten physikalischen Eigenschaft (30a, 30b, 30c, 30d) und ein Signieren (48) und/oder Entschlüsseln der Daten (18) in Abhängigkeit von dem mindestens einen Schlüssel (20, 20a, 20b).Die Erfindung betrifft ferner ein Computerprogrammprodukt und eine Vorrichtung (10).The invention relates to a method for signing and/or decrypting data (18) with a cryptographic key (20, 20a, 20b). The method comprises receiving (40) a request (42) to generate at least one key (20, 20a, 20b) for signing or decrypting data (18), detecting (43) an indicator (34), selecting (44) at least one physical property (30a, 30b, 30c, 30d) of at least one component (26a, 26b, 26c, 26d) of a device (10) depending on the indicator (34), generating (46) at least one key (20, 20a, 20b) depending on the selected physical property (30a, 30b, 30c, 30d) and signing (48) and/or decrypting the data (18) depending on the at least one key (20, 20a, 20b).The invention further relates to a computer program product and a device (10).
Description
Die Erfindung betrifft ein Signieren und/oder Entschlüsseln von Daten mit einem kryptografischen Schlüssel. Außerdem betrifft die Erfindung eine Vorrichtung zum Signieren und/oder Entschlüsseln von Daten mit einem kryptografischen Schlüssel sowie ein Computerprogrammprodukt zum Ausführen des Verfahrens auf der Vorrichtung.The invention relates to signing and/or decrypting data with a cryptographic key. The invention also relates to a device for signing and/or decrypting data with a cryptographic key and a computer program product for carrying out the method on the device.
Es ist allgemein aus dem Stand der Technik bekannt, Daten mit einer Signatur, nämlich einer digitalen Signatur, zu verknüpfen. Mit der Signatur, nämlich einer elektronischen oder digitalen Signatur, lässt sich ein Unterzeichner oder Signaturersteller eindeutig identifizieren und die Integrität der signierten Daten prüfen. Zum Signieren wird beispielsweise bei asymmetrischen Kryptoverfahren mithilfe eines privaten Schlüssels für die zu signierenden Daten von einem Sender oder Unterzeichner eine Signatur erstellt. Die Signatur wird den Daten hinzugefügt. Ein Empfänger der Daten und der Signatur kann mithilfe eines zuvor erhaltenen öffentlichen Schlüssels des Senders prüfen, ob die Signatur und die Daten eindeutig vom Sender stammen.It is generally known from the prior art to link data with a signature, namely a digital signature. The signature, namely an electronic or digital signature, can be used to uniquely identify a signer or signature creator and to check the integrity of the signed data. To sign, for example, in asymmetric cryptographic procedures, a sender or signer creates a signature using a private key for the data to be signed. The signature is added to the data. A recipient of the data and the signature can use a previously received public key from the sender to check whether the signature and the data clearly originate from the sender.
Anstatt oder zusätzlich zum Hinzufügen der Signatur lassen sich Daten durch Schlüssel, insbesondere kryptografische Schlüssel, auch verschlüsseln und wieder entschlüsseln. Zum Verschlüsseln kann mit dem bereits genannten asymmetrischen Kryptoverfahren, das auch asymmetrisches Verschlüsselungsverfahren genannt wird, die Verschlüsselung von Daten mit einem öffentlichen Schlüssel eines Empfängers erfolgen, die der Empfänger dann mit seinem privaten Schlüssel entschlüsseln kann.Instead of or in addition to adding the signature, data can also be encrypted and decrypted using keys, especially cryptographic keys. To encrypt, the previously mentioned asymmetric cryptographic method, which is also called asymmetric encryption method, can be used to encrypt data with a recipient's public key, which the recipient can then decrypt with his or her private key.
Vorrichtungen, die zum Signieren oder Entschlüsseln eingerichtet sind, tragen einen Schlüssel, insbesondere einen privaten Schlüssel, zum Signieren oder Enterschlüsseln üblicherweise in einem Speicher, der häufig besonders gegen ein Auslesen von unberechtigten Personen geschützt ist. Hierdurch wird sichergestellt, dass ein Schlüssel, insbesondere der private Schlüssel, nicht von unberechtigten Personen verwendet werden kann, um Daten zu signieren oder zu entschlüsseln. Einen Speicher gegen fremdes Auslesen zu schützen ist jedoch sehr aufwendig und ein vollständiger Schutz des Schlüssels ist aufwendig realisierbar. Aus diesem Grund ist es wünschenswert auf das Speichern geheimer Schlüssel möglichst vollständig zu verzichten.Devices that are designed for signing or decrypting carry a key, in particular a private key, for signing or decrypting, usually in a memory that is often particularly protected against being read by unauthorized persons. This ensures that a key, in particular the private key, cannot be used by unauthorized persons to sign or decrypt data. Protecting a memory against being read by others is, however, very complex and complete protection of the key is difficult to implement. For this reason, it is desirable to avoid storing secret keys as much as possible.
Ein Verfahren, mit dem auf das Speichern von geheimen Schlüsseln verzichtet werden kann, basiert auf der Verwendung von sogenannten „physical unclonable functions“, nämlich physikalisch nicht kopierbaren Funktionen, die auch kurz PUF genannt werden. Derartige PUF sind Hardwarestrukturen in einem Halbleiter, die dazu dienen, eine eindeutige Identifikation des Halbleiters zu ermöglichen und hieraus Schlüssel für kryptografische Verfahren zu sichern. Demnach stellt eine PUF ein einzigartiges individuelles Merkmal dar, welches an ein physikalisches Objekt, beispielsweise eine Vorrichtung zum Signieren oder Entschlüsseln, gebunden ist.A method that makes it possible to dispense with the storage of secret keys is based on the use of so-called "physical unclonable functions", i.e. physically non-copyable functions, which are also called PUFs for short. PUFs of this type are hardware structures in a semiconductor that serve to enable the semiconductor to be clearly identified and to use them to secure keys for cryptographic processes. Accordingly, a PUF represents a unique individual feature that is linked to a physical object, for example a device for signing or decrypting.
Im Einzelnen werden physikalische Eigenschaften eines Bauteils, wie etwa eines Halbleiters, verwendet, um einen geheimen Schlüssel nur dann zu erzeugen, wenn dieser benötigt wird. Beispielsweise wird eine Ladungsabbaukurve eines Kondensators aufgenommen und aus dem zeitlichen Verlauf des Ladungsabbaus Startwerte zum Erzeugen eines komplexen Schlüssels extrahiert. Alternativ kann die Ladungsabbaukurve, umgewandelt in digitale Informationen, wie eine Bitfolge, auch selbst als Schlüssel verwendet werden. Die Verwendung von „physikal unclonable functions“ ermöglicht somit den Verzicht auf das Speichern des Schlüssels, da dieser nach Verwendung zum Signieren oder Entschlüsseln direkt wieder gelöscht und zu jeder Zeit neu erzeugt werden kann.In detail, physical properties of a component, such as a semiconductor, are used to generate a secret key only when it is needed. For example, a charge decay curve of a capacitor is recorded and starting values for generating a complex key are extracted from the temporal course of the charge decay. Alternatively, the charge decay curve can be converted into digital information, such as a bit sequence, and used as a key itself. The use of "physically unclonable functions" thus makes it possible to dispense with storing the key, since it can be deleted immediately after being used for signing or decrypting and regenerated at any time.
Hierbei ist zu beachten, dass sich Zustände oder Verläufe physikalischer Eigenschaften von Hardwarestrukturen üblicherweise im Verlauf der Zeit ändern. Genutzte physikalische Eigenschaften, wie ein Einschaltzustand eines Sensors zum Erzeugen eines Schlüssels, können demnach durch Alterung des Sensors oder durch Höhenstrahlung verändert werden. Eine Vorrichtung, die eine vorausgewählte Hardwarestruktur oder ein Bauteil zur Erzeugung eines Schlüssels verwendet, erzeugt nach Ablauf einer gewissen Zeitspanne Schlüssel, die von den ursprünglich mit derselben Hardwarestruktur oder demselben Bauteil erzeugten Schlüsseln abweichen. Tritt eine solche Abweichung auf, so verändert sich beim Beispiel eines asymmetrischen Kryptografieverfahrens ein aus der Hardwarestruktur erzeugter privater Schlüssel. Mit einem privaten Schlüssel zu entschlüsselnde oder zu signierende Daten, die mit einem zuvor gültigen öffentlichen Schlüssel verschlüsselt wurden oder deren Integrität mit einem zuvor gültigen öffentlichen Schlüssel zu prüfen ist, können mit dem geänderten privaten Schlüssel nicht mehr entschlüsselt oder zur Feststellung der Integrität signiert werden. Es ist demnach nötig, einen entsprechend zum neuen privaten Schlüssel korrespondierenden öffentlichen Schlüssel zu verteilen.It should be noted that states or progressions of physical properties of hardware structures usually change over time. Physical properties used, such as the switch-on state of a sensor to generate a key, can therefore be changed by the aging of the sensor or by cosmic radiation. A device that uses a preselected hardware structure or component to generate a key generates keys after a certain period of time that differ from the keys originally generated with the same hardware structure or component. If such a deviation occurs, a private key generated from the hardware structure changes in the example of an asymmetric cryptography method. Data to be decrypted or signed with a private key that was encrypted with a previously valid public key or whose integrity is to be checked with a previously valid public key can no longer be decrypted or signed to determine integrity with the changed private key. It is therefore necessary to distribute a public key that corresponds to the new private key.
Ein derartiges neues Verteilen von Schlüsseln ist unpraktikabel und bereits mit alten öffentlichen Schlüsseln verschlüsselte Daten können nicht mehr entschlüsselt werden, da ein alter privater Schlüssel nicht rekonstruierbar ist. Außerdem tritt die Änderung einer physikalischen Eigenschaft in einem Übergangszeitraum möglicherweise nicht deterministisch auf. Der Wechsel zwischen einem alten und einem neuen Schlüssel ist schwer vorhersagbar und es kann im Übergangszeitraum sogar zu einem Zurückwechseln vom neuen Schlüssel zum alten Schlüssel kommen.Such a new distribution of keys is impractical and data already encrypted with old public keys can no longer be decrypted because an old private key cannot be reconstructed. In addition, the change in a physical property may not occur during a transition period. deterministic. The change between an old and a new key is difficult to predict and it can even happen that the new key switches back to the old key during the transition period.
Demnach kann während eines Übergangszeitraums, in dem sich eine physikalische Eigenschaft eines Bauteils von einem ursprünglichen oder vorherigen Zustand in einen geänderten Zustand in Abhängigkeit von äußeren Einflüssen, wie beispielsweise der Temperatur, ändert, die selbe physikalische Eigenschaft des Bauteils zeitweise zur Erzeugung eines ursprünglichen Schlüssels und zeitweise zur Erzeugung eines geänderten Schlüssels führen. Eine eindeutige Entschlüsselung bzw. Prüfung der Signatur ist dann nicht mehr möglich. Für einen Benutzer ist gerade während der Übergangszeit der physikalischen Eigenschaft der Hardwarestruktur daher eine Verwendung der Hardwarestruktur zum Erzeugen des Schlüssels unpraktikabel oder sogar nicht möglich.Accordingly, during a transition period in which a physical property of a component changes from an original or previous state to a changed state depending on external influences, such as temperature, the same physical property of the component can temporarily lead to the generation of an original key and temporarily to the generation of a changed key. Unambiguous decryption or verification of the signature is then no longer possible. For a user, using the hardware structure to generate the key is therefore impractical or even impossible, especially during the transition period of the physical property of the hardware structure.
Der Erfindung liegt daher die Aufgabe zugrunde, den Problemen des Standes der Technik zu begegnen. Insbesondere soll eine Möglichkeit gefunden werden, Daten mit einem aus einer PUF erzeugten Schlüssel zu signieren oder zu entschlüsseln, wobei ein sich im Übergang befindender Zustand der PUF, also eine sich ändernde physikalische Eigenschaft eines Bauteils, berücksichtigt werden soll. Jedenfalls soll eine Alternative zum aus dem Stand der Technik Bekannten gefunden werden.The invention is therefore based on the task of addressing the problems of the prior art. In particular, a way is to be found to sign or decrypt data using a key generated from a PUF, taking into account a state of the PUF in transition, i.e. a changing physical property of a component. In any case, an alternative to what is known from the prior art is to be found.
Hierzu betrifft die Erfindung ein Verfahren zum Signieren und/oder Entschlüsseln von Daten mit einem kryptografischen Schlüssel nach Anspruch 1.The invention relates to a method for signing and/or decrypting data with a cryptographic key according to claim 1.
Demnach betrifft die Erfindung ein Verfahren zum Signieren und/oder Entschlüsseln von Daten mit einem kryptografischen Schlüssel. Ein kryptografischer Schlüssel entspricht beispielsweise einer Bitfolge, vorzugsweise mit vordefinierter Länge.Accordingly, the invention relates to a method for signing and/or decrypting data with a cryptographic key. A cryptographic key corresponds, for example, to a bit sequence, preferably with a predefined length.
Gemäß der Erfindung umfasst das Verfahren zunächst das Empfangen einer Aufforderung zum Erzeugen mindestens eines kryptografischen Schlüssels zur Signatur oder Entschlüsselung von Daten. Eine Aufforderung kann beispielsweise eine Aufforderung innerhalb einer Vorrichtung sein, die automatisch erzeugt wird. Ein Beispiel für eine derartige Aufforderung ist etwa der Start einer Applikation, mit der Daten entschlüsselt werden sollen. Eine weitere Aufforderung kann ein genereller Start, also ein Hochfahren oder Booten, einer Vorrichtung sein, mit der Daten signierbar oder entschlüsselbar sind. Eine Aufforderung kann aber auch von einer Benutzerschnittstelle empfangen werden. Das Empfangen einer Aufforderung kann demnach als Auslöser oder Trigger betrachtet werden, um einen Signatur- oder Entschlüsselungsprozess zu starten.According to the invention, the method firstly comprises receiving a request to generate at least one cryptographic key for signing or decrypting data. A request can, for example, be a request within a device that is generated automatically. An example of such a request is the start of an application with which data is to be decrypted. Another request can be a general start, i.e. a booting up or booting of a device with which data can be signed or decrypted. However, a request can also be received from a user interface. Receiving a request can therefore be viewed as a trigger to start a signature or decryption process.
Im nächsten Schritt wird ein Indikator erfasst. Der Indikator umfasst beispielsweise Daten, die aus einer Speicherstelle gelesen werden, Daten, die in der Vorrichtung generiert werden oder Daten, die ebenfalls von einer Benutzerschnittstelle empfangen werden. Daraufhin wird eine physikalische Eigenschaft in Abhängigkeit vom Indikator ausgewählt.The next step is to capture an indicator. The indicator may include data read from a memory location, data generated in the device, or data also received from a user interface. A physical property is then selected depending on the indicator.
Eine physikalische Eigenschaft ist hierbei mit mindestens einem Bauelement einer Vorrichtung geknüpft. Demnach wird also eine physikalische Eigenschaft mindestens eines Bauelements ausgewählt. Die physikalische Eigenschaft beschreibt beispielsweise ein messbares physikalisches Verhalten des Bauelements oder mehrerer Bauelemente, die diese physikalische Eigenschaft gemeinsam aufweisen, vorzugsweise während vordefinierter Umstände.A physical property is linked to at least one component of a device. Accordingly, a physical property of at least one component is selected. The physical property describes, for example, a measurable physical behavior of the component or of several components that have this physical property in common, preferably during predefined circumstances.
Eine physikalische Eigenschaft mindestens eines Bauelements umfasst beispielsweise eine zeitliche Entladekurve eines Kondensators. Die vordefinierten Umstände können beispielsweise einem vordefinierten Ladezustand des Kondensators entsprechen, von dem ausgehend die Ladekurve gemessen wird. Weiter kann eine physikalische Eigenschaft ein beliebiges anderes Zeitverhalten eines Bauelements umfassen. Im Fall mehrerer erster Bauelemente, beispielsweise verschiedener Widerstände, kann die physikalische Eigenschaft den Widerstandswerten jeweils jedes der Widerstände oder aber auch einer mathematischen Verknüpfung der Widerstandswerte entsprechen. Vorzugsweise entspricht eine physikalische Eigenschaft mindestens eines Bauelements einer „physikal unclonable function“.A physical property of at least one component includes, for example, a temporal discharge curve of a capacitor. The predefined circumstances can, for example, correspond to a predefined charge state of the capacitor, from which the charge curve is measured. Furthermore, a physical property can include any other temporal behavior of a component. In the case of several first components, for example different resistors, the physical property can correspond to the resistance values of each of the resistors or to a mathematical combination of the resistance values. Preferably, a physical property of at least one component corresponds to a "physically unclonable function".
Besonderheit ist, dass die physikalische Eigenschaft in Abhängigkeit vom Indikator ausgewählt wird. Vorzugsweise sind also mehrere physikalische Eigenschaften vordefiniert, wobei eine oder mehrere physikalische Eigenschaften der vordefinierten physikalischen Eigenschaften in Abhängigkeit vom Indikator für das weitere Verfahren ausgewählt werden.A special feature is that the physical property is selected depending on the indicator. Preferably, several physical properties are predefined, whereby one or more physical properties of the predefined physical properties are selected depending on the indicator for the further process.
Daraufhin wird in einem weiteren Schritt mindestens ein Schlüssel in Abhängigkeit von der mindestens einen physikalischen Eigenschaft erzeugt und daraufhin Daten in Abhängigkeit von dem mindestens einen Schlüssel signiert und/oder entschlüsselt.In a further step, at least one key is then generated depending on the at least one physical property and data is then signed and/or decrypted depending on the at least one key.
Durch eine Auswahl der physikalischen Eigenschaft in Abhängigkeit vom Indikator wird die Möglichkeit geschaffen, mehrere unterschiedliche physikalische Eigenschaften zur Erzeugung eines Schlüssels bereitzustellen und diese in Abhängigkeit vom Indikator auszuwählen. Hierdurch kann beispielsweise, sobald festgestellt wird, dass eine physikalische Eigenschaft, nämlich vorzugsweise ein PUF, sich geändert hat und somit ein daraus erzeugter Schlüssel vom zuvor erzeugten Schlüssel abweicht, durch einfaches Verändern des Indikators eine andere physikalische Eigenschaft gewählt werden.By selecting the physical property depending on the indicator, it is possible to use several different to provide physical properties for generating a key and to select these depending on the indicator. This means that, for example, as soon as it is determined that a physical property, namely preferably a PUF, has changed and thus a key generated from it differs from the previously generated key, a different physical property can be selected by simply changing the indicator.
Beispielsweise kann in der Vorrichtung nach dem Empfangen einer Aufforderung zum Erzeugen des Schlüssels eine Referenzdatei bereitgestellt und mit dem erzeugten Schlüssel signiert werden. Anhand eines zuvor gespeicherten öffentlichen Schlüssels kann dann geprüft werden, ob die Signatur gültig ist. Ist die Signatur ungültig, wird dadurch angezeigt, dass der Schlüssel zum Signieren nicht mehr dem zuvor erzeugten Schlüssel entspricht. Der Indikator kann dann beispielsweise geändert werden, um eine andere physikalische Eigenschaft zu wählen und ein nicht deterministisches Verhalten bei der Schlüsselerzeugung zu vermeiden.For example, after receiving a request to generate the key, a reference file can be provided in the device and signed with the generated key. A previously stored public key can then be used to check whether the signature is valid. If the signature is invalid, this indicates that the key for signing no longer corresponds to the previously generated key. The indicator can then be changed, for example, to select a different physical property and avoid non-deterministic behavior during key generation.
Gemäß einer ersten Ausführungsform wird in Abhängigkeit vom Indikator ein Satz mit mehreren, insbesondere mehr als zwei oder genau zwei physikalischen Eigenschaften eines oder mehrerer Bauelemente ausgewählt. Der Satz entspricht demnach vorzugsweise einem von mehreren vordefinierten Sätzen. Jeder der Sätze umfasst mehrere physikalische Eigenschaften, die für den jeweiligen Satz ebenfalls vorzugsweise vordefiniert sind. According to a first embodiment, a set with several, in particular more than two or exactly two, physical properties of one or more components is selected depending on the indicator. The set therefore preferably corresponds to one of several predefined sets. Each of the sets comprises several physical properties, which are also preferably predefined for the respective set.
Bevorzugt werden also mehrere physikalische Eigenschaften ausgewählt, die jeweils mindestens einem Bauelement zugeordnet sind. Die Bauelemente, die einer physikalischen Eigenschaft zugeordnet sind, sind vorzugsweise nicht einer anderen physikalischen Eigenschaft zugeordnet. Ferner wird mindestens ein Schlüssel in Abhängigkeit von jeweils jeder der ausgewählten physikalischen Eigenschaften erzeugt. Zudem werden die Daten mit jedem der erzeugten Schlüssel signiert und/oder entschlüsselt.Preferably, several physical properties are selected, each of which is assigned to at least one component. The components that are assigned to a physical property are preferably not assigned to another physical property. Furthermore, at least one key is generated depending on each of the selected physical properties. In addition, the data is signed and/or decrypted with each of the generated keys.
Beispielsweise wird gemäß der zuletzt genannten Ausführungsform ein Satz in Abhängigkeit vom Indikator ausgewählt, der aufgrund seiner physikalischen Eigenschaften, die jeweils einer Entladekurve eines Bauelements entsprechen, in Abhängigkeit von den zwei Entladekurven jeweils einen Schlüssel erzeugt. Die Datei wird dann mit beiden Schlüsseln signiert und/oder entschlüsselt. Fällt einer der Schlüssel aus oder ist ungültig, da sich eine der zugrundeliegenden physikalischen Eigenschaft geändert hat, ist mit ausreichender Wahrscheinlichkeit die physikalische Eigenschaft des anderen Bauelements stabil. Der zweite Schlüssel bleibt somit weiterhin gültig und eine Signatur kann dann mit entsprechend einem korrespondierenden öffentlichen Schlüssel geprüft werden.For example, according to the last-mentioned embodiment, a set is selected depending on the indicator that generates a key depending on the two discharge curves based on its physical properties, each of which corresponds to a discharge curve of a component. The file is then signed and/or decrypted with both keys. If one of the keys fails or is invalid because one of the underlying physical properties has changed, the physical property of the other component is stable with sufficient probability. The second key thus remains valid and a signature can then be verified with a corresponding public key.
Ein Entschlüsseln mit jedenfalls einem der erzeugten Schlüssel ist entsprechend erfolgreich. Ein Empfänger der Daten kann somit auch im Fall des Ausfalls eines Schlüssels, die Signatur noch mit dem anderen Schlüssel prüfen oder die Daten entschlüsseln. Die Wahrscheinlichkeit eines vollständigen Ausfalls erhöht sich entsprechend mit der Anzahl der ausgewählten physikalischen Eigenschaften in einem Satz.Decryption with at least one of the generated keys is therefore successful. A recipient of the data can therefore still check the signature with the other key or decrypt the data even if one key fails. The probability of a complete failure increases accordingly with the number of selected physical properties in a set.
Wenn hier und im Folgenden von einem ungültigen Schlüssel oder von einem Schlüssel der ausfällt gesprochen wird, ist damit ein Schlüssel bezeichnet, der aus einer physikalischen Eigenschaft eines Bauelements erzeugt wird, aber sich durch Änderung des Zustands der physikalischen Eigenschaft von einem Schlüssel unterscheidet, der zuvor mit der physikalischen Eigenschaft des Bauelements erzeugt wurde.When we refer here and in the following to an invalid key or a key that fails, we mean a key that is generated from a physical property of a component, but which differs from a key that was previously generated using the physical property of the component due to a change in the state of the physical property.
Selbst beim Ausfall oder bei Ungültigkeit eines Schlüssels, also einer sich geänderten physikalischen Eigenschaft eines Bauelements, können somit zu jeder Zeit Daten ver- und entschlüsselt bzw. signiert werden.Even if a key fails or becomes invalid, i.e. if the physical properties of a component have changed, data can be encrypted, decrypted or signed at any time.
Gemäß einer speziellen Ausführungsform der vorbeschrieben Ausführungsform werden demnach in Schritt c) mindestens zwei physikalische Eigenschaften ausgewählt. Eine erste physikalische Eigenschaft der zwei physikalischen Eigenschaften entspricht einer physikalischen Eigenschaft mindestens eines ersten Bauelements. Eine zweite physikalische Eigenschaft der zwei physikalischen Eigenschaften entspricht einer physikalischen Eigenschaft mindestens eines zweiten Bauelements, das sich vom ersten Bauelement unterscheidet.According to a specific embodiment of the embodiment described above, at least two physical properties are selected in step c). A first physical property of the two physical properties corresponds to a physical property of at least one first component. A second physical property of the two physical properties corresponds to a physical property of at least one second component that differs from the first component.
Gemäß einer weiteren Ausführungsform werden in Schritt c) mindestens drei physikalische Eigenschaften ausgewählt. Eine erste physikalische Eigenschaft der drei physikalischen Eigenschaften entspricht einer physikalischen Eigenschaft mindestens eines ersten Bauelements und eines zweiten Bauelements. Eine zweite physikalische Eigenschaft der drei physikalischen Eigenschaften entspricht einer physikalischen Eigenschaft mindestens des zweiten und eines dritten Bauelements. Eine dritte physikalische Eigenschaft der drei physikalischen Eigenschaften entspricht einer physikalischen Eigenschaft mindestens des dritten und des ersten Bauelements.According to a further embodiment, at least three physical properties are selected in step c). A first physical property of the three physical properties corresponds to a physical property of at least one first component and one second component. A second physical property of the three physical properties corresponds to a physical property of at least one second and one third component. A third physical property of the three physical properties corresponds to a physical property of at least one third and one first component.
Jeder von drei Schlüsseln basiert demnach auf der physikalischen Eigenschaft mindestens zweier Bauelemente.Each of three keys is based on the physical properties of at least two components.
Eine Änderung eines Verhaltens eines Bauteils führt demnach zum Ausfall zweier Schlüssel. Dies wird jedoch in Kauf genommen, um eine vergleichsweise höhere Bittiefe der Schlüssel, also die Anzahl der Bits jedes der Schlüssel, mit vergleichsweise wenigen Bauelementen zu ermöglichen. Eine Vorrichtung, die beispielsweise nur eine geringe Anzahl von Bauelementen zur Erzeugung von Schlüsseln bereitstellt, kann so verwendet werden, um möglichst lange Schlüssel zu erzeugen. Durch Verwendung von drei physikalischen Eigenschaften und somit von drei Schlüsseln hat jedoch weiterhin der Ausfall eines Bauelements, also eine Änderung der physikalischen Eigenschaften, zumindest keine Auswirkungen auf zumindest einen der Schlüssel. Dieser eine der drei Schlüssel bleibt weiterhin gültig.A change in the behavior of a component therefore leads to the failure of two keys. However, this is accepted in order to enable a comparatively higher bit depth of the keys, i.e. the number of bits in each of the keys, with comparatively few components. A device that, for example, only provides a small number of components for generating keys can be used to generate keys that are as long as possible. However, by using three physical properties and thus three keys, the failure of a component, i.e. a change in the physical properties, has no effect on at least one of the keys. This one of the three keys remains valid.
Gemäß einer weiteren Ausführungsform zeigt der Indikator einen auszuwählenden Satz von mehreren Sätzen an. Die Sätze sind vorzugsweise vordefiniert. Jeder Satz umfasst jeweils mehrere physikalische Eigenschaften. Die physikalischen Eigenschaften jedes Satzes sind vorzugsweise ebenfalls vordefiniert. Mindestens eine physikalische Eigenschaft jedes auswählbaren Satzes unterscheidet sich von einer physikalischen Eigenschaft eines anderen Satzes. Umfasst demnach beispielsweise ein erster Satz die physikalischen Eigenschaften A, B und C, so umfasst ein anderer Satz die physikalischen Eigenschaften B, C und D. Wiederum ein weiterer Satz umfasst die physikalischen Eigenschaften C, D und E.According to a further embodiment, the indicator displays a set of several sets to be selected. The sets are preferably predefined. Each set comprises a plurality of physical properties. The physical properties of each set are preferably also predefined. At least one physical property of each selectable set differs from a physical property of another set. For example, if a first set comprises the physical properties A, B and C, another set comprises the physical properties B, C and D. Yet another set comprises the physical properties C, D and E.
Somit kann sichergestellt werden, dass im Fall eines Ausfalls eines Schlüssels, also eines ungültig werdenden Schlüssels, der über eine physikalische Eigenschaft einem Satz zuordenbar ist, ein vorheriger Satz durch Auswahl eines anderen Satzes, der nicht die physikalische Eigenschaft zum Erzeugen des ausgefallenen Schlüssels enthält, ersetzt werden kann. Es kann damit durch Anpassen des Indikators wieder ein vollständiger Satz mit zugeordneten gültigen Schlüsseln erhalten werden.This ensures that in the event of a key failure, i.e. a key that can be assigned to a set via a physical property becoming invalid, a previous set can be replaced by selecting another set that does not contain the physical property for generating the failed key. By adjusting the indicator, a complete set with assigned valid keys can be obtained again.
Mit der Auswahl eines neuen Satzes wird somit die Gruppe von physikalischen Eigenschaften um bisher noch nicht genutzte physikalische Eigenschaften ergänzt. Es existieren keine identischen Sätze.By selecting a new set, the group of physical properties is expanded to include physical properties that have not yet been used. No identical sets exist.
Gemäß einer weiteren Ausführungsform weisen die Sätze von physikalischen Eigenschaften eine Reihenfolge auf. Ein oder mehrere in der Reihenfolge auf einen vorherigen Satz folgende Sätze umfassen jeweils mindestens eine mit dem vorherigen Satz identische physikalische Eigenschaft. Eine identische physikalische Eigenschaft führt somit, solange sich ein Zustand der physikalischen Eigenschaft nicht ändert, zur Erzeugung eines identischen Schlüssels. Demnach umfasst beispielsweise ein erster Satz der Sätze die physikalische Eigenschaft A und die physikalische Eigenschaft B, ein zweiter in der Reihenfolge folgender Satz die physikalische Eigenschaft B und die physikalische Eigenschaft C. Ein weiterer auf den ersten Satz folgender zweiter Satz umfasst beispielsweise die physikalische Eigenschaft A und die physikalische Eigenschaft C. Ein darauf in der Reihenfolge folgender dritter Satz umfasst die physikalische Eigenschaft C und die physikalische Eigenschaft D.According to a further embodiment, the sets of physical properties have a sequence. One or more sets following a previous set in the sequence each comprise at least one physical property that is identical to the previous set. An identical physical property thus leads to the generation of an identical key as long as a state of the physical property does not change. Accordingly, for example, a first set of the sets comprises the physical property A and the physical property B, a second set following in the sequence comprises the physical property B and the physical property C. A further second set following the first set comprises, for example, the physical property A and the physical property C. A third set following in the sequence comprises the physical property C and the physical property D.
Durch Festlegen der Reihenfolge ist es möglich, dass ein in der Reihenfolge folgender neuer Satz mit dem Indikator ausgewählt werden kann, in dem wieder alle Schlüssel als gültig betrachtet werden können. Außerdem wird eine Rückwärtskompatibilität zu Daten ermöglicht, die mit einem ungültig gewordenen Schlüssel entschlüsselt werden müssten, da der folgende Satz zumindest auch eine physikalische Eigenschaft umfasst, mit der ein zuvor bereits gültiger Schlüssel erzeugt wird. Der neue Satz erzeugt somit zumindest einen Schlüssel, um Daten, die mit den Schlüsseln eines vorhergehenden Satzes entschlüsselt werden müssten, zu entschlüsseln. Wird beispielsweise Schlüssel A aus dem genannten ersten Satz ungültig, kann auf den zweiten Satz gewechselt werden. In Satz zwei sind die Schlüssel B und C gemäß diesem Beispiel enthalten. Würde Schlüssel B im ersten Satz ausfallen, würde auf den weiteren zweiten Satz gewechselt werden, in dem die Schlüssel A und C enthalten sind.By specifying the order, it is possible to select a new set in the sequence with the indicator in which all keys can again be considered valid. In addition, backward compatibility with data that would have to be decrypted with a key that has become invalid is made possible, since the following set also includes at least one physical property with which a previously valid key is generated. The new set thus generates at least one key to decrypt data that would have to be decrypted with the keys of a previous set. If, for example, key A from the first set becomes invalid, it is possible to switch to the second set. Set two contains keys B and C according to this example. If key B in the first set were to fail, the system would switch to the second set, which contains keys A and C.
Gemäß einer weiteren Ausführungsform wird ein Zustand oder eine Zeitangabe überwacht und erfasst. Eine Zeitangabe umfasst beispielsweise einen Zeitpunkt, insbesondere ein Datum oder eine Zeitdauer. Ein Zustand kann das Überwachen der physikalischen Eigenschaften eines zurzeit gültigen Satzes sein. Ein Zustand kann auch einem Zerfall von Atomen oder einer Gasentladung entsprechen. Einen Zustand zu überwachen kann beispielsweise einer Messung eines in die Vorrichtung integrierten Geigerzählers entsprechen, der den Zerfall zu betrachtender Atome eines Bauteils, dessen physikalische Eigenschaft überwacht wird, überwacht. Mit dem Geigerzähler kann ebenfalls Höhenstrahlung gemessen, also überwacht, werden.According to a further embodiment, a state or a time indication is monitored and recorded. A time indication includes, for example, a point in time, in particular a date or a period of time. A state can be the monitoring of the physical properties of a currently valid set. A state can also correspond to a decay of atoms or a gas discharge. Monitoring a state can, for example, correspond to a measurement by a Geiger counter integrated into the device, which monitors the decay of atoms to be observed in a component whose physical property is being monitored. The Geiger counter can also be used to measure, i.e. monitor, cosmic radiation.
Gemäß diesem Ausführungsfall wird nämlich im Fall, dass ein mit der Zeitangabe oder dem Zustand vergleichbares hinterlegtes oder hinterlegbares Kriterium unerfüllt bleibt, ein vorheriger Wert des Indikators beibehalten. Der Indikator bleibt demnach bei jedem Durchlauf des Verfahrens konstant. Derselbe Satz von physikalischen Eigenschaften wird beim Wiederholen der erfindungsgemäßen Schritte nach einem Empfang einer Aufforderung zum Erzeugen mindestens eines Schlüssels bis hin zum Signieren oder Entschlüsseln der Datei ausgeführt.According to this embodiment, if a stored or storeable criterion comparable to the time or the state remains unfulfilled, a previous value of the indicator is retained. The indicator therefore remains constant during each run of the method. The same set of physical properties is implemented when repeating the steps according to the invention after receiving a request to generate at least one key up to signing or decrypting the file.
Das heißt, es wird immer ein identischer Satz oder die identischen physikalischen Eigenschaften gewählt. Dies erfolgt gemäß dieser Ausführungsform bis das Kriterium erfüllt ist. In dem Fall, dass das Kriterium erfüllt ist, wird nämlich der Indikator, also vorzugsweise sein Wert, geändert. Damit wird ein Satz ausgewählt, der sich vom zuvor ausgewählten Satz unterscheidet. Vorzugsweise wird ein Satz ausgewählt, der in einer Reihenfolge der Sätze einem auf den vorherig ausgewählten Satz folgenden Satz entspricht.This means that an identical set or the identical physical properties are always selected. This is done according to this embodiment until the criterion is met. In the event that the criterion is met, the indicator, i.e. preferably its value, is changed. This selects a set that differs from the previously selected set. Preferably, a set is selected that corresponds to a set following the previously selected set in a sequence of sets.
Ein Kriterium kann ein Ablaufzeitpunkt, wie ein Ablaufdatum, ein Erreichen einer Zeitdauer, das Erkennen der Vorrichtung einer sich ändernden physikalischen Eigenschaft oder ein Erkennen, dass die Vorrichtung einer bestimmten Menge an Höhenstrahlung ausgesetzt wurde, sein.A criterion may be an expiration time, such as an expiration date, reaching a time period, detecting the device having a changing physical property, or detecting that the device has been exposed to a certain amount of cosmic radiation.
Ein automatisches Ändern der Sätze in Abhängigkeit vom Indikator erfolgt somit in Abhängigkeit von der Zeit oder einem Zustand und einem Kriterium.An automatic change of the rates depending on the indicator thus occurs depending on the time or a state and a criterion.
Ein Zustand kann auch die Prüfung der Signatur sein, die wie bereits oben genannt, mit der signierten Referenzdatei und dem öffentlichen gespeicherten Schlüssel durchgeführt wird. Das Kriterium ist dann die Gültigkeit oder Ungültigkeit der Signatur.A state can also be the verification of the signature, which, as already mentioned above, is carried out using the signed reference file and the public stored key. The criterion is then the validity or invalidity of the signature.
Ein Vergleich des Zustands oder der Zeitangabe mit einem Kriterium beschreibt somit das selbstständige Erkennen der Vorrichtung, dass die Notwendigkeit der Erzeugung eines neuen Schlüssels besteht. Dieses Erkennen kann durch Detektion veränderter Hardwarestrukturen, also der physikalischen Eigenschaften, mit der Vorrichtung, beispielsweise durch gemessene Werte und Erreichen von Toleranzgrenzen, erreicht werden.A comparison of the state or the time with a criterion thus describes the independent recognition by the device that there is a need to generate a new key. This recognition can be achieved by detecting changed hardware structures, i.e. the physical properties, with the device, for example through measured values and reaching tolerance limits.
Gemäß der Ausführungsform ist somit eine Erneuerung der Schlüssel ereignis- oder zeitabhängig automatisiert möglich, ohne, dass ein Benutzer einer Vorrichtung Sorge tragen muss, die Schlüssel rechtzeitig zu erneuern.According to the embodiment, a renewal of the keys is thus possible in an event- or time-dependent manner without a user of a device having to ensure that the keys are renewed in a timely manner.
Gemäß einer weiteren Ausführungsform sind mehrere Kriterien hinterlegt und jeweils nach Erfüllen eines der Kriterien durch den Zustand oder die Zeitangabe, wird ein Satz mit dem Indikator ausgewählt, der sich von einem der oder allen Sätzen unterscheidet, die vor dem Erfüllen des jeweiligen Kriteriums ausgewählt wurden. Der Indikator wird also vorzugsweise auf einen Wert geändert, den er noch nicht angenommen hat. Sich unterscheidende Sätze entsprechen Sätzen mit mindestens einer unterschiedlichen physikalischen Eigenschaft.According to a further embodiment, several criteria are stored and after each of the criteria is fulfilled by the state or the time specification, a set with the indicator is selected that differs from one of the or all of the sets that were selected before the respective criterion was fulfilled. The indicator is therefore preferably changed to a value that it has not yet assumed. Different sets correspond to sets with at least one different physical property.
Eine kontinuierliche Erneuerung der Schlüssel unter Ausschluss bereits verwendeter Sätze kann so erfolgen.This allows for continuous renewal of keys, excluding sets that have already been used.
Gemäß einer besonderen Ausführungsform ist eine Kontrollinstanz vorgesehen, die eine Änderung einer physikalischen Eigenschaft erkennt. Dies kann etwa erfolgen, wenn sich ein eigener öffentlicher Schlüssel der Vorrichtung, der etwa in der Vorrichtung hinterlegt ist, ändert. Die gilt für den Fall, dass der eigene öffentliche Schlüssel in Abhängigkeit von einem eigenen privaten Schlüssel erzeugt wird, der wiederum in Abhängigkeit von der physikalischen Eigenschaft erzeugt wird. Ein Vergleich eines gespeicherten und eines neu generierten öffentlichen Schlüssels zeigt dann die Änderung der physikalischen Eigenschaft. Vorzugsweise kann die Kontrollinstanz dann den Indikator anpassen oder prüfen, ob eine geänderte physikalische Eigenschaft so stabil ist, dass diese weiter, ohne Änderung des Indikators, zur Erzeugung eines Schlüssels verwendet werden kann.According to a particular embodiment, a control instance is provided that detects a change in a physical property. This can happen, for example, if the device's own public key, which is stored in the device, changes. This applies in the case that the device's own public key is generated depending on its own private key, which in turn is generated depending on the physical property. A comparison of a stored and a newly generated public key then shows the change in the physical property. The control instance can then preferably adapt the indicator or check whether a changed physical property is so stable that it can continue to be used to generate a key without changing the indicator.
Gemäß einer weiteren Ausführungsform gibt die Kontrollinstanz nach dem Erkennen einer Änderung einer physikalischen Eigenschaft mindestens einen neuen öffentlichen Schlüssel aus, der in Abhängigkeit entweder von der geänderten physikalischen Eigenschaft bei gleichem Indikator oder von einer anderen physikalischen Eigenschaft, ausgewählt durch einen geänderten Indikator, erzeugt wird.According to a further embodiment, after detecting a change in a physical property, the control instance issues at least one new public key, which is generated depending either on the changed physical property with the same indicator or on another physical property selected by a changed indicator.
Gemäß einer weiteren Ausführungsform ändert sich der Indikator und/oder das Kriterium bei jedem Durchlauf der erfindungsgemäßen Schritte vom Empfangen einer Aufforderung zum Erzeugen mindestens eines Schlüssels bis hin zum Signieren und/oder Entschlüsseln der Daten in Abhängigkeit von dem mindestens einen Schlüssel. Insbesondere im Fall, dass Sätze eine Reihenfolge aufweisen und in aufeinanderfolgenden Sätzen jeweils eine identische physikalische Eigenschaft und eine geänderte physikalische Eigenschaft enthalten ist, kann somit eine Reihenfolge der verschlüsselten oder signierten Daten identifiziert werden.According to a further embodiment, the indicator and/or the criterion changes each time the steps according to the invention are run through, from receiving a request to generate at least one key to signing and/or decrypting the data depending on the at least one key. In particular, in the case where sets have a sequence and consecutive sets each contain an identical physical property and a changed physical property, a sequence of the encrypted or signed data can thus be identified.
Enthält beispielsweise ein erster Satz die physikalischen Eigenschaften A und B, ein zweiter Satz die physikalischen Eigenschaften B und C, ein dritter Satz die physikalischen Eigenschaften C und D, so werden beim erstmaligen Ausführen des Verfahrens die Dateien mit dem ersten Satz, also mit Schlüsseln aus den physikalischen Eigenschaften A und B signiert. Beim erneuten Durchlaufen werden Daten mit dem zweiten Satz, also mit den aus den physikalischen Eigenschaften B und C erzeugten Schlüsseln signiert. Dies setzt sich fort, so dass ein Empfänger der Daten eines Durchlaufs diese Daten nur entschlüsseln kann, wenn er auch Empfänger der Daten des vorherigen Durchlaufs ist.For example, if a first set contains the physical properties A and B, a second set contains the physical properties B and C, and a third set contains the physical properties C and D, the first time the procedure is run, the files are signed with the first set, i.e. with keys from the physical properties A and B. When the procedure is run again, data is signed with the second set, i.e. with the keys generated from the physical properties B and C. This continues, so that a recipient of the data from one run can only decrypt this data if he is also the recipient of the data from the previous run.
Gemäß einer weiteren Ausführungsform entspricht der Indikator einem Kommando oder einem Befehl, das vorzugsweise von einer Benutzerschnittstelle empfangen wird. Die mindestens eine physikalische Eigenschaft wird demnach in Abhängigkeit vom Kommando oder Befehl ausgewählt. Insbesondere wird ein vom Kommando oder Befehl abhängiger Satz von physikalischen Eigenschaften ausgewählt. Vorzugsweise wird mit dem Kommando oder dem Befehl ein Satz von physikalischen Eigenschaften ausgewählt, der einem von mehreren vordefinierten Sätzen von physikalischen Eigenschaften entspricht.According to a further embodiment, the indicator corresponds to a command or a command, which is preferably received from a user interface. The at least one physical property is therefore selected depending on the command or command. In particular, a set of physical properties dependent on the command or command is selected. Preferably, the command or command is used to select a set of physical properties that corresponds to one of several predefined sets of physical properties.
Demnach kann ein Benutzer eine interne Überwachungssteuerung der Vorrichtung, die beispielsweise den Zustand der physikalischen Eigenschaften überwacht oder auch eine andere Applikation, mithilfe eines Kommandos oder eines Befehls einen Satz von vordefinierten physikalischen Eigenschaften auswählen. Vorzugsweise sind die Sätze vordefiniert und werden zur Auswahl bereitgestellt. Hierdurch ist es möglich, dass ein Benutzer physikalische Eigenschaften nicht selbst auswählen muss. Im Fall eines nicht mehr gültigen Schlüssels kann der Benutzer oder eine Applikation durch Vorgeben eines Kommandos oder eines Befehls, mit dem ein anderer Satz auswählbar ist, den anderen Satz auswählen, der für einen neuen Zeitraum gültige Schlüssel erzeugbar macht.Accordingly, a user of an internal monitoring control of the device, which monitors the state of the physical properties, for example, or another application, can select a set of predefined physical properties using a command or instruction. Preferably, the sets are predefined and are made available for selection. This makes it possible for a user not to have to select physical properties themselves. In the case of a key that is no longer valid, the user or an application can select the other set that enables keys to be generated that are valid for a new period of time by specifying a command or instruction with which a different set can be selected.
Gemäß einer weiteren Ausführungsform umfasst der Indikator ein Passwort oder wird in Abhängigkeit von einem Passwort gewählt. Das Passwort ist beispielsweise eine Zeichenfolge oder entspricht biometrischen Daten. Ein Passwort aus biometrischen Daten wird auch biometrisches Passwort genannt und kann einem Fingerabdruck oder dergleichen entsprechen. In Abhängigkeit vom Passwort wird einer von mehreren Sätzen, die insbesondere vordefinierten Sätzen entsprechen, ausgewählt. Die mehreren Sätze umfassen vorzugsweise jeweils mehrere physikalische Eigenschaften, mit denen jeweils ein elektronischer Schlüssel erzeugbar ist.According to a further embodiment, the indicator comprises a password or is selected depending on a password. The password is, for example, a character string or corresponds to biometric data. A password made up of biometric data is also called a biometric password and can correspond to a fingerprint or the like. Depending on the password, one of several sets, which in particular correspond to predefined sets, is selected. The several sets preferably each comprise several physical properties with which an electronic key can be generated.
Alternativ kann in Abhängigkeit vom Passwort mindestens eine physikalische Eigenschaft vordefiniert und nach dem Vordefinieren ausgewählt werden. Das Passwort dient somit selbst, um den Indikator so vorzugeben, dass dieser Informationen darüber enthält, welche physikalischen Eigenschaften zur Erzeugung eines oder mehrerer Schlüssel verwendet werden sollen. Gemäß einer weiteren Alternative wird mindestens eine von mehreren vordefinierten physikalischen Eigenschaften in Abhängigkeit vom Passwort ausgewählt.Alternatively, depending on the password, at least one physical property can be predefined and selected after predefinition. The password itself thus serves to specify the indicator so that it contains information about which physical properties are to be used to generate one or more keys. According to a further alternative, at least one of several predefined physical properties is selected depending on the password.
Demnach können mehrere Passwörter vorgegeben werden, die nicht selbst zur Erzeugung des elektronischen Schlüssels dienen. Vielmehr sind die Passwörter jeweils einem von mehreren Sätzen von physikalischen Eigenschaften oder physikalischen Eigenschaften unmittelbar zugeordnet. Durch Eingabe eines Passworts, beispielsweise durch einen Benutzer, wählt dieser geschützt durch das Passwort eine mit diesem Passwort verknüpfte physikalische Eigenschaft mithilfe des Indikators aus, um daraus den elektronischen Schlüssel zu erzeugen.Accordingly, several passwords can be specified that do not themselves serve to generate the electronic key. Rather, the passwords are each directly assigned to one of several sets of physical properties or physical properties. When a user enters a password, for example, he or she selects a physical property linked to this password using the indicator, protected by the password, in order to generate the electronic key from it.
Die Schlüsselerzeugung wird somit noch sicherer.This makes key generation even more secure.
Gemäß einer weiteren Ausführungsform umfasst der mindestens eine Schlüssel, der in Abhängigkeit von der mindestens einen physikalischen Eigenschaft erzeugt wird, ein oder mehrere Schlüsselpaare eines asymmetrischen Verschlüsselungsverfahrens. Demnach werden die Daten in Abhängigkeit von dem asymmetrischen Schlüsselpaar derart signiert, dass zunächst ein Hash der zu signierenden Datei gebildet und dieser Hash mit jedem der privaten Schlüssel der erzeugten Schlüsselpaare signiert wird. Die Ergebnisse des Signierens, nämlich die Signatur und vorzugsweise auch der jeweilige öffentliche Schlüssel der Schlüsselpaare, werden in Metadaten der Daten dargestellt. Alternativ kann als Signatur auch nur das Ergebnis des Signierens, also der verschlüsselte oder signierte Hash, dargestellt werden, wobei die öffentlichen Schlüssel separat übertragen werden.According to a further embodiment, the at least one key that is generated depending on the at least one physical property comprises one or more key pairs of an asymmetric encryption method. Accordingly, the data is signed depending on the asymmetric key pair in such a way that first a hash of the file to be signed is formed and this hash is signed with each of the private keys of the generated key pairs. The results of the signing, namely the signature and preferably also the respective public key of the key pairs, are shown in metadata of the data. Alternatively, only the result of the signing, i.e. the encrypted or signed hash, can be shown as the signature, with the public keys being transmitted separately.
Ein einfaches Signieren von Daten und Übertragen der signierten Daten mithilfe einer einzelnen Datei, die Metadaten aufweist, ist somit möglich. Vorzugsweise dient das Verfahren somit zum Signieren von Medien, wie etwa Bildern.This makes it possible to easily sign data and transfer the signed data using a single file that contains metadata. The method is therefore preferably used for signing media such as images.
Gemäß einer weiteren Ausführungsform wird zumindest einer der öffentlichen Schlüssel eines Schlüsselpaars vor dem Speichern in den Metadaten der Daten, insbesondere einer Mediendatei, wie eines Bildes, zuvor mit mindestens einem privaten Schlüssel eines weiteren Schlüsselpaars signiert. Der private Schlüssel des weiteren Schlüsselpaars ist vorzugsweise ein privater Schlüssel eines Schlüssels, der identisch aus einem aktuellen Satz und einem vom aktuellen Satz unterschiedlichen Satz erzeugbar ist. Der vom aktuellen Satz unterschiedliche Satz ist vorzugsweise ein in der Reihenfolge vorheriger Satz.According to a further embodiment, at least one of the public keys of a key pair is signed with at least one private key of a further key pair before being stored in the metadata of the data, in particular of a media file such as an image. The private key of the further key pair is preferably a private key of a key that can be generated identically from a current set and a set that is different from the current set. The set that is different from the current set is preferably a previous set in the sequence.
Wenn somit ein neuer öffentlicher Schlüssel durch einen oder in Abhängigkeit von einem neuen Satz von physikalischen Eigenschaften erzeugt wird, wird dieser neue öffentliche Schlüssel zuvor mit dem vorherigen privaten Schlüssel signiert. Somit kann verhindert oder zumindest entgegengewirkt werden, dass solche öffentlichen Schlüssel in die Metadaten eingebracht werden, die nicht vom eigentlichen Benutzer, der die Datei signiert, stammen.Thus, when a new public key is generated by or depending on a new set of physical properties, this new public key is previously signed with the previous private key. This can prevent or at least counteract the inclusion of such public keys in the metadata. that do not originate from the actual user who signs the file.
Gemäß einer weiteren Ausführungsform wird in Abhängigkeit vom Indikator eine Vielzahl physikalischer Eigenschaften, wobei eine Vielzahl beispielsweise mindestens 10 oder mindestens 20 oder mindestens 50 physikalische Eigenschaften umfasst, ausgewählt. Entsprechend wird eine Vielzahl von Schlüsseln aus den physikalischen Eigenschaften erzeugt.According to a further embodiment, a plurality of physical properties is selected depending on the indicator, wherein a plurality comprises, for example, at least 10 or at least 20 or at least 50 physical properties. Accordingly, a plurality of keys are generated from the physical properties.
Der Zustand stellt dann den Anteil oder die Anzahl der gültigen und ungültigen Schlüssel dar. Ferner ist ein Kriterium erfüllt, wenn ein vordefinierter Anteil der Vielzahl von Schlüsseln als ungültig erkannt wird. Anderenfalls bleibt das Kriterium unerfüllt. Es wird dann nach dem Erfüllen des Kriteriums ein neuer Indikator bereitgestellt, mit dem eine neue Vielzahl physikalischer Eigenschaften ausgewählt wird. Der vordefinierte Anteil entspricht beispielsweise einem Anteil von 5 %, 10 % oder 20 %.The state then represents the proportion or number of valid and invalid keys. Furthermore, a criterion is met if a predefined proportion of the plurality of keys is recognized as invalid. Otherwise, the criterion remains unmet. Once the criterion is met, a new indicator is then provided with which a new plurality of physical properties is selected. The predefined proportion corresponds, for example, to a proportion of 5%, 10% or 20%.
Demnach werden Daten solange mit der Vielzahl von Schlüsseln, die aus der Vielzahl von physikalischen Eigenschaften erzeugt werden, signiert oder entschlüsselt, bis eine Prüfung in der Vorrichtung erkennt, dass ein vordefinierter Anteil dieser Vielzahl von Schlüsseln ungültig wird. Erst nach Überschreiten dieses vordefinierten Anteils wird eine neue Vielzahl physikalischer Eigenschaften durch den Indikator ausgewählt, so dass Daten von diesem Zeitpunkt an mit einer Vielzahl von neuen Schlüsseln, die als gültig angesehen werden, signiert oder entschlüsselt werden.Accordingly, data is signed or decrypted with the plurality of keys generated from the plurality of physical properties until a check in the device detects that a predefined proportion of this plurality of keys becomes invalid. Only after this predefined proportion is exceeded is a new plurality of physical properties selected by the indicator, so that from that point on, data is signed or decrypted with a plurality of new keys that are considered valid.
Ferner betrifft die Erfindung ein Computerprogrammprodukt, das Instruktionen umfasst, die, wenn sie auf einem Prozessor einer Rechnereinheit ausgeführt werden, den Prozessor veranlassen, das Verfahren nach einer der vorgenannten Ausführungsformen auszuführen. Eine Rechnereinheit ist vorzugsweise eine Vorrichtung oder ein Teil einer Vorrichtung, wobei die Vorrichtung beispielsweise einem Computer, einem Tablet, einem Mobiltelefon oder dergleichen entspricht.Furthermore, the invention relates to a computer program product comprising instructions which, when executed on a processor of a computer unit, cause the processor to carry out the method according to one of the aforementioned embodiments. A computer unit is preferably a device or a part of a device, the device corresponding, for example, to a computer, a tablet, a mobile phone or the like.
Außerdem umfasst die Erfindung eine Vorrichtung zum Signieren oder Entschlüsseln von Daten mit einem kryptografischen Schlüssel. Die Vorrichtung ist eingerichtet, ein Verfahren nach einer der vorgenannten Ausführungsformen auszuführen. Die Vorrichtung ist vorzugsweise ein mobiles Gerät, wie ein Laptop oder ein Mobiltelefon oder Tablet. Ferner kann die Vorrichtung auch einem beliebigen stationären Computer entsprechen.The invention also includes a device for signing or decrypting data with a cryptographic key. The device is designed to carry out a method according to one of the aforementioned embodiments. The device is preferably a mobile device, such as a laptop or a mobile phone or tablet. Furthermore, the device can also correspond to any stationary computer.
Die Vorrichtung umfasst vorzugsweise eine Vielzahl von Bauelementen, nämlich elektronischen Bauelementen, wie beispielsweise Hardwarestrukturen, die analoge Strukturen oder digitale Strukturen sein können. Gemäß einer besonderen Ausführungsform kann die Vorrichtung selbst eine analoge Struktur sein, die eingerichtet ist, das Verfahren auszuführen.The device preferably comprises a plurality of components, namely electronic components, such as hardware structures, which may be analog structures or digital structures. According to a particular embodiment, the device itself may be an analog structure which is configured to carry out the method.
Weitere Ausführungsformen ergeben sich anhand der in den Figuren näher erläuterten Ausführungsbeispiele. Hierbei zeigen:
-
1 eine Vorrichtung gemäß einem Ausführungsbeispiel zum Ausführen des Verfahrens, -
2 Schritte eines Ausführungsbeispiels des Verfahrens, -
3 Schritte eines bevorzugten Ausführungsbeispiels des Verfahrens, -
4 ein weiteres Ausführungsbeispiel eines Auswahlschritts, -
5 ein zweites Ausführungsbeispiel eines Schritts zum Erfassen eines Indikators, -
6 ein drittes Ausführungsbeispiel eines Schritts zum Erfassen eines Indikators und -
7 ein viertes Ausführungsbeispiel eines Schritts zum Erfassen eines Indikators.
-
1 a device according to an embodiment for carrying out the method, -
2 Steps of an embodiment of the method, -
3 Steps of a preferred embodiment of the method, -
4 another embodiment of a selection step, -
5 a second embodiment of a step for detecting an indicator, -
6 a third embodiment of a step for detecting an indicator and -
7 a fourth embodiment of a step for detecting an indicator.
Ferner umfasst die Vorrichtung 10 eine Mikrokontrollereinheit 14, die beispielsweise einen Prozessor und weitere zur Datenverarbeitung benötigte Module umfasst. In der Mikrokontrollereinheit 14 ist ein Kryptomodul 16 bereitgestellt, um Daten 18, die vom Speicher 12 empfangen werden, in Abhängigkeit von einem Schlüssel 20 zu signieren. Die Daten 18 sind nach dem Signieren durch die Vorrichtung 10 an einer Schnittstelle 22 mit der Signatur 23 ausgebbar. Über die Schnittstelle 22 sind auch verschlüsselte Daten empfangbar, die dem Kryptomodul 16 zugeführt werden können, um diese mit dem Schlüssel 20 zu entschlüsseln.The
Der Schlüssel 20 wird mit einem Schlüsselgenerator 24 in Abhängigkeit von einer physikalischen Eigenschaft eines oder mehrerer Bauelemente 26a, 26b, 26c, 26d der Vorrichtung 10 ermittelt. Demnach umfasst die Vorrichtung 10 die mehreren Bauelemente 26a, 26b, 26c, 26d. Die Bauelemente 26a, 26b, 26c, 26d entsprechen beispielsweise Sensoren, weiteren Speicherbausteinen, digitalen Hardwarestrukturen oder Schaltungen sowie analogen elektrischen Bauelementen.The key 20 is determined using a
Mit der Mikrokontrollereinheit 14 ist beispielsweise ein Auslösesignal 28 an ein oder mehrere der Bauelemente 26a, 26b, 26c, 26d aussendbar, so dass jedes der Bauelemente 26a, 26b, 26c, 26d oder zumindest ein oder mehrere ausgewählte Bauelemente 26a, 26b, 26c, 26d ein Signal, das insbesondere ein analoges Signal ist, aussenden. Das Signal zeigt eine physikalische Eigenschaft 30a, 30b, 30c, 30d des jeweiligen Bauelements 26a, 26b, 26c, 26d an. In Abhängigkeit von der physikalischen Eigenschaft 30a, 30b, 30c, 30d, die dem Schlüsselgenerator 24 zugeführt wird, kann der Schlüssel 20 bestimmt werden.The
Ferner ist ein Entscheider 32 vorgesehen, der einen Indikator 34 empfängt, mit dem ein oder mehrere der empfangenen physikalischen Eigenschaften 30a, 30b, 30c, 30d ausgewählt und nach der Auswahl dem Schlüsselgenerator 24 zugeführt werden.Furthermore, a
Die Sätze 54a, 54b, 54c sind beispielsweise einer Reihenfolge 56 zugeordnet, wobei der Satz 54a einem in der Reihenfolge vorherigen Satz 58, der Satz 54b einem in der Reihenfolge nachherigen Satz 60 und der Satz 54c einem weiteren in der Reihenfolge nachherigen Satz 62 entspricht. Der Indikator 34 kann beispielsweise in diesem Fall die Werte „1", „2“ oder „3“ annehmen. Im Fall eines Indikators 34, der den Wert „1“ annimmt, wird der vorherige Satz 58 ausgewählt. Im Fall, dass der Indikator den Wert „2“ annimmt, wird der nachherige Satz 60 ausgewählt und im Fall, dass der Indikator den Wert „3“ annimmt, wird der weitere nachherige Satz 62 ausgewählt.The
In
Nach der Erhöhung nimmt der Indikator 34 z. B. den Wert „2“ an, so dass von diesem Zeitpunkt an der Indikator 34 als Wert den Wert „2“ aufweist. Hierbei werden vorzugsweise nach Änderung eines Indikators 34 alle bereits zuvor ausgewählten Indikatoren 34 gespeichert, so dass beispielsweise Indikatoren 34 bei jedem Durchlauf des Verfahrens nicht wieder einen Wert nach einer Änderung annehmen können, der einem vorherigen Wert entspricht. Vorzugsweise werden demnach bereits vor dem Erfüllen von Kriterien 70 verwendete Indikatoren 34 nicht wiederverwendet.After the increase, the
Bezugszeichenlistelist of reference symbols
- 1010
- Vorrichtungdevice
- 1212
- Speichermemory
- 1414
- Mikrokontrollereinheitmicrocontroller unit
- 1616
- Kryptomodulcrypto module
- 1818
- DatenData
- 2020
- SchlüsselKey
- 20a20a
- erster Schlüsselfirst key
- 20b20b
- zweiter Schlüsselsecond key
- 2121
- Metadatenmetadata
- 2222
- Schnittstelleinterface
- 2323
- Signatursignature
- 2424
- Schlüsselgeneratorkey generator
- 26a26a
- Bauelementcomponent
- 26b26b
- Bauelementcomponent
- 26c26c
- Bauelementcomponent
- 26d26d
- Bauelementcomponent
- 2828
- Auslösesignaltrigger signal
- 30a30a
- physikalische Eigenschaftphysical property
- 30b30b
- physikalische Eigenschaftphysical property
- 30c30c
- physikalische Eigenschaftphysical property
- 30d30 days
- physikalische Eigenschaftphysical property
- 3232
- Entscheiderdecision-makers
- 3434
- Indikatorindicator
- 4040
- Empfangen AufforderungReceive Request
- 4242
- Aufforderungrequest
- 4343
- Erfassen IndikatorCapture Indicator
- 4444
- Auswählen mindestens einer physikalischen EigenschaftSelecting at least one physical property
- 4646
- Erzeugen SchlüsselGenerate Key
- 4848
- Signieren DatenSigning Data
- 5050
- signierte Dateisigned file
- 52a52a
- erste Signaturfirst signature
- 52b52b
- zweite Signatursecond signature
- 54a54a
- SatzSentence
- 54b54b
- SatzSentence
- 54c54c
- SatzSentence
- 5656
- ReihenfolgeSeries
- 5858
- vorheriger Satzprevious sentence
- 6060
- nachheriger Satzsubsequent sentence
- 6262
- weiterer nachheriger Satzfurther subsequent sentence
- 6464
- Benutzerschnittstelleuser interface
- 6565
- Befehlcommand
- 6666
- ZustandCondition
- 6868
- Zeitangabetime indication
- 7070
- Kriteriumcriterion
- 7272
- Vergleichen Ereignis oder Zeitangabe mit KriteriumCompare event or time with criterion
- 7474
- Startwertstarting value
- 7575
- Speichermemory
- 7676
- Passwortpassword
- 7777
- Auswahlschrittselection step
- 7878
- Decoderdecoder
Claims (15)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE102023108678.2A DE102023108678A1 (en) | 2023-04-05 | 2023-04-05 | Method for signing or decrypting data with a cryptographic key and computer program product and device therefor |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE102023108678.2A DE102023108678A1 (en) | 2023-04-05 | 2023-04-05 | Method for signing or decrypting data with a cryptographic key and computer program product and device therefor |
Publications (1)
Publication Number | Publication Date |
---|---|
DE102023108678A1 true DE102023108678A1 (en) | 2024-10-10 |
Family
ID=92802132
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE102023108678.2A Pending DE102023108678A1 (en) | 2023-04-05 | 2023-04-05 | Method for signing or decrypting data with a cryptographic key and computer program product and device therefor |
Country Status (1)
Country | Link |
---|---|
DE (1) | DE102023108678A1 (en) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20010033012A1 (en) | 1999-12-30 | 2001-10-25 | Koemmerling Oliver | Anti tamper encapsulation for an integrated circuit |
EP1588371B1 (en) | 2003-01-14 | 2009-09-02 | Nxp B.V. | Tamper-resistant packaging and approach using magnetically-set data |
US9082514B1 (en) | 2013-04-22 | 2015-07-14 | Xilinx, Inc. | Method and apparatus for physically unclonable function burn-in |
-
2023
- 2023-04-05 DE DE102023108678.2A patent/DE102023108678A1/en active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20010033012A1 (en) | 1999-12-30 | 2001-10-25 | Koemmerling Oliver | Anti tamper encapsulation for an integrated circuit |
EP1588371B1 (en) | 2003-01-14 | 2009-09-02 | Nxp B.V. | Tamper-resistant packaging and approach using magnetically-set data |
US9082514B1 (en) | 2013-04-22 | 2015-07-14 | Xilinx, Inc. | Method and apparatus for physically unclonable function burn-in |
Non-Patent Citations (1)
Title |
---|
DODDA, Akhil [et al.]: Graphene-based physically unclonable functions that are reconfigurable and resilient to machine learning attacks. In: Nature Electronics, Vol. 4, 2021, Nr. 5, S. 364–374. DOI: 10.1038/s41928-021-00569-x |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE102013203415B4 (en) | Create a derived key from a cryptographic key using a non-cloning function | |
EP2367128B1 (en) | Device and method for electronic signatures | |
EP3610605B1 (en) | Method and device for generating a cryptographic timestamp for a digital document on a majority basis | |
EP2940620B1 (en) | Derivation of a device-specific value employing an unclonable function | |
DE112005001666B4 (en) | A method for providing private direct proof keys in signed groups to devices using a distribution CD | |
WO2007053864A1 (en) | Method for generating an advanced electronic signature for an electronic document | |
EP1105998B1 (en) | Method and device for creating a secret communication key for a predetermined asymmetric and cryptographic key-pair | |
DE102012217716A1 (en) | Self-test of a Physical Unclonable Function | |
DE102004024002A1 (en) | Method for authenticating sensor data and associated sensor | |
DE19959764A1 (en) | Methods for generating digital signature in signature device for signing of document by encoding of signature data using signature key | |
DE202016105474U1 (en) | Device for tamper-proof registration of measured values | |
DE102014208838A1 (en) | Method for operating a control device | |
DE102008055076A1 (en) | Device and method for protecting data, computer program, computer program product | |
WO2014131557A1 (en) | Generating a key using biometric data, and a puf | |
DE102014210282A1 (en) | Generate a cryptographic key | |
DE102016224533A1 (en) | Bidirectionally linked blockchain structure | |
EP3767513B1 (en) | Method for secure execution of a remote signature, and security system | |
DE102023108678A1 (en) | Method for signing or decrypting data with a cryptographic key and computer program product and device therefor | |
EP3121992A1 (en) | Secure electronic signing of information | |
EP0982896B1 (en) | Method and apparatus for proving existence of a digital signature of a digital file | |
WO2016005075A1 (en) | Method and system for identifying manipulation of data records | |
WO1998026537A1 (en) | Method for electronically protected storage of data in a data bank | |
DE10020562C1 (en) | Error handling method for data processing unit has error information encoded before transmission from data processing unit to central data processor for evaluation | |
DE202021100647U1 (en) | Personal data anonymization system (PDAS) with customer-specific token | |
EP3371733B1 (en) | Encrypting the memory content of a memory in an embedded system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
R012 | Request for examination validly filed | ||
R016 | Response to examination communication | ||
R081 | Change of applicant/patentee |
Owner name: TRUSTNXT GMBH, DE Free format text: FORMER OWNER: BASLER AKTIENGESELLSCHAFT, 22926 AHRENSBURG, DE |