DE102013208358A1 - Verfahren und eine Vorrichtung zur Bereitstellung von echten Zufallsbitfolgen für mehrere Nutzer - Google Patents

Verfahren und eine Vorrichtung zur Bereitstellung von echten Zufallsbitfolgen für mehrere Nutzer Download PDF

Info

Publication number
DE102013208358A1
DE102013208358A1 DE201310208358 DE102013208358A DE102013208358A1 DE 102013208358 A1 DE102013208358 A1 DE 102013208358A1 DE 201310208358 DE201310208358 DE 201310208358 DE 102013208358 A DE102013208358 A DE 102013208358A DE 102013208358 A1 DE102013208358 A1 DE 102013208358A1
Authority
DE
Germany
Prior art keywords
user
random bit
bit sequence
true random
derivation
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
DE201310208358
Other languages
English (en)
Inventor
Rainer Falk
Steffen Fries
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 DE201310208358 priority Critical patent/DE102013208358A1/de
Priority to PCT/EP2014/056942 priority patent/WO2014180612A2/de
Publication of DE102013208358A1 publication Critical patent/DE102013208358A1/de
Withdrawn legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/58Random or pseudo-random number generators
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/58Random or pseudo-random number generators
    • G06F7/588Random number generators, i.e. based on natural stochastic processes
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Pure & Applied Mathematics (AREA)
  • Mathematical Optimization (AREA)
  • General Engineering & Computer Science (AREA)
  • Computational Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Storage Device Security (AREA)

Abstract

In dem Verfahren wird eine echte Zufallsbitfolge (5) durch eine Ableitungsvorschrift (13), die mindestens einen Ableitungsparameter (12, 12´) umfasst, nachverarbeitet. Eine Bindung der echten Zufallsbitfolge (5) an einen Nutzer (30, 31) wird eingerichtet, indem mindestens ein Ableitungsparameter (12, 12´) eine Information (4) über den Nutzer (30, 31) der echten Zufallsbitfolge (5) enthält. Eine Vorrichtung zur Bereitstellung von Zufallsbitfolgen für mehrere Nutzer (30, 31) umfasst eine Quelle (2) eingerichtet zur Bereitstellung echter Zufallsbitfolgen (5), eine Bindungseinheit (6), die eingerichtet ist, um eine von der Quelle (2) bereitgestellte echte Zufallsbitfolge (5) durch eine Ableitungsvorschrift (13), die mindestens einen Ableitungsparameter (12, 12´) umfasst, zu verarbeiten. Dabei wird eine Bindung der echten Zufallsbitfolge (5) an einen Nutzer (30, 31) eingerichtet, indem mindestens ein Ableitungsparameter (12, 12´) eine Information (4) über den Nutzer der Zufallsbitfolge enthält.

