DE102015214427A1 - Ableitung eines Sitzungsschlüssels mit Zugriff auf eine physikalisch unklonbare Funktion - Google Patents

Ableitung eines Sitzungsschlüssels mit Zugriff auf eine physikalisch unklonbare Funktion Download PDF

Info

Publication number
DE102015214427A1
DE102015214427A1 DE102015214427.5A DE102015214427A DE102015214427A1 DE 102015214427 A1 DE102015214427 A1 DE 102015214427A1 DE 102015214427 A DE102015214427 A DE 102015214427A DE 102015214427 A1 DE102015214427 A1 DE 102015214427A1
Authority
DE
Germany
Prior art keywords
key
session
module
derivation
response
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Withdrawn
Application number
DE102015214427.5A
Other languages
English (en)
Inventor
Kai Fischer
Erwin Hess
Andreas Mucha
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Siemens AG
Original Assignee
Siemens AG
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Siemens AG filed Critical Siemens AG
Priority to DE102015214427.5A priority Critical patent/DE102015214427A1/de
Publication of DE102015214427A1 publication Critical patent/DE102015214427A1/de
Withdrawn legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/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
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09CCIPHERING OR DECIPHERING APPARATUS FOR CRYPTOGRAPHIC OR OTHER PURPOSES INVOLVING THE NEED FOR SECRECY
    • G09C1/00Apparatus or methods whereby a given sequence of signs, e.g. an intelligible text, is transformed into an unintelligible sequence of signs by transposing the signs or groups of signs or by replacing them by others according to a predetermined system
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords

Landscapes

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

Abstract

Die Erfindung betrifft eine Vorrichtung sowie ein Verfahren und Computerprogrammprodukt zur Ableitung eines Sitzungsschlüssels mit Zugriff auf eine physikalisch unklonbare Funktion, wobei eine Erzeugung und eine Ableitung eines Schlüssels vorgesehen sind. Es ist ein Schlüsselerzeugungsmodul zur Erzeugung eines kryptographischen Schlüssels aus einer Response der physikalisch unklonbaren Funktion vorgesehen sowie ein Schlüsselableitungsmodul zur Ableitung des Sitzungsschlüssels aus dem kryptographischen Schlüssel und einem sitzungsspezifischen Ableitungsparameter.