Description

  • Die Erfindung betrifft ein Verfahren und eine Vorrichtung zur Bereitstellung von echten Zufallsbitfolgen für mehrere Nutzer, wobei mehrere Nutzer beispielsweise mehrere Anwendungsprogramme, die auf einem Rechner ablaufen, oder mehrere virtuelle Einheiten, die auf einem Rechner implementiert sind, sein können.
  • Zahlreiche Verschlüsselungs- und Authentifizierungssysteme verlangen die Verwendung von Zufallszahlen, um beispielsweise Authentifizierungsabfragen während einer Authentifizierung zu erzeugen. Um echte Zufallsbitfolgen zu erzeugen, ist in der Regel eine physikalische Zufallsquelle erforderlich. Bei einem physikalischen Zufallszahlen-Generator wird ein physikalischer Prozess als Zufallsquelle verwendet. Als Beispiel für zufallsbestimmte physikalische Prozesse sei ein radioaktiver Zerfall, Rauschen von Halbleitern, frei schwingende Oszillatoren oder auch Schwankungen der tatsächlichen Zeitdauer einer mit einem Zeitgeber gemessenen Zeitdauern genannt.
  • Es gibt weiterhin sogenannte Pseudo-Zufallszahlen, die ausgehend von einem Startwert über eine deterministische Berechnungsfunktion ermittelt werden. Ein sogenannter Pseudo-Zufallszahlengenerator ermittelt entsprechend eine Folge von Pseudo-Zufallszahlen. Diese weisen von Zufallsbitfolgen erwartete statistische Eigenschaften auf. Obwohl Pseudo-Zufallszahlen für manche Anwendungen ausreichend zufällige Daten liefern, können sie echte Zufallsbitfolgen wie beispielsweise physikalische Zufallszahlen, nicht vollständig ersetzen, denn zumindest für die Bestimmung eines Startwertes wird ein echter Zufall beziehungsweise eine echte Zufallsbitfolge benötigt.
  • Des Weiteren sind deterministische kryptographische Zufallszahlengeneratoren bekannt, die ebenfalls deterministisch ausgehend von einem Startwert eine Zufallbitfolge berechnen. Die Zufallsbitfolgen weisen besondere Eigenschaften auf, die für die Verwendung in kryptographischen Protokollen erforderlich sind. Auch hier wird zumindest der Startwert mittels einer Quelle für echte Zufallsbitfolgen, wie zum Beispiel einem physikalischen Zufallszahlengenerator, ermittelt.
  • Heutige Rechner oder Geräte mit Mikroprozessoreinrichtungen zur Steuerung von Funktionen benötigen für verschiedene Anwendungen und Anwendungsprozessoren Zufallsbitfolgen, um sich gegenüber Kommunikationspartnern zu authentisieren oder um einen kryptographischen Schlüssel zu generieren, der zum Schutz eines Kommunikationskanals verwendet wird. Bei eingebetteten Systemen oder auch Rechnereinheiten mit einer Vielzahl von virtuellen Einheiten, beispielsweise virtuellen Maschinen oder Rechenkernen, steht nicht jeder Einheit bzw. der auf der Einheit ausgeführten Anwendung eine eigene Quelle für echte Zufallsbitfolgen zur Verfügung. Dies ist auch dadurch begründet, dass viele vorhandene Anwendungen keinen Zugriff auf eine physikalische Einheit haben, aus der eine zufallsbestimmte physikalische Prozessinformation zu entnehmen ist. Andererseits besteht der Bedarf jeder Anwendung eine ausreichende Anzahl an echten Zufallsbitfolgen für ihre Zwecke zur Verfügung zu stellen. Diese echten Zufallsbitfolgen einer Anwendung sollen zur Bildung einer ausreichenden Anzahl von beispielsweise kryptographischen oder Pseudo-Zufallszahlen verwendbar sein und keinen Rückschluss auf die Zufallszahlen der eigenen Anwendung noch auf Zufallszahlen einer anderen Anwendung ermöglichen.
  • Es ist die Aufgabe der vorliegenden Erfindung, echte Zufallsbitfolgen für verschiedene Nutzer in einem System, beispielsweise einem Rechner oder einem rechnergesteuerten Steuerungsgerät mit unterschiedlichen Anwendungen, basierend auf einer Quelle für echte Zufallsbitfolgen zu generieren.
  • Die Aufgabe wird durch die in den unabhängigen Ansprüchen beschriebenen Maßnahmen gelöst. In den Unteransprüchen sind vorteilhafte Weiterbildungen der Erfindung dargestellt.
  • In dem erfindungsgemäßen Verfahren wird eine echte Zufallsbitfolge durch eine Ableitungsvorschrift, die mindestens einen Ableitungsparameter umfasst, nachverarbeitet. Eine Bindung der echten Zufallsbitfolge an einen Nutzer wird eingerichtet, indem mindestens ein Ableitungsparameter eine Information über den Nutzer der echten Zufallsbitfolge enthält. Dies hat den Vorteil, dass durch die Nachbearbeitung beziehungsweise Ableitung der echten Zufallsbitfolge mit nutzerspezifischer Information die echte Zufallsbitfolge an einen bestimmten Verwendungszweck bzw. Anwendung gebunden wird. Dabei kann ein bereits vorhandener Nachbearbeitungsprozess verwendet werden, sodass nur ein geringer Mehraufwand dadurch entsteht. Dabei wird gleichzeitig sicher gestellt, dass ein Nutzer einer Zufallsbitfolge keinen Rückschluss auf die Generierung der Zufallsbitfolge und damit auch auf Zufallsbitfolgen, die anderen Nutzern zur Verfügung gestellt werden, ziehen kann. Dies ist insbesondere bei der Anwendung von Mehrnutzersystemen mit oder ohne Virtualisierung, in mehrkanaligen beziehungsweise mehrere Rechenkerne umfassenden Systemen erforderlich.
  • In einer vorteilhaften Ausführungsform wird als Ableitungsvorschrift eine Schlüsselableitungsfunktion verwendet. In einer anderen Ausführungsform wird als Ableitungsvorschrift eine physikalisch nicht-klonbare Funktion verwendet. Die genannten Funktionen sind an sich zur Schlüsselableitung beziehungsweise zur Zufallszahlenableitung bekannt und werden lediglich durch das Einbringen von Information über den Nutzer in mindestens einen Ableitungsparameter verändert. Dies kann einfach durch eine Modifikation der bereits vorhandenen Funktionen realisiert werden. Die Verwendung der physikalisch nicht-klonbaren Funktion als Ableitungsvorschrift hat den Vorteil, dass die Bindung an den Nutzer mit relativ geringem Aufwand direkt als Digitalschaltung, also in Hardware, realisiert werden kann.
  • In einer vorteilhaften Ausführungsform umfasst ein Eingabeparameter, der bei Verwendung der physikalisch nicht-klonbaren Funktion als Ableitungsvorschrift verwendet wird, eine Zufallskomponente, die aus der echten Zufallsbitfolge bestimmt wird und eine vorbestimmte Komponente, in die der Ableitungsparameter mit der Information über den Nutzer der Zufallsbitfolge, eingeht. Dies ermöglicht die Bindung von echten Zufallsbitfolgen an einen Nutzer mit lediglich geringer Modifikation der bekannten Ableitungsvorschrift.
  • In einer vorteilhaften Ausführungsform ist die Information über den Nutzer eine Kennung einer physikalischen Komponente des Nutzers. Dies können z.B. eine MAC-Adresse und/oder eine Seriennummer und/oder eine Prozessorkennung und/oder eine Rechenkernkennung sein. Diese Kennungen sind fest mit einer physikalischen Komponente verbunden und identifizieren einen Nutzer somit eindeutig. Beim Austausch einer solchen physikalischen Komponente wird dabei auch die Kennung des Nutzers geändert. Diese Änderung der physikalischen Komponente kann somit festgestellt und eine unzulässig eingebrachte Komponente identifiziert werden.
  • In einer vorteilhaften Ausführungsform ist die Information eine Kenngröße einer mit einem Nutzer verbundenen Netzwerkverbindung. Dies kann eine lokale, Nutzer-seitige IP-Adresse oder auch die IP-Adresse des Verbindungspartners des Nutzers sein. Ebenso ist als Kennung ein symbolischer Name des Verbindungspartners Zielrechners verwendbar. Dies ist insbesondere für Anwendungen vorteilhaft, die über unterschiedliche IP-Verbindungen mit unterschiedlichen Kommunikationspartnern verbunden sind.
  • Eine weitere Ausführungsform ist es, wenn die Information über einen Nutzer eine Kenngröße einer Anwendung, beispielsweise eine Anwendungsidentität und/oder ein Anwendungsname und/oder eine Prozesskennung und/oder eine Kennung einer virtuellen Maschine ist. Diese Ausführungsform ist besonders vorteilhaft, wenn mehrere Anwendungen auf einer gleichen Hardware, zum Beispiel auf einem gleichen Prozessor oder einer Prozessorkarte, ausführt werden.
  • In einer Ausführungsform ist die Information über den Nutzer eine beliebige, zufällige Zeichenkette, die beim Eintreten eines oder mehrerer vorbestimmter Ereignisse neu erzeugt wird. Ein solches vorbestimmtes Ereignis ist ein Systemstart und/oder ein Hinzufügen und/oder Ändern eines Nutzers und/oder ein Hinzufügen und/oder Ändern einer virtuellen Einheit. Durch die Änderung des entsprechenden Ableitungsparameters durch die sich ändernde Information über den Nutzer wird es zusätzlich erschwert, die gebundene Zufallsbitfolge auf eine vorher von der gleichen Anwendung verwendeten Zufallsbitfolge zurückzuschließen und erhöht somit die Sicherheit beziehungsweise Zufälligkeit der Zufallsbitfolge.
  • In einer vorteilhaften Ausführungsform wird die echte Zufallsbitfolge erst kryptographisch bearbeitet und danach eine Bindung der kryptographisch bearbeiteten Zufallsbitfolge an den Nutzer durch die Ableitungsfunktion eingerichtet wird oder aber eine echte Zufallsbitfolge wird erst durch die Ableitungsfunktion an einen Nutzer gebunden und danach wird diese an den Nutzer gebundene Zufallsbitfolge kryptographisch bearbeitet.
  • Dies ermöglicht eine sichere Nutzung von echten Zufallsbitfolgen bzw. einer physikalischen Entropie zur Erzeugung von Pseudo-Zufallszahlen beziehungsweise kryptographisch sicheren Zufallsbitfolgen. Die Länge an echten Zufallsbitfolgen, die beispielsweise durch eine physikalische Quelle erzeugt werden, ist begrenzt und im Allgemeinen nicht "ideal", das heißt es muss eine Nachbearbeitung erfolgen. Durch eine Nutzerspezifische Nachbearbeitung von Zufallsbitfolgen beziehungsweise Roh-Entropiedaten wird eine bessere Separierung von Zufallsbitfolgen zwischen unterschiedlichen Nutzern, wie beispielsweise Applikationen, Prozessen oder virtuellen Einheiten, erreicht. Die Nutzer-spezifische Nachbearbeitung kann sowohl vor als auch nach einer kryptographischen Bearbeitung der echten Zufallsbitfolgen durchgeführt werden. Dies erlaubt eine Optimierung der Reihenfolge bei der Implementierung der Funktionen beispielsweise durch eine integrierte Schaltung auf einem Mikroprozessor.
  • In einer vorteilhaften Ausführungsform authentisiert sich der Nutzer gegenüber einer Vorrichtung, die echte Zufallsbitfolgen für den Nutzer bereitstellt. Für die Erzeugung von abgeleiteten Zufallsbitfolgen kann dann als Ableitungsparameter ein Parameter der Authentisierung, zum Beispiel eine Kennung des Nutzers oder ein Sitzungsschlüssel, verwendet werden. Dies schützt die Verbindung zwischen dem Nutzer vor Manipulation durch einen Dritten. Beispielsweise wird dadurch das Einspielen von falschen Nutzerinformationen oder ein unerlaubter Austausch von Komponenten des Nutzers erschwert oder unmöglich gemacht.
  • Die erfindungsgemäße Vorrichtung zur Bereitstellung von Zufallsbitfolgen für mehrere Nutzer umfasst eine Quelle eingerichtet zur Bereitstellung echter Zufallsbitfolgen, eine Bindungseinheit, die eingerichtet ist, um eine von der Quelle bereitgestellte echte Zufallsbitfolge durch eine Ableitungsvorschrift, die mindestens einen Ableitungsparameter umfasst, zu verarbeiten. Dabei wird eine Bindung der echten Zufallsbitfolge an einen Nutzer eingerichtet, indem mindestens ein Ableitungsparameter eine Information über den Nutzer der Zufallsbitfolge enthält.
  • Diese Vorrichtung ermöglichst das Bereitstellen von Zufallszahlen, die an einen bestimmten Verwendungszweck gebunden sind und bei der ein Nutzer einer Zufallsbitfolge keinen Rückschluss auf die Generierung der Zufallsbitfolge und damit auf Zufallsbitfolgen, die anderen Nutzern zur Verfügung gestellt werden, ziehen kann.
  • In einer Ausführungsform der erfindungsgemäßen Vorrichtung umfasst diese eine Kryptoeinheit, wobei die echte Zufallsbitfolge erst in der Kryptoeinheit kryptographisch bearbeitet wird und danach die Bindungseinheit die Bindung der kryptographisch bearbeiteten Zufallsbitfolge durch die Ableitungsfunktion an einen Nutzer einrichtet. Alternativ ist es möglich, die echte Zufallsbitfolge erst an die Bindungseinheit weiterzugeben und durch die Ableitungsfunktion an einen Nutzer zu binden und danach erst in der Kryptoeinheit die an den Nutzer gebundene echte Zufallsbitfolge kryptographisch zu bearbeiten.
  • Die Kryptoeinheit ermöglicht es, echte Zufallsbitfolgen, die beispielsweise durch physikalische zufällige Ereignisse erzeugt werden und die im Allgemeinen nicht ideal sind, durch eine Nachbearbeitung zu verbessern. Eine solche verbesserte Zufallsbitfolge wird dann durch die Bindungseinheit an einen Nutzer gebunden und macht damit eine Separierung von Zufallsbitfolgen zwischen unterschiedlichen Nutzern oder Applikationen möglich. Wird eine echte Zufallsbitfolge zuerst durch die Bindungseinheit an einen Nutzer gebunden, so wird dadurch der Startwert der Kryptoeinheit, auch Seed-Wert genannt, verbessert und bereits auf den Nutzer geprägt. Von diesem Seed-Wert ausgehend wird durch die Kryptoeinheit eine weitere Verbesserung, insbesondere für kryptographische Anwendungen der Zufallsbitfolge erreicht.
  • Ein weiterer Aspekt der vorliegenden Erfindung ist ein Computerprogramm mit Programmbefehlen, die zur Durchführung des beschriebenen Verfahrens geeignet sind.
  • Einen zusätzlichen Aspekt der vorliegenden Erfindung stellt ein nicht vergänglicher Datenträger dar, der das vorgenannte Computerprogramm speichert und in einer Rechnereinheit oder in einem Steuerungsgerät zum Auslesen des Computerprogramms und zur Ausführung der Programmbefehle eingeführt wird.
  • Ausführungsformen des erfindungsgemäßen Verfahrens beziehungsweise die erfindungsgemäße Vorrichtung sind in den Zeichnungen beispielhaft dargestellt und werden anhand der nachfolgenden Beschreibung näher erläutert. Es zeigen:
  • 1 eine erste erfindungsgemäße Ausführungsform einer Vorrichtung zur Bereitstellung von Zufallsbitfolgen in Blockdarstellung;
  • 2 eine zweite Ausführungsform der erfindungsgemäßen Vorrichtung in Blockdarstellung;
  • 3 eine erste Ausführungsform des erfindungsgemäßen Verfahrens mit einer Schlüsselableitungsfunktion als Ableitungsvorschrift in schematischer Darstellung;
  • 4 eine zweite Ausführungsform des erfindungsgemäßen Verfahrens mit einer physikalisch nicht-klonbaren Funktion als Ableitungsvorschrift in schematischer Darstellung;
  • 5 ein drittes Ausführungsbeispiel des erfindungsgemäßen Verfahrens mit von einem Nutzer selbst bereitgestellter Nutzerinformation in schematischer Darstellung;
  • 6 ein viertes Ausführungsbeispiel des erfindungsgemäßen Verfahrens, bei dem die Nutzerinformation von einer zentralen Einheit bereitgestellt wird, in schematischer Darstellung und
  • 7 ein fünftes Ausführungsbeispiel des erfindungsgemäßen Verfahrens, bei dem Nutzer in einer virtualisierten Rechnereinheit eingerichtet sind.
  • Einander entsprechende Teile sind in allen Figuren mit den gleichen Bezugszeichen versehen.
  • 1 zeigt eine Vorrichtung 1 zur Bereitstellung von nutzerspezifischen Zufallsbitfolgen, die echte Zufallsbitfolgen für mehrere Nutzer bereitstellt. Die Vorrichtung 1 umfasst eine Quelle 2 für echte Zufallsbitfolgen 5, beispielsweise eine Quelle für physikalische Zufallsereignisse. In einer Rechnereinheit sind eine Mehrzahl von Nutzern für Zufallsbitfolgen vorhanden, die beispielsweise zur Authentisierung des Nutzers jeweils Zufallsbitfolgen zur Generierung eines Schlüssels oder einer Nonce benötigen.
  • Um eine echte Zufallsbitfolge 5 an einen bestimmten Nutzer, das heißt einen bestimmten Verwendungszweck oder eine Anwendung zu binden, wird die echte Zufallsbitfolge 5 von der Quelle 2 an eine Bindungseinheit 3 weitergegeben. Die Bindungseinheit 3 ist derart eingerichtet, dass eine von der Quelle 2 bereitgestellte Zufallsbitfolge 5 durch eine Ableitungsvorschrift, die mindestens einen Ableitungsparameter umfasst, verarbeitet wird. Dabei wird in mindestens einen Ableitungsparameter der Ableitungsvorschrift eine Information 4 über den Nutzer der Zufallsbitfolge eingebracht. Die Bindungseinheit 3 erzeugt daraus eine an den Nutzer gebundene Zufallsbitfolge 7.
  • Da eine echte, beispielsweise physikalische, Zufälligkeit begrenzt und im Allgemeinen nicht ideal ist, kann zusätzlich eine kryptographisch basierte Nachbearbeitung der echten Zufallsbitfolge 5 in beispielsweise einer Kryptoeinheit 6 erfolgen. Die Kryptoeinheit 6 kann wie in 1 dargestellt eine echte Zufallsbitfolge 5 als Eingangsparameter erhalten und eine kryptographisch nachbearbeitete Zufallsbitfolge 8 an die Bindungseinheit 3 weitergeben. Diese wiederum erzeugt unter Berücksichtigung der nutzerspezifischen Information 4 eine kryptographisch bearbeitete, nutzerspezifische echte Zufallsbitfolge 7´´.
  • Alternativ ist es wie in 2 dargestellt, möglich, dass die echte Zufallsbitfolge 5 von der Quelle 2 direkt an eine Bindungseinheit 3 weitergegeben wird, in der nutzerspezifische Informationen 4 in einen Ableitungsparameter der Ableitungsfunktion eingehen. Die resultierende nutzerspezifische Zufallsbitfolge 7 wird anschließend an die Kryptoeinheit 6 zur kryptographischen Bearbeitung weitergegeben. Die Kryptoeinheit 6 liefert entsprechend eine nutzerspezifische kryptographisch nachbearbeitete Zufallsbitfolge 7'.
  • Die Quelle 2 für Zufallsbitfolgen, beispielsweise ein physikalischer Zufallsbitfolgengenerator, ermittelt einen Schätzwert für die vorhandene Entropie, d. h. die Anzahl tatsächlich zufälliger Bits, der Quelle 2. Nach einer Nachbearbeitung ist diese Information im Allgemeinen den abgeleiteten Zufallsbitfolgen 7, , 7´´ nicht mehr anzusehen. Die Information zur zugrundeliegenden physikalischen Entropie der echten Zufallsbitfolge 5 kann aber bei abgeleiteten Zufallsbitfolgen als Meta-Information bereitgestellt werden. Durch die Vorrichtung 1 mit einer nutzerspezifischen Nachbearbeitung von Zufallszahlen bzw. von Roh-Entropie-Daten wird eine bessere Separierung von Zufallszahlen zwischen unterschiedlichen Nutzern, beispielsweise Anwendungen oder Prozesse oder virtuellen Einheiten, erreicht.
  • In 3 und 4 werden unterschiedliche Ableitungsvorschriften 13 für die Bindung der echten Zufallsbitfolge 5 an einen Nutzer dargestellt.
  • In 3 werden eine echte Zufallsbitfolge 5 sowie mindestens ein Ableitungsparameter 12 in eine Ableitungsvorschrift 13 eingegeben, die daraus eine nutzerspezifische Zufallsbitfolge 16 erzeugt. In einen Ableitungsparameter 12 geht eine Information 4 über den Nutzer der echten Zufallsbitfolge 5 ein. Als Ableitungsvorschrift 13 wird hierbei eine Schlüsselableitungsfunktion 14 verwendet, die aus dem Ableitungsparameter 12 und der echten Zufallsbitfolge 5 einen Schlüssel 15 und eine nutzerspezifische Zufallsbitfolge 16 erzeugt.
  • Die Ableitungsvorschrift 13 kann eine Hash-Funktion wie zum Beispiel SHA1, SHA256 oder eine geschlüsselte Hash-Funktion, zum Beispiel HMAC-SHA1, HMAC-SHA256, oder auch ein symmetrischer Krypto-Algorithmus, zum Beispiel AES, sein, der sowohl die echte Zufallsbitfolge 5 als auch einen Parameter 12 mit nutzerspezifischen Informationen 4 nutzt.
  • 4 zeigt eine Variante, in der als Ableitungsvorschrift 13 eine physikalisch nicht-klonbare Funktion 20 verwendet wird. Dabei geht die echte Zufallsbitfolge 5 in eine Zufallskomponente 18 eines Eingabeparameters 17 ein. Ein Ableitungsparameter 12´ mit nutzerspezifischer Information 4 geht in eine deterministischen Komponente 19 des Eingabeparameters 17 ein. Es ist auch möglich, mehrere nutzerspezifischen Informationen in den Eingabeparameter 17 einzubringen. Der Eingabeparameter 17, der hier als Ableitungsparameter 12 dient, wird durch die physikalisch nicht-klonbare Funktion 20 in Form eines Antwortwerts 21 und einer nutzerspezifischen Zufallsbitfolge 22 ausgegeben.
  • Optional wird die echte Zufallsbitfolge 5 erst durch eine Nachbearbeitungseinheit 23 nachbearbeitet und geht dann in die Zufallskomponente 18 des Eingangsparameters 17 ein.
  • Bei einer kryptographisch basierten Nachbearbeitung wird Roh-Entropie-Daten, also die echten Zufallsbitfolgen 5 in nichtdeterministische Zufallsbitfolgen umgewandelt.
  • 5 zeigt einen schematischen Ablauf der Bereitstellung von nutzerspezifischen Zufallsbitfolgen für einen ersten Nutzer 30 beziehungsweise einen zweiten Nutzer 31.
  • Dabei wird zur Bereitstellung einer echten Zufallsbitfolge 36 für den ersten Nutzer 30 eine nutzerspezifische Information 34 vom ersten Nutzer 30 an die Vorrichtung 1, übergeben. Der erste Nutzer 30 verwendet als nutzerspezifische Information 34 beispielsweise eine Kennungen einer nur von dem ersten Nutzer 30 verwendeten physikalischen Komponente 32, beispielsweise eine MAC-Adresse einer Netzwerkkarte, die zum Beispiel mit einer Ethernet-Schnittstelle verbunden ist. Die Vorrichtung 1, erzeugt daraus eine an den ersten Nutzer 30 gebundene echte Zufallsbitfolge 36 und übergibt diese dem ersten Nutzer 30.
  • Für den zweiten Nutzer 31 wird in gleicher Weise eine ausschließlich vom zweiten Nutzer 31 verwendete Kennung als nutzerspezifische Information 35 verwendet. Dazu übermittelt der zweiten Nutzer 31 die nutzerspezifische Information 35 an die Vorrichtung 1, . Die Vorrichtung 1, 1' erzeugt daraus eine nutzerspezifische Zufallsbitfolge 37 und gibt diese an den zweiten Nutzer 31 weiter.
  • Als nutzerspezifische Information kann ebenso beispielsweise eine Seriennummer, eine Prozessorkennung, eine Rechnerkernkennung, eine IP-Adresse einer Kommunikationsverbindung des Nutzers 30, 31 oder eine IP-Adresse eines Kommunikationspartners des Nutzers 30, 31 oder ein symbolischer Name eines Kommunikationspartners des Nutzers 30, 31 oder ein Nutzername, eine Nutzerkennung oder eine Kennung einer virtuellen Einheit, auf der der Nutzer 30, 31 implementiert ist verwendet werden. Es können auch mehrere Informationen eines Nutzers 30, 31 in einen oder mehrere Ableitungsparameter eingehen. Ebenso können für verschiedene Nutzer 30, 31 unterschiedliche nutzerspezifische Informationen verwendet werden.
  • 6 zeigt eine alternative Ausführungsform zur Bereitstellung von nutzerspezifischen Zufallsbitfolgen. Im Unterschied zur Ausführungsform in 5 wird die nutzerspezifische Informationen 34´, 35´ für einen Nutzer 30, 31 von der Vorrichtung 1, bei einer zentralen Einheit 38, beispielsweise einem Betriebssystem abgefragt. Dies hat den Vorteil, dass eine nutzerspezifische Kennung 34´, 35´ lediglich einmal vom Nutzer 30, 31 an die zentrale Einheit 38 übermittelt werden muss. Ein wiederholtes Übermitteln und insbesondere ein Übermitteln einer manipulierten nutzerspezifischen Information 34´, 35´ durch den „falschen“ Nutzer 30, 31 wird somit verhindert. Die nutzerspezifische echte Zufallsbitfolge 39, 40 wird von der Vorrichtung 1, an die Nutzer 30, 31 übergeben.
  • Die nutzerspezifische Information 34´, 35´ kann dabei beispielsweise eine IP-Adresse der mit dem jeweiligen Nutzer 30, 31 kommunizierenden Kommunikationspartners, ein symbolischer Name des Kommunikationspartners oder aber auch eine Kennung des Nutzers 30, 31, hier beispielsweise eine Applikation, oder der Applikationsname oder auch eine Prozesskennung, aber auch eine Seriennummer oder eine Rechnerkernkennung des Nutzers 30, 31 sein. Diese nutzerspezifische Kennung 34´, 35´ kann aber auch eine beliebige zufällige Zeichenkette sein, die entweder einmal einem Nutzer 30, 31 fest zugewiesen wird oder beim Eintreten eines oder mehrerer vorbestimmter Ereignisse jeweils neu erzeugt wird. Solche vorbestimmten Ereignisse sind beispielsweise ein Systemstart und/oder ein Hinzufügen und/oder Ändern eines Nutzers und/oder ein Hinzufügen und/oder Ändern einer virtuellen Einheit.
  • 7 zeigt eine Ausführungsform der Vorrichtung zur Bereitstellung von Zufallsbitfolgen für mehrere Nutzer 47, 48, wobei die Nutzer 47, 48 in virtuellen Einheiten 45, 46 in einer Rechnereinheit 41 implementiert sind. Die Vorrichtung 1, zur Bereitstellung von nutzerspezifischen Zufallsbitfolgen ist dabei in eine Überwachungseinheit 44, beispielsweise einen Hypervisor, der virtuellen Einheiten 45, 46 eingerichtet. Die virtuellen Einheiten 45, 46 greifen dabei auf verschiedene Kommunikationsschnittstellen 32, 33 zu und werden gemeinsam von einer Prozessoreinheit 42 sowie einer Speichereinheit 43, die jeweils aus mehreren Untereinheiten bestehen können, durchgeführt.
  • Durch die Integration der Vorrichtung 1, 1' in die Überwachungseinheit 44 kann eine Bindung an den jeweiligen Nutzer 47, 48 durch die Überwachungseinheit 44 selbst erfolgen. Eine weitere Bindung an einen bestimmten Nutzer in einer virtuellen Einheit 44, 45 ist zusätzlich möglich.
  • Ein Nutzer 47, 48 meldet nutzerspezifische Informationen 49, 50 an die Überwachungseinheit 44, die diese an die Vorrichtung 1, 1', die als eine Funktion in der Überwachungseinheit 44 implementiert sein kann, weitergibt. Die in der Vorrichtung 1, 1' erzeugten nutzerspezifischen Zufallsbitfolgen 51, 52 werden von der Überwachungseinheit 44 an die Nutzer 47, 48 weitergegeben.
  • In einer Variante der beschriebenen Ausführungsformen erfolgt eine Authentisierung des Nutzers 30, 31 gegenüber der Vorrichtung 1, 1. Für die Erzeugung von nutzerspezifischen Zufallsbitfolgen kann dann als Ableitungsparameter ein Parameter der Authentisierung genutzt werden.
  • Alle beschriebenen und/oder gezeichneten Merkmale können im Rahmen der Erfindung vorteilhaft miteinander kombiniert werden. Beispielsweise können mehr als ein Ableitungsparameter mit nutzerspezifischen Informationen versehen werden. Des Weiteren können unterschiedliche nutzerspezifische Informationen dafür verwendet werden. Die Erfindung ist nicht auf die beschriebenen Ausführungsformen beschränkt.