Description

  • Die Erfindung betrifft eine Vorrichtung sowie ein Verfahren und Computerprogrammprodukt zur Ableitung eines Sitzungsschlüssels mit Zugriff auf eine physikalisch unklonbare Funktion, wobei eine Erzeugung und eine Ableitung eines Schlüssels vorgesehen sind.
  • Für die Durchführung kryptographischer Verfahren werden kryptographische Schlüssel benötigt, deren Nutzung abgesichert werden soll. Zum einen soll bereits die Bereitstellung eines kryptographischen Schlüssels gesichert erfolgen. D.h. beispielsweise soll ein unberechtigtes Auslesen verhindert werden. Gleichzeitig soll bei Bedarf komfortabel und ohne großen Schlüsselverteilungsaufwand auf sensitives Schlüsselmaterial zugegriffen werden können.
  • Für zahlreiche Anwendungsfälle ist es nicht ausreichend, einen einzigen kryptographischen Schlüssel, quasi als Master-Key, bereitzustellen. Vielmehr sind gegebenenfalls eine Anzahl unterschiedlicher Schlüssel nötig, welche beispielsweise für verschiedene Algorithmen oder verschiedene Nutzer oder verschiedene Zwecke eingesetzt werden sollen.
  • Das Bereitstellen kryptographischer Schlüssel auf standardkonformen Integrierten Schaltkreisen oder FPGAs als Implementierungsplattformen gewinnt für die praktische Nutzung kryptographischer Verfahren zunehmend an Bedeutung. Auf solchen oder vergleichbaren Implementierungsplattformen ist keine Möglichkeit gegeben, chip-intern einen kryptographischen Schlüssel oder andere variable sensitive Daten sicher und dauerhaft zu speichern.
  • Spezielle Sicherheits-ICs, wie sie beispielsweise für Geldkarten oder SIM-Karten oder ähnliche Chipkarten vorgesehen sind, besitzen einen speziellen oder zudem noch physikalisch geschützten nichtflüchtigen Speicher wie ein EEPROM oder einen Flash-Speicher, in dem das geheim zu haltende Schlüsselmaterial gespeichert ist. Für veränderliche Werte sind physikalische Zufallszahlengeneratoren oder Pseudozufallszahlengeneratoren oder Zählwerke usw. vorgesehen, welche auf einen im nichtflüchtigen Speicher abgespeicherten Startwert zurückgreifen.
  • Es ist ferner allgemein bekannt, einen chip-externen nichtflüchtigen Speicher für die Hinterlegung von sensitiven Daten zu verwenden. Die Daten werden über einen chip-externen Bus zwischen dem nichtflüchtigen Speicher und dem integrierten Schaltkreis ausgetauscht. Diese Kommunikation ist nur mit großem Aufwand gegen Ausspähen abzusichern. Zusätzlich besteht die Gefahr, dass ein Angreifer den externen Speicher offline ausliest und einen kryptographischen Schlüssel extrahiert. Ferner ist die Speicherung in einem internen oder externen flüchtigen Random Access Memory, kurz RAM, bekannt. Dabei muss der Chip eine permanente, nicht unterbrechbare Energieversorgung besitzen, wie beispielsweise eine Batterie. Somit sind wiederum aufwendige physikalische Schutzmaßnahmen erforderlich, da der Speicher ähnlich wie ein nichtflüchtiger Speicher von einem Angreifer direkt ausgelesen werden kann.
  • Allgemein ist die Verwendung physikalisch unklonbarer Funktionen oder Physical Unclonable Functions, im folgenden kurz PUF genannt, vorgesehen, um ein Abspeichern eines kryptographischen Schlüssels oder ein manuelles Eingeben eines Schlüssels zu vermeiden. Mittels einer Halbleiter-PUF, d.h. einer physikalisch unklonbaren Funktion, die mit Hilfe üblicher Halbleitertechnologie physikalisch implementiert werden kann, ist ein Schlüssel ad hoc bei Bedarf erzeugbar. Die PUF-Eigenschaft einer solchen Halbleiterschaltung besteht darin, dass es weder für den Designer der Schaltung, noch für den Hersteller des Halbleiters oder einen potentiellen Angreifer möglich ist, das Verhalten der Schaltung direkt zu analysieren oder den Ausgabewert der Schaltung gezielt zu beeinflussen oder vorherzusagen. Ebenso wenig ist es möglich, die Funktion identisch zu reproduzieren, obwohl es möglich ist, die zugehörige Schaltung zu reproduzieren.
  • Es ist aus der Veröffentlichungsschrift US 2013/0142329 A1 bekannt, einen gerätespezifischen Schlüssel mittels einer PUF abzuleiten. Dabei gehen Ableitungsparameter in die Schlüsselerzeugung ein.
  • Vor diesem Hintergrund ist es eine Aufgabe der vorliegenden Erfindung, eine Vorrichtung sowie ein Verfahren und ein Computerprogrammprodukt bereitzustellen, welches eine vereinfachte und gleichzeitig sichere Ableitung eines Sitzungsschlüssels ermöglicht.
  • Diese Aufgabe wird durch die Gegenstände der unabhängigen Ansprüche gelöst. Vorteilhafte Ausgestaltungen sind in den abhängigen Ansprüchen angegeben.
  • Die Erfindung betrifft eine Vorrichtung zur Ableitung eines Sitzungsschlüssels mit Zugriff auf eine physikalisch unklonbare Funktion, aufweisend ein Schlüsselerzeugungsmodul zur Erzeugung eines kryptographischen Schlüssels aus einer Response der physikalisch unklonbaren Funktion und ein Schlüsselableitungsmodul zur Ableitung des Sitzungsschlüssels aus dem kryptographischen Schlüssel und einem sitzungsspezifischen Ableitungsparameter.
  • Mittels des Schlüsselerzeugungsmoduls wird ein kryptographischer Schlüssel aus einer Response einer PUF gebildet. Die PUF wird für die Erzeugung der Response durch eine Challenge stimuliert. Insbesondere werden verschiedene Challenges zur Ermittlung verschiedener Responses-Bits verwendet. Beispielsweise wird der kryptographische Schlüssel aus mehreren PUF-Response-Bits gebildet, die nacheinander durch Anlegen verschiedener Challenges oder durch Vorsehen einer Challenge, die eine Abfolge von Umkonfigurierungen bewirkt, ermittelt werden. Der Schlüssel kann ebenso direkt aus der Challenge oder der Response der Challenge abgeleitet werden. Für die Erzeugung auf Basis des Response-Wertes sind gegebenenfalls Hilfsdaten nötig, um eine zuverlässige Erzeugung des Schlüssels gewährleisten zu können. Der erzeugte kryptographische Schlüssel erfüllt bereits Anforderungen des Kryptoalgorithmus, für den er im späteren Verlauf eingesetzt werden soll, beispielsweise im Hinblick auf Schlüssellänge oder Entropie. Die physikalisch unklonbare Funktion ist beispielsweise auf der Vorrichtung direkt vorgesehen. Bei der Vorrichtung handelt es sich beispielsweise um einen integrierten Schaltkreis oder einen FPGA. Vorteilhafterweise ist sowohl das Schlüsselerzeugungsmodul, als auch die PUF, als auch das Schlüsselableitungsmodul auf einer gemeinsamen Schaltkreiseinheit ausgebildet.
  • Das Schlüsselableitungsmodul erhält als Input sowohl den bereits erzeugten kryptographischen Schlüssel als auch einen sitzungsspezifischen Ableitungsparameter. Da der kryptographische Schlüssel mit Hilfe der PUF erstellt wurde, ist dieser bereit gerätespezifisch. Durch das Einbeziehen des sitzungsspezifischen Ableitungsparameters wird aus dem gerätespezifischen Schlüssel überdies ein sitzungsspezifischer Schlüssel oder Sitzungsschlüssel.
  • Auf vorteilhafte Weise erfolgt die unter Umständen aufwendige Erzeugung eines Schlüssels, welcher Anforderungen kryptographischer Algorithmen erfüllt, ohne Einbeziehung des sitzungsspezifischen Ableitungsparameters. Somit kann eine ohnehin aufwendige Erzeugung des kryptographischen Schlüssels aus der PUF-Response regulär, ohne durch einen Sitzungsparameter weiterhin erhöhte Komplexität, durchgeführt werden. Hilfsmittel, wie beispielsweise ein Fuzzy-Key-Extractor oder die benötigten Hilfsdaten können somit auf die PUF und das jeweilige Gerät abgestimmt werden. Eine Einbeziehung von Ableitungsparametern zur Schlüsseldiversifizierung in die Ermittlung der Hilfsdaten wird vermieden.
  • Gemäß einer Ausgestaltung ist die physikalisch unklonbare Funktion konfigurierbar ausgestaltet und das Schlüsselerzeugungsmodul ausgestaltet, zu verschiedenen Responses der konfigurierbaren physikalisch unklonbaren Funktion jeweils zugehörige kryptographische Schlüssel zu erzeugen. Bei einer konfigurierbaren PUF sind in Abhängigkeit von PUF-Konfigurationsdaten, welche die Challenge bilden, verschiedene Responses erzeugbar. Aus diesen unterschiedlichen Responses sind unterschiedliche kryptographische Schlüssel ableitbar. Insbesondere sind für die Erzeugung eines der unterschiedlichen kryptographischen Schlüssel wiederum mehrfache Konfigurationen über verschiedene Challenges notwendig, um genügend viele Teil-Responses zu erhalten, aus denen ein Schlüssel erzeugt werden kann. Dafür müssen gegebenenfalls benötigte Hilfsdaten auf die jeweilige Response oder Challenge je Konfiguration angepasst werden. Somit ist auf vorteilhafte Weise bereits eine Vielzahl unterschiedlicher kryptographischer Schlüssel ableitbar. Durch das Schlüsselableitungsmodul ist für diese unterschiedlichen, beispielsweise zweckgebundenen, kryptographischen Schlüssel noch zusätzlich die Bindung an den Sitzungsparameter sichergestellt. Durch das Zusammenschalten dieser beiden Mechanismen ist in Summe eine Vielzahl geeigneter Sitzungsschlüssel sicher ableitbar.
  • Gemäß einer Ausgestaltung weist das Schlüsselerzeugungsmodul ein Decodiermodul auf zur Erzeugung eines Rohschlüssels aus der Response der physikalisch unklonbaren Funktion unter Zuhilfenahme von zu der Response oder der Response zugrundeliegenden Challenges gehörigen Hilfsdaten.
  • Gemäß einer Ausgestaltung weist das Schlüsselerzeugungsmodul ein Homogenisierungs- und Kompressionsmodul auf. Hier wird insbesondere für einen mittels des Decodiermoduls erzeugten Rohschlüssel sichergestellt, dass eine annähernde Gleichverteilung von 0 und 1 Bits vorliegt. Ebenso kann sichergestellt werden, dass für einen Rohschlüssel mit Entropie e ein geheimer Nutzschlüssel der Binärlänge m erstellt wird, so dass der geheime Nutzschlüssel die Entropie minimum(e, m) aufweist.
  • Beispielsweise besteht das Homogenisierungs- und Kompressionsmodul aus einer kryptographischen Hashfunktion und einer Kompressionsfunktion, welche nachgeschaltet ist und welche aus dem Ergebnis des Hashvorgangs einen Bit-Vektor der Länge m auswählt. Im einfachsten Fall besteht die Kompressionsfunktion m einfach daraus, m Bits des Output-Vektors der Hashfunktion abzuschneiden.
  • Gemäß einer Ausgestaltung weist das Schlüsselableitungsmodul einen Pseudozufallszahlengenerator auf zur Verarbeitung des kryptographischen Schlüssel und des sitzungsspezifischen Ableitungsparameters zu dem Sitzungsschlüssel. Befindet sich die Vorrichtung in einem Modus, in dem das Erzeugen eines Sitzungsschlüssels durchgeführt wird, so wird der erzeugte kryptographische Schlüssel an das Schlüsselableitungsmodul weitergegeben, welches den sitzungsspezifischen Ableitungsparameter ermittelt und in die Schlüsselableitung einfließen lässt. Beispielsweise handelt es sich bei dem sitzungsspezifischen Ableitungsparameter um variable Rohdaten, welche über die Zeit veränderlich sind. Der sitzungsspezifische Ableitungsparameter kann in einem Hardwaremodul zur Aufnahme veränderlicher Rohdaten hinterlegt sein.
  • Gemäß einer Ausgestaltung weist das Schlüsselableitungsmodul ein Datenmodul auf zur Bereitstellung mindestens eines sitzungsspezifischen Parameters, insbesondere beliebig vieler unterschiedlicher sitzungsspezifischer Parameter. Gemäß einer Ausgestaltung erstellt das Datenmodul mehrere sitzungsspezifische Parameter mit Hilfe eines Pseudozufallszahlengenerators oder eines physikalischen Zufallszahlengenerators oder führt diese von außen zu. Es ist ferner möglich, dass der sitzungsspezifische Parameter von der Response oder dem Rohschlüssel abhängt. Überdies sind Abhängigkeiten von Ort, Uhrzeit, einem über eine Nutzerschnittstelle eingebbaren Parameter usw. denkbar. Für die Ableitung eines sitzungsspezifischen Schlüssels sollte sichergestellt sein, dass für jede Schlüsselableitung auch tatsächlich ein neuer sitzungsspezifischer Parameter verwendet wird. Dies kann vorteilhaft über eine zur eigentlichen Schlüsselableitung verwendete Funktion realisiert werden, welche aus Daten des Hardwaremoduls und einem Ephemeral-Parameter den einmaligen sitzungsspezifischen Parameter generiert.
  • Gemäß einer Ausgestaltung ist das Schlüsselerzeugungsmodul ausgebildet zur Erzeugung des kryptographischen Schlüssels mit vorgebbaren Eigenschaften hinsichtlich einer Eignung für einen Verschlüsselungsalgorithmus oder hinsichtlich einer Schlüssellänge. Dafür werden vorteilhafterweise Hashfunktionen eingesetzt.
  • Die Erfindung betrifft ferner ein Verfahren zur Sicherung und Ableitung eines Sitzungsschlüssels mit Hilfe einer physikalisch unklonbaren Funktion und eines sitzungsspezifischen Ableitungsparameters, aufweist die folgenden Schritte:
    • – Ermitteln einer Response mittels einer physikalisch unklonbaren Funktion,
    • – Erzeugen eines kryptographischen Schlüssels aus der Response;
    • – Bereitstellen eines Ableitungsparameters mittels des Datenmoduls;
    • – Ableiten des Sitzungsschlüssels aus dem kryptographischen Schlüssel und dem sitzungsspezifischen Ableitungsparameter.
  • Insbesondere wird eine Response der physikalisch unklonbaren Funktion ermittelt mittels Konfigurationsdaten, etwa in Form einer oder mehrerer Challenges, die der physikalisch unklonbaren Funktion bereitgestellt wurden.
  • Gemäß einer Weiterbildung wird nach der Response der physikalisch unklonbaren Funktion unter Zuhilfenahme von zu der Response oder der Response zugrundeliegenden Challenges gehörigen Hilfsdaten.
  • Gemäß einer Weiterbildung wird der Rohschlüssel mittels eines Homogenisierungs- und Kompressionsmoduls nachbearbeitet.
  • Gemäß einer Ausgestaltung wird der Sitzungsschlüssel mittels eines Pseudozufallszahlengenerators aus dem kryptographischen Schlüssel und dem sitzungsspezifischen Ableitungsparameter abgeleitet.
  • Gemäß einer Ausgestaltung ist der sitzungsspezifische Parameter veränderlich und wird insbesondere für jedes Ableiten verändert.
  • Gemäß einer Weiterbildung werden die veränderlichen sitzungsspezifischen Parameter mit Hilfe eines Pseudozufallszahlengenerators oder eines physikalischen Zufallszahlengenerators erstellt oder von außen zugeführt. Bei der Verwendung von Zufallszahlengeneratoren ist sichergestellt, dass nicht mehrmals der gleiche Sitzungsschlüssel erstellt wird.
  • Die Erfindung betrifft ferner ein Computerprogrammprodukt mit einem Computerprogramm, das Mittel zur Durchführung des Verfahrens nach einem der oben beschriebenen Ausführungsformen aufweist, wenn das Computerprogramm auf einer programmgesteuerten Einrichtung zur Ausführung gebracht wird.
  • Ein Computerprogrammprodukt, wie z.B. ein Computerprogramm-Mittel, kann beispielsweise als Speichermedium, wie z.B. Speicherkarte, USB-Stick, CD-ROM, DVD, oder auch in Form einer herunterladbaren Datei von einem Server in einem Netzwerk bereitgestellt oder geliefert werden. Dies kann zum Beispiel in einem drahtlosen Kommunikationsnetzwerk durch die Übertragung einer entsprechenden Datei mit dem Computerprogrammprodukt oder dem Computerprogramm-Mittel erfolgen. Als programmgesteuerte Einrichtung kommt insbesondere eine Steuereinrichtung, wie zum Beispiel ein Mikroprozessor für eine Smartcard oder dergleichen in Frage. Das Verfahren oder die Vorrichtung kann auch festverdrahtet oder in konfigurierbaren FPGAs implementiert werden.
  • Die Erfindung wird nachfolgend anhand eines Ausführungsbeispiels mit Hilfe der Figur näher erläutert.
  • Die Figur zeigt eine schematische Darstellung eines Kryptoschlüsselmoduls 100 als Vorrichtung zur Ableitung eines Sitzungsschlüssels SK gemäß einem Ausführungsbeispiel der Erfindung, bei welchem der kryptographische Sitzungsschlüssel SK für einen Kryptoalgorithmus 200 bereitgestellt wird. Beispielsweise verwendet der Kryptoalgorithmus 200 ein asymmetrisches Kryptoverfahren auf Basis des diskreten Logarithmus in einer endlichen zyklischen Gruppe mit erzeugendem Element G. Besonders vorteilhaft ist es, eine Gruppe von Punkten auf einer elliptischen Kurve zu wählen. Der kryptographische Session-Key oder Sitzungsschlüssel kann unterschiedliche Rollen übernehmen. Beispielsweise wird er als pseudozufälliger geheimer Skalar für logarithmusbasierte Protokolle des ElGamal- und Diffie-Hellman-Typs verwendet. Ferner kann der Sitzungsschlüssel SK ebenso für ein Signaturverfahren auf Basis des diskreten Logarithmus wie beispielsweise DSA, ECDSA oder ECGDSA zur Signaturerzeugung verwendet werden.
  • Für ein Kryptoverfahren, welches auf Basis eines symmetrischen Kryptoalgorithmus arbeitet, ist die Verwendung des Sitzungsschlüssels SK ebenso vorteilhaft möglich. Es kann sich beispielsweise um ein symmetrisches Verschlüsselungs-, Authentisierungs- oder MAC-Verfahren handeln.
  • Es ist auf dem Kryptoschlüsslmodul 100 eine konfigurierbare physikalisch unklonbare Funktion PUF vorgesehen, welche durch Anlegen geeigneter Initialisierungswerte C1, Ck, ..., Cn unterschiedlich konfiguriert werden kann. Die physikalisch unklonbare Funktion PUF wird beispielsweise durch PUF-Konfigurationsdaten C1, Ck, ..., Cn als Satz von Konfigurationsvektoren festgelegt. In einer Initialisierungsphase wird die PUF mit jedem der Konfigurationsvektoren C1, Ck, ..., Cn als Challenges beaufschlagt. Zu jedem der Konfigurationsvektoren C1, Ck, ..., Cn werden die zugehörigen Responses erfasst.
  • Dafür werden verschiedene aufeinanderfolgende Läufe durchgeführt und evaluiert. Abhängig von diesen Responses werden in der Initialisierungsphase Hilfsdaten HD und Parametereinstellungen für ein Decodiermodul 10 ermittelt. Die ermittelten Hilfsdaten HD, welche individuell für die Hardwarevorrichtung sind, auf welcher das Kryptoschlüsselmodul 100 realisiert ist, sowie die Parametereinstellungen eines Decodiermoduls 10 werden dem Kryptoschlüsselmodul 100 fest zugeordnet. Beispielsweise handelt es sich um einen integrierten Schaltkreis, insbesondere einen FPGA. Die Hilfsdaten HD sowie Parametereinstellungen sollten dauerhaft gespeichert werden, wobei die Hilfsdaten HD vorzugsweise auf einem externen nichtflüchtigen Speicher (nicht dargestellt) gespeichert werden und die Decodiermodul-Parametereinstellungen sowohl extern als auch schaltkreisintern, beispielsweise mittels eines Read Only Memorys oder von Fuses gespeichert werden können.
  • Das Decodiermodul 10 setzt einen auf die physikalisch unklonbare Funktion PUF abgestimmten fehlerkorrigierenden Code um und verwendet dazu die für die Hardware zugeordneten Hilfsdaten HD.
  • Das Decodiermodul 10 erzeugt so einen Rohschlüssel P und leitet diesen an ein Homogenisierungs- und Kompressionsmodul 20 weiter. Dort wird der Rohschlüssel P zu einem kryptographischen Schlüssel K der Länge m verarbeitet. Durch das Homogenisierungs- und Kompressionsmodul 20 erhält der kryptographische Schlüssel K die folgenden geforderten Eigenschaften:
  • Die Bits 0 und 1 sind zumindest annähernd gleich verteilt. Außerdem gilt für einen Rohschlüssel P der Entropie e und einer Binärlänge des kryptographischen Schlüssels K der Länge m, dass der kryptographische Schlüssel K die Entropie minimum(e, m) aufweist, d.h. die Entropie ist durch die Entropie des Rohschlüssels oder durch die Länge des gekürzten Schlüssels gegeben, je nachdem, welcher Wert kleiner ist. Eine sinnvolle Abschätzung des Wertes e ist vorab beim Hersteller des integrierten Schaltkreises auf der Basis einer möglichst großen Anzahl von integrierten Schaltkreisen möglich. Es ist nicht zwingend erforderlich, dass m < e gilt.
  • Der erzeugte kryptographische Schlüssel K wird an ein Schlüsselableitungsmodul übergeben, welches einen Pseudozufallszahlengenerator 30 oder kurz PRNG aufweist. Der PRNG 30 übernimmt von einem Datenmodul 40 die dort verfügbaren, beispielsweise zu einem bestimmten Zeitpunkt verfügbaren veränderlichen oder variablen Rohdaten als sitzungsspezifischen Ableitungsparameter D und verarbeitet diese zusammen mit dem kryptographischen Schlüssel K zu dem Sitzungsschlüssel SK oder Ephemeral-Schlüssel. Dieser wird anschließend über ein Interface 60 an den Kryptoalgorithmus 200 übergeben. Es ist zu gewährleisten, dass für jede Schlüsselableitung neue veränderliche Rohdaten herangezogen werden. Dafür kann das Datenmodul 40 beispielsweise auf die Funktionsweise des Pseudozufallszahlengenerators 30 zurückgreifen, mit dessen Hilfe die variablen Rohdaten permanent erneuert oder aktualisiert werden können. So wird permanent ein sitzungsindividueller Ableitungsparameter gebildet. Ferner können die variablen Daten von unterschiedlichen Quellen stammen: Sie können etwa von außen zugeführt werden, was schematisch über einen Pfeil von außerhalb des Kryptoschlüsselmoduls 100 dargestellt ist, oder von einem auf dem Schlüsselmodul vorgesehenen physikalischen Zufallszahlengenerator erzeugt werden. Ebenso ist das Erzeugen mittels eines Zählwerkes sinnvoll. Auch Abhängigkeiten zu Responses oder zu einem erzeugten Rohschlüssel P sind vorteilhaft möglich. Überdies können in Varianten Kombinationen der verschiedenen Quellen eingesetzt werden. Beispielsweise werden von extern in Abhängigkeit von einer Zeitinformation Daten ermittelt und diese mittels des PRNGs nochmals verändert. Die Varianten sind durch unterbrochen gezeichnete Pfeile in der Figur angedeutet. Es sind auf vorteilhafte Weise auch Kombinationen der gezeigten Varianten möglich.
  • Es kann auf vorteilhafte Weise für ein Kryptoschlüsselmodul 100 zwischen einem Master-Key-Modus und einem Ephemeral-Key-Modus unterschieden werden. Dazu wird der kryptographische Schlüssel K durch eine Steuereinheit 70 nach dessen Erstellung unterschiedlich weiterverarbeitet: Im Master-Key-Modus wird der Schlüssel direkt an die Schnittstelleneinrichtung 60 weitergeleitet, im Ephemeral-Key-Modus hingegen wird der kryptographische Schlüssel K an das Schlüsselableitungsmodul weitergeleitet. Danach erfolgt die Schlüsselableitung mit Hilfe des sitzungsspezifischen Ableitungsparameters D und somit die Erstellung des Sitzungsschlüssels SK. Im Ephemeral-Key-Modus wird anstatt des Master-Keys, d.h. anstatt des erzeugten kryptographischen Schlüssels K, der Sitzungsschlüssel SK über eine Weiterleitungseinheit 50 an die Schnittstelle 60 übergeben.
  • Es ist besonders zweckmäßig, für Funktionalitäten der verschiedenen Module gemeinsame Realisierungen vorzusehen. Das Homogenisierungs- und Kompressionsmodul 20 besteht aus zwei Modulen, nämlich einer Hashfunktion und einer zweiten Kompressionsfunktion. Die Hashfunktion des Homogenisierungs- und Kompressionsmoduls kann zugleich in der Funktion des Pseudozufallszahlengenerators verwendet werden. Dazu kann das Schlüsselableitungsmodul ebenfalls auf den Pseudozufallszahlengenerator des Schlüsselerzeugungsmoduls zugreifen. Dazu wird der Output des Homogenisierungs- und Kompressionsmoduls 20, d.h. der kryptographische Schlüssel K, in das Teilmodul der Hashfunktion zurückgeführt und dort mit dem sitzungsspezifischen Ableitungsparameter D verknüpft.
  • Aufgrund der Einspeisung des sitzungsspezifischen Ableitungsparameters D mit dem kryptographischen Schlüssel K gemeinsam in das Modul des Pseudozufallszahlengenerators 30 bestehen keine besonders hohen Anforderungen an die Qualität der variablen Daten des Datenmoduls 40. Die kryptographische Qualität des Sitzungsschlüssels SK wird durch die Qualität der Schlüsselableitungsfunktion und des durch das Schlüsselerzeugungsmodul direkt erzeugten kryptographischen Schlüssels K garantiert.
  • Auf dem Kryptoschlüsselmodul 100 wird somit kein sicherer nichtflüchtiger Speicher zur Speicherung eines variablen oder veränderlichen Sitzungsschlüssels benötigt. Somit kann auf einem integrierten Schaltkreis, welcher keine Möglichkeit zur sicheren Abspeicherung eines kryptographischen Schlüssels bietet, ein veränderlicher Schlüssel für kryptographische Anwendungen in symmetrischen oder asymmetrischen Kryptoverfahren gewonnen werden. Dies gelingt durch Kopplung einer konfigurierbaren PUF und einem entsprechenden Schlüsselerzeugungsmodul mit einer kryptographischen Aufbereitung veränderlicher Daten. Die Erzeugung ephemeraler Schlüssel erfolgt überdies vorteilhafter Weise besonders schneller als bei einer Integration eines Ableitungsparameters in eine Schlüsselerzeugungsfunktion, insbesondere in Funktionen zur Erzeugung eines kryptographischen Schlüssels aus PUF-Responses.
  • Die jeweiligen Module können hardwaretechnisch und/oder auch softwaretechnisch implementiert sein. Bei einer hardwaretechnischen Implementierung kann das jeweilige Modul als Vorrichtung oder als Teil einer Vorrichtung, zum Beispiel als Computer oder als Mikroprozessor ausgebildet sein. Bei einer softwaretechnischen Implementierung kann das jeweilige Modul als Computerprogrammprodukt, als eine Funktion, als eine Routine, als Teil eines Programmcodes oder als ausführbares Objekt ausgebildet sein.
  • Obwohl die Erfindung im Detail durch das Ausführungsbeispiel näher illustriert und beschrieben wurde, so ist die Erfindung nicht durch die offenbarten Beispiele eingeschränkt und andere Variationen können vom Fachmann hieraus abgeleitet werden, ohne den Schutzumfang der Erfindung zu verlassen.
  • ZITATE ENTHALTEN IN DER BESCHREIBUNG
  • 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.
  • Zitierte Patentliteratur
    • US 2013/0142329 A1 [0008]

Claims (17)

  1. Vorrichtung zur Ableitung eines Sitzungsschlüssels mit Zugriff auf eine physikalisch unklonbare Funktion, aufweisend: – ein Schlüsselerzeugungsmodul zur Erzeugung eines kryptographischen Schlüssels aus einer Response der physikalisch unklonbaren Funktion; – Schlüsselableitungsmodul zur Ableitung des Sitzungsschlüssels aus dem kryptographischen Schlüssel und einem sitzungsspezifischen Ableitungsparameter.
  2. Vorrichtung nach Anspruch 1, wobei die physikalisch unklonbare Funktion konfigurierbar ausgestaltet ist und das Schlüsselerzeugungsmodul ausgestaltet ist, zu verschiedenen Responses der konfigurierbaren physikalisch unklonbaren Funktion jeweils zugehörige kryptographische Schlüssel zu erzeugen.
  3. Vorrichtung nach Anspruch 1 oder 2, wobei das Schlüsselerzeugungsmodul ein Dekodiermodul aufweist zur Erzeugung eines Rohschlüssels aus der Response der physikalisch unklonbaren Funktion unter Zuhilfenahme von zu der Response oder der Response zugrundeliegenden Challenges gehörigen Hilfsdaten.
  4. Vorrichtung nach einem der vorstehenden Ansprüche, wobei das Schlüsselerzeugungsmodul ein Homogenisierungs- und Kompression-Modul aufweist.
  5. Vorrichtung nach einem der vorstehenden Ansprüche, wobei das Schlüsselableitungsmodul einen Pseudozufallszahlengenerator aufweist zur Verarbeitung des kryptographischen Schlüssels und des sitzungsspezifischen Ableitungsparameters zu dem Sitzungsschlüssel.
  6. Vorrichtung nach einem der vorstehenden Ansprüche, wobei das Schlüsselableitungsmodul ein Datenmodul aufweist zur Bereitstellung mindestens eines sitzungsspezifischen Parameters, insbesondere beliebig vieler unterschiedlicher sitzungsspezifischer Parameter.
  7. Vorrichtung nach Anspruch 6, wobei das Datenmodul mehrere sitzungsspezifische Parameter mit Hilfe eines Pseudozufallszahlengenerators oder eines physikalischen Zufallszahlengenerators erstellt oder von außen zuführt.
  8. Vorrichtung nach 4, wobei das Homogenisierungs- und Kompressionsmodul eine Hashfunktion und eine Kompressionsfunktion aufweist.
  9. Vorrichtung nach Anspruch 4, wobei das Homogenisierungsmodul als Pseudozufallszahlengenerator des Schlüsselableitungsmoduls zur Verarbeitung des kryptographischen Schlüssels und des sitzungsspezifischen Ableitungsparameters zu dem Sitzungsschlüssel ausgebildet ist.
  10. Vorrichtung nach einem der vorstehenden Ansprüche, wobei das Schlüsselerzeugungsmodul ausgebildet ist zur Erzeugung des kryptographischen Schlüssels mit vorgebbaren Eigenschaften hinsichtlich einer Eignung für einen Verschlüsselungsalgorithmus oder hinsichtlich einer Schlüssellänge.
  11. Verfahren zur sicheren Ableitung eines Sitzungsschlüssels mit Hilfe einer physikalisch unklonbaren Funktion und eines sitzungsspezifischen Ableitungsparameters, aufweisend die folgenden Schritte: – Ermitteln einer Response mittels einer physikalisch unklonbaren Funktion, – Erzeugen eines kryptographischen Schlüssels aus der Response; – Bereitstellen eines Ableitungsparameters mittels des Datenmoduls; – Ableiten des Sitzungsschlüssels aus dem kryptographischen Schlüssel und dem sitzungsspezifischen Ableitungsparameter.
  12. Verfahren nach Anspruch 11, wobei aus der Response der physikalisch unklonbaren Funktion unter Zuhilfenahme von zu der Response oder der Response zugrundeliegenden Challenges gehörigen Hilfsdaten.
  13. Verfahren nach Anspruch 12, wobei der Rohschlüssel mittels eines Homogenisierungs- und Kompression-Moduls nachbearbeitet wird.
  14. Verfahren nach einem der Ansprüche 11 bis 13, wobei der Sitzungsschlüssel mittels eines Pseudozufallszahlengenerators aus dem kryptographischen Schlüssel und dem sitzungsspezifischen Ableitungsparameter abgeleitet wird.
  15. Verfahren nach einem der Ansprüche 11 bis 14, wobei der sitzungsspezifische Parameter veränderlich ist und insbesondere für jedes Ableiten verändert wird.
  16. Verfahren nach Anspruch 15, wobei die veränderlichen sitzungsspezifischen Parameter mit Hilfe eines Pseudozufallszahlengenerators oder eines physikalischen Zufallszahlengenerators erstellt oder von außen zugeführt werden.
  17. Computerprogrammprodukt mit einem Computerprogramm, das Mittel zur Durchführung des Verfahrens nach einem der Ansprüche 11 bis 16 aufweist, wenn das Computerprogramm auf einer programmgesteuerten Einrichtung zur Ausführung gebracht wird.