Claims (18)

  1. Verfahren zur Bereitstellung von Zufallsbitfolgen (7, 16, 22) für mehrere Nutzer (30, 31), wobei eine echte Zufallsbitfolge (5) durch eine Ableitungsvorschrift (13), die mindestens einen Ableitungsparameter (12, 12´) umfasst, nachverarbeitet wird und eine Bindung der echten Zufallsbitfolge (5) an einen Nutzer (30, 31) eingerichtet wird, indem mindestens ein Ableitungsparameter (12, 12´) eine Information (4) über den Nutzer (30, 31) der echten Zufallsbitfolge (7, 16, 22) enthält.
  2. Verfahren nach Anspruch 1, wobei eine Schlüsselableitungsfunktion (14) als Ableitungsvorschrift (13) verwendet wird.
  3. Verfahren nach Anspruch 1, wobei eine physikalisch nicht-klonbare Funktion (20) als Ableitungsvorschrift (13) verwendet wird.
  4. Verfahren nach Anspruch 3, wobei ein Eingabeparameter (17) für die physikalisch nicht-klonbare Funktion (20) eine Zufallskomponente (18) umfasst, die aus der echten Zufallsbitfolge (5) bestimmt wird, und eine vorbestimmte Komponente (19) umfasst, die basierend auf dem mindestens einen Ableitungsparameter (12´), der eine Information (4) über den Nutzer (30, 31) der echten Zufallsbitfolge (5) enthält, bestimmt wird.
  5. Verfahren nach einem der Ansprüche 1 bis 4, wobei die Information (4) über den Nutzer (30, 31) eine Kennung einer physikalischen Komponente des Nutzers (30, 31) ist.
  6. Verfahren nach einem der Ansprüche 1 bis 5, wobei die Kennung einer physikalischen Komponente des Nutzers (30, 31) eine MAC-Adresse und/oder eine Seriennummer und/oder eine Prozessorkennung und/oder eine Rechenkernkennung ist.
  7. Verfahren nach einem der Ansprüche 1 bis 6, wobei die Information (4) eine Kenngröße einer mit dem Nutzer (30, 31) verbundenen Netzwerkverbindung ist.
  8. Verfahren nach Anspruch 7, wobei als Kenngröße der Netzwerkverbindung eine lokale, Nutzer-seitige IP-Adresse und/oder auch eine IP-Adresse eines Verbindungspartners des Nutzers (30, 31) und/oder ein symbolischer Name eines Verbindungspartners verwendet werden.
  9. Verfahren nach einem der Ansprüche 1 bis 8, wobei die Information (4) eine Kenngröße einer Anwendung ist, insbesondere eine Anwendungsidentität und/oder ein Anwendungsname und/oder eine Prozesskennung und/oder eine Kennung einer virtuellen Einheit (45, 46) ist.
  10. Verfahren nach einem der Ansprüche 1 bis 9, wobei die Information (4) über den Nutzer (30, 31) eine beliebige, zufällige Zeichenkette ist und/oder beim Eintreten eines oder mehrerer vorbestimmter Ereignisse neu erzeugt wird.
  11. Verfahren nach Anspruch 10, wobei das vorbestimmte Ereignis ein Systemstart und/oder ein Hinzufügen und/oder Ändern eines Nutzers (30, 31) und/oder ein Hinzufügen und/oder Ändern einer virtuellen Einheit ist.
  12. Verfahren nach Anspruch 1, wobei die echte Zufallsbitfolge (5) erst kryptographisch bearbeitet wird und danach eine Bindung der kryptographisch bearbeiteten Zufallsbitfolge (8) an den Nutzer (30, 31) durch die Ableitungsfunktion (13) eingerichtet wird oder eine echte Zufallsbitfolge (5) erst durch die Ableitungsfunktion (13) an einen Nutzer (30, 31) gebunden wird und danach die an den Nutzer (30, 31) gebundene Zufallsbitfolge (7) kryptographisch bearbeitet wird.
  13. Verfahren nach Anspruch 1, wobei sich der Nutzer (30, 31) gegenüber einer Vorrichtung (1, ), die echte Zufallsbitfolgen (5) für den Nutzer (30, 31) bereitstellt, authentisiert.
  14. Vorrichtung zur Bereitstellung von Zufallsbitfolgen für mehrere Nutzer (30, 31) umfassend: eine Quelle (2) eingerichtet zur Bereitstellung echter Zufallsbitfolgen (5), eine Bindungseinheit (3), die eingerichtet ist um eine von der Quelle (2) bereitgestellte echte Zufallsbitfolge (5) durch eine Ableitungsvorschrift (13), die mindestens einen Ableitungsparameter (12, 12´) umfasst, zu verarbeiten, wobei eine Bindung der echten Zufallsbitfolge (5) an einen Nutzer (30, 31) eingerichtet wird, indem mindestens ein Ableitungsparameter (12, 12´) eine Information (4) über den Nutzer (30, 31) der Zufallsbitfolge enthält.
  15. Vorrichtung nach Anspruch 14, wobei die Vorrichtung eine Kryptoeinheit (6) umfasst, wobei die echte Zufallsbitfolge (5) erst in der Kryptoeinheit (6) kryptographisch bearbeitet wird und danach die Bindungseinheit (6) die Bindung der kryptographisch bearbeiteten Zufallsbitfolge (8) durch die Ableitungsfunktion (13) an einen Nutzer (30, 31) einrichtet oder wobei die echte Zufallsbitfolge (5) erst an die Bindungseinheit (6) weitergegeben wird und durch die Ableitungsfunktion (13) an einen Nutzer (30, 31) gebunden wird und danach erst die Kryptoeinheit (6) die an den Nutzer (30, 31) gebundene echte Zufallsbitfolge (7) kryptographisch bearbeitet.
  16. Vorrichtung nach Anspruch 14 oder 15, wobei die Vorrichtung zur Ausführung des Verfahrens gemäß den Ansprüchen 1 bis 13 eingerichtet ist.
  17. Computerprogramm mit Programmbefehlen zur Durchführung des Verfahrens nach Ansprüchen 1 bis 13.
  18. Datenträger, der das Computerprogramm nach Anspruch 17 speichert.
DE201310208358 2013-05-07 2013-05-07 Verfahren und eine Vorrichtung zur Bereitstellung von echten Zufallsbitfolgen für mehrere Nutzer Withdrawn DE102013208358A1 (de)

Priority Applications (2)

Application Number Priority Date Filing Date Title
DE201310208358 DE102013208358A1 (de) 2013-05-07 2013-05-07 Verfahren und eine Vorrichtung zur Bereitstellung von echten Zufallsbitfolgen für mehrere Nutzer
PCT/EP2014/056942 WO2014180612A2 (de) 2013-05-07 2014-04-07 Verfahren und eine vorrichtung zur bereitstellung von echten zufallsbitfolgen für mehrere nutzer

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE201310208358 DE102013208358A1 (de) 2013-05-07 2013-05-07 Verfahren und eine Vorrichtung zur Bereitstellung von echten Zufallsbitfolgen für mehrere Nutzer

Publications (1)

Publication Number Publication Date
DE102013208358A1 true DE102013208358A1 (de) 2014-11-13

Family

ID=50513220

Family Applications (1)

Application Number Title Priority Date Filing Date
DE201310208358 Withdrawn DE102013208358A1 (de) 2013-05-07 2013-05-07 Verfahren und eine Vorrichtung zur Bereitstellung von echten Zufallsbitfolgen für mehrere Nutzer