DE102015214427.5A 2015-07-29 2015-07-29 Ableitung eines Sitzungsschlüssels mit Zugriff auf eine physikalisch unklonbare Funktion Withdrawn DE102015214427A1 (de)

Priority Applications (1)

Application Number Priority Date Filing Date Title
DE102015214427.5A DE102015214427A1 (de) 2015-07-29 2015-07-29 Ableitung eines Sitzungsschlüssels mit Zugriff auf eine physikalisch unklonbare Funktion

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE102015214427.5A DE102015214427A1 (de) 2015-07-29 2015-07-29 Ableitung eines Sitzungsschlüssels mit Zugriff auf eine physikalisch unklonbare Funktion

Publications (1)

Publication Number Publication Date
DE102015214427A1 true DE102015214427A1 (de) 2017-02-02

Family

ID=57795520

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102015214427.5A Withdrawn DE102015214427A1 (de) 2015-07-29 2015-07-29 Ableitung eines Sitzungsschlüssels mit Zugriff auf eine physikalisch unklonbare Funktion

Country Status (1)

Country Link
DE (1) DE102015214427A1 (de)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112448813A (zh) * 2019-08-28 2021-03-05 大众汽车股份公司 用于根据密钥推导模型产生加密密钥的方法和装置及车辆

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110191837A1 (en) * 2008-09-26 2011-08-04 Koninklijke Philips Electronics N.V. Authenticating a device and a user
US20130142329A1 (en) 2011-12-02 2013-06-06 Cisco Technology, Inc. Utilizing physically unclonable functions to derive device specific keying material for protection of information
DE102013203415A1 (de) * 2013-02-28 2014-08-28 Siemens Aktiengesellschaft Erstellen eines abgeleiteten Schlüssels aus einem kryptographischen Schlüssel mittels einer physikalisch nicht klonbaren Funktion

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110191837A1 (en) * 2008-09-26 2011-08-04 Koninklijke Philips Electronics N.V. Authenticating a device and a user
US20130142329A1 (en) 2011-12-02 2013-06-06 Cisco Technology, Inc. Utilizing physically unclonable functions to derive device specific keying material for protection of information
DE102013203415A1 (de) * 2013-02-28 2014-08-28 Siemens Aktiengesellschaft Erstellen eines abgeleiteten Schlüssels aus einem kryptographischen Schlüssel mittels einer physikalisch nicht klonbaren Funktion

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112448813A (zh) * 2019-08-28 2021-03-05 大众汽车股份公司 用于根据密钥推导模型产生加密密钥的方法和装置及车辆