Country Status (2)

Country Link
DE (1) DE102013208358A1 (de)
WO (1) WO2014180612A2 (de)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20130019105A1 (en) * 2011-07-15 2013-01-17 Muhammad Raghib Hussain Secure software and hardware association technique

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4425859B2 (ja) * 2003-07-11 2010-03-03 日本電信電話株式会社 アドレスに基づく認証システム、その装置およびプログラム
US7565702B2 (en) * 2003-11-03 2009-07-21 Microsoft Corporation Password-based key management
US9106426B2 (en) * 2008-11-26 2015-08-11 Red Hat, Inc. Username based authentication and key generation

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20130019105A1 (en) * 2011-07-15 2013-01-17 Muhammad Raghib Hussain Secure software and hardware association technique

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
Abhranil MAITI [et al]: Physical unclonable function and true random number generator: a compact and scalable implementation. GLSVLSI '09 Proceedings of the 19th ACM Great Lakes symposium on VLSI, 2009, S. 425-428. DOI: 10.1145/1531542.1531639, In: ACM. URL: http://dl.acm.org/citation.cfm?id=1531639 [abgerufen am 19.11.2013] *
Englische Wikipedia: Physical unclonable function. 6.4.2013. URL: http://en.wikipedia.org/w/index.php?title=Physical_unclonable_function&oldid=549008211 [abgerufen am 19.11.2013] *
G. Edward SUH; Srinivas DEVADAS: Physical unclonable functions for device authentication and secret key generation. DAC '07 Proceedings of the 44th annual Design Automation Conference, 2007, S. 9-14. DOI: 10.1145/1278480.1278484, In: ACM. URL: http://dl.acm.org/citation.cfm?id=1278484 [abgerufen am 19.11.2013] *
Lily Chen: NIST Special Publication 800-108 Recommendation for Key Derivation Using Pseudorandom Functions (Revised). National Institute of Standards and Technology, Computer Security Division, Information Technology Laboratory. Oktober 2009. URL: http://csrc.nist.gov/publications/nistpubs/800-108/sp800-108.pdf [abgerufen am 18.11.2013] *

Also Published As

Publication number Publication date
WO2014180612A2 (de) 2014-11-13
WO2014180612A3 (de) 2015-02-26

Similar Documents

Publication Publication Date Title
DE69334091T2 (de) Zugangskontrollen-Untersystem und Verfahren für ein verteiltes Rechensystem, das lokal gespeicherte Authentifizierungsdaten benutzt
DE102009001718B4 (de) Verfahren zur Bereitstellung von kryptografischen Schlüsselpaaren
DE102011088502B3 (de) Verfahren und Vorrichtung zur Absicherung von Blockchiffren gegen Template-Attacken
EP2899714B1 (de) Gesichertes Bereitstellen eines Schlüssels
DE112005001672B4 (de) Verfahren zum Liefern eines geheimen Direktnachweisschlüssels an Vorrichtungen unter Verwendung eines Onlinedienstes
DE102013203415B4 (de) Erstellen eines abgeleiteten Schlüssels aus einem kryptographischen Schlüssel mittels einer physikalisch nicht klonbaren Funktion
DE112005001654B4 (de) Verfahren zum Übermitteln von Direct-Proof-Privatschlüsseln an Geräte mittels einer Verteilungs-CD
EP2340502B1 (de) Datenverarbeitungssystem zur bereitstellung von berechtigungsschlüsseln
DE102018216915A1 (de) System und Verfahren für sichere Kommunikationen zwischen Steuereinrichtungen in einem Fahrzeugnetzwerk
LU93024B1 (de) Verfahren und Anordnung zum Aufbauen einer sicheren Kommunikation zwischen einer ersten Netzwerkeinrichtung (Initiator) und einer zweiten Netzwerkeinrichtung (Responder)
DE202017100417U1 (de) Sichere Verbindungen für Niedrigenergie-Geräte
EP3125492A1 (de) Verfahren und system zum erzeugen eines sicheren kommunikationskanals für endgeräte
EP3191902B1 (de) Verfahren zum zugreifen auf funktionen eines embedded-geräts
DE102010037784B4 (de) Verfahren zur Erhöhung der Sicherheit von sicherheitsrelevanten Online Diensten
DE102015208899A1 (de) Vorrichtung und Verfahren zur flexiblen Erzeugung von kryptographischen privaten Schlüsseln und Gerät mit flexibel erzeugten kryptographischen privaten Schlüsseln
WO2013007686A1 (de) Verfahren zur erstellung und überprüfung einer elektronischen pseudonymen signatur
DE102018002466A1 (de) Verfahren und Anordnung zum Herstellen einer sicheren Datenübertragungsverbindung
DE102013208358A1 (de) Verfahren und eine Vorrichtung zur Bereitstellung von echten Zufallsbitfolgen für mehrere Nutzer
DE102017202940A1 (de) Verfahren und Vorrichtung zum Erzeugen kryptografischer Schlüssel
DE102016106602A1 (de) Verfahren und Anordnung zum Aufbauen einer sicheren Kommunkation zwischen einer ersten Netzwerkeinrichtung (Initator) und einer zweiten Netzwerkeinrichtung (Responder)
DE102019216203A1 (de) Auf Blockverschlüsselung basierender Proof-of-Work
EP3742319B1 (de) Seitenkanalsichere implementierung
DE102021000645B3 (de) Verfahren zur Überprüfung von kryptografischen Geheimnissen auf Gleichheit
DE102008002588B4 (de) Verfahren zur Erzeugung eines asymmetrischen kryptografischen Schlüsselpaares und dessen Anwendung
DE102019007457A1 (de) Generierung klonresistenter Gruppen von elektronischen Einheiten

Legal Events

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