Similar Documents

Publication Publication Date Title
DE102011088502B3 (de) Verfahren und Vorrichtung zur Absicherung von Blockchiffren gegen Template-Attacken
DE102005012098B4 (de) Datenchiffrierprozessor sowie AES-Chiffriersystem und AES-Chiffrierverfahren
EP2742643B1 (de) Vorrichtung und verfahren zum entschlüsseln von daten
DE102013203415B4 (de) Erstellen eines abgeleiteten Schlüssels aus einem kryptographischen Schlüssel mittels einer physikalisch nicht klonbaren Funktion
DE102012201164B4 (de) Vorrichtung und verfahren zur erzeugung eines nachrichtenauthentifizierungscodes
EP3686871A1 (de) Verfahren zum härten von softwareapplikationen
EP2656535B1 (de) Kryptographisches verfahren
DE102013213316A1 (de) Zufallsbitstromgenerator mit verbesserter rückwärts gerichteter Gemeinhaltung
DE102013213354A1 (de) Zufallsbitstromgenerator mit garantierter mindestperiode
DE102011081421A1 (de) System zur sicheren Übertragung von Daten und Verfahren
DE102016120558A1 (de) Datenverarbeitungsvorrichtung und -verfahren für kryptographische verarbeitung von daten
DE102014203497A1 (de) Maskiertes nichtlinear rückgekoppeltes Schieberegister
AT517983B1 (de) Schutz eines Computersystems vor Seitenkanalattacken
DE112015006865T5 (de) Vorrichtung zum Erzeugen eines Nachrichten-Authenticators, Verfahren zum Erzeugen eines Nachrichten-Authenticators und Programm zum Erzeugen eines Nachrichten-Authenticators
DE102010029735A1 (de) Verfahren zum Generieren eines Bitvektors
DE102015220227A1 (de) Verfahren und System für eine asymmetrische Schlüsselherleitung
WO2016165930A1 (de) Vorrichtung und verfahren zum erzeugen eines schlüssels in einem programmierbaren hardwaremodul
DE102009007246A1 (de) Pseudozufallszahlengenerator und Verfahren zum Erzeugen einer Pseudozufallszahlenbitsequenz
EP3059895A1 (de) Einmalverschlüsselung von zählerdaten
EP3387636B1 (de) Kryptoalgorithmus mit schlüsselabhängigem maskiertem rechenschritt (sbox-aufruf)
DE102015214427A1 (de) Ableitung eines Sitzungsschlüssels mit Zugriff auf eine physikalisch unklonbare Funktion
DE10328860B4 (de) Vorrichtung und Verfahren zum Verschlüsseln von Daten
DE102010045580A1 (de) Schaltungsanordnung und Verfahren zum Betreiben einer Schaltungsanordnung
DE102015208899A1 (de) Vorrichtung und Verfahren zur flexiblen Erzeugung von kryptographischen privaten Schlüsseln und Gerät mit flexibel erzeugten kryptographischen privaten Schlüsseln
DE102017202940A1 (de) Verfahren und Vorrichtung zum Erzeugen kryptografischer Schlüssel

Legal Events

Date Code Title Description
R163 Identified publications notified
R119 Application deemed withdrawn, or ip right lapsed, due to non-payment of renewal fee