DE102014221827A1 - Vorrichtung und Verfahren zum Erzeugen von Zufallsbits - Google Patents

Vorrichtung und Verfahren zum Erzeugen von Zufallsbits Download PDF

Info

Publication number
DE102014221827A1
DE102014221827A1 DE102014221827.6A DE102014221827A DE102014221827A1 DE 102014221827 A1 DE102014221827 A1 DE 102014221827A1 DE 102014221827 A DE102014221827 A DE 102014221827A DE 102014221827 A1 DE102014221827 A1 DE 102014221827A1
Authority
DE
Germany
Prior art keywords
input
output
data
signal
combinatorial
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
DE102014221827.6A
Other languages
English (en)
Inventor
Markus Dichtl
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 DE102014221827.6A priority Critical patent/DE102014221827A1/de
Publication of DE102014221827A1 publication Critical patent/DE102014221827A1/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

Landscapes

  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computational Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Storage Device Security (AREA)

Abstract

Eine Vorrichtung (1) zum Erzeugen von Zufallsbits (ZB) umfasst: eine kombinatorische Einrichtung (2) zur Durchführung einer Blockverschlüsselung von Eingangsdaten (k) in Abhängigkeit von Schlüsseldaten (S), welche eingerichtet ist, verschlüsselte Ausgangsdaten (FS(k)) auszugeben; wobei die Eingangsdaten (k) und die Schlüsseldaten (S) der kombinatorischen Einrichtung (2) als logische Pegel aufweisende Eingangssignale (E, S) eingekoppelt sind, und die Ausgangsdaten (FS(k)) als logische Pegel aufweisende Ausgangssignale (A) an Ausgängen (2F) der kombinatorischen Einrichtung (2) abgreifbar sind; und mindestens einen Rückkopplungspfad (R) zum Rückkoppeln eines Ausgangssignals (Aj) als Eingangssignal (Ei) für die kombinatorische Einrichtung (2). Bei einem Verfahren zum Erzeugen von Zufallsbits (ZB) werden mit Hilfe einer entsprechenden kombinatorischen Einrichtung (2) die Schritte durchgeführt: elektrisches Rückkoppeln wenigstens eines Ausgangssignals (A) als Eingangssignal (E) der kombinatorischen Einrichtung (2), wobei die Ausgangsdaten (FS(k)) als logische Pegel von Ausgangssignalen (A) an Ausgängen der kombinatorische Einrichtung (2) abgegriffen werden.

Description

  • Die vorliegende Erfindung betrifft eine Vorrichtung und ein Verfahren zum Erzeugen eines oder mehrerer Zufallsbits. Es wird zum Beispiel eine Zufallsbitfolge erzeugt, welche als binäre Zufallszahl verwendet wird. Die vorgeschlagenen Vorrichtungen und Verfahren zum Erzeugen von Zufallsbits dienen beispielsweise der Implementierung von Zufallszahlengeneratoren.
  • In sicherheitsrelevanten Anwendungen, beispielsweise bei asymmetrischen Authentifikationsverfahren, sind Zufallsbitfolgen als binäre Zufallszahlen notwendig. Dabei ist es gewünscht, insbesondere bei mobilen Anwendungen einen möglichst geringen Hardwareaufwand zu betreiben. Bekannte Maßnahmen, um Zufallszahlen zu erzeugen, sind beispielsweise Pseudozufallszahlengeneratoren, analoge Zufallsquellen, Ringoszillatoren und deren Abwandlungen.
  • Bei Pseudozufallszahlengeneratoren werden Seeds verwendet, von denen ausgehend deterministische Pseudozufallszahlen berechnet werden. Zur Erzeugung des Seeds wird in der Regel ein physikalischer Zufallsgenerator verwendet. Als analoge Zufallsquellen werden Rauschquellen, wie z.B. das Rauschen von Zenerdioden, verstärkt und digitalisiert. Dabei ist die Verbindung von digitaler mit analoger Schaltungstechnik meist nur aufwändig zu verwirklichen.
  • Bei Ringoszillatoren, die aus einer ungeraden Anzahl von hintereinander geschalteten Invertern aufgebaut sind, ergeben sich zufällige Jitter aus schwankenden Durchlaufzeiten der Signale durch die Inverter. Diese Jitter, also eine unregelmäßige zeitliche Schwankung in Zustandsänderungen der durch die Inverter geschickten Signale, können bei mehrfachen Durchläufen durch die Ringoszillatorschaltung akkumuliert werden, so dass letztlich ein zufälliges analoges Signal entsteht. Nachteilig bei Ringoszillatoren ist häufig die notwendige lange Zeit vom Start der Schwingung bis ein brauchbar zufälliges Signal aufgrund der Jitter-Akkumulierung entsteht. Daher ergeben sich meist niedrige nicht akzeptable Datenerzeugungsraten bei Ringoszillatoren. Ferner ist möglich, dass die sich addierenden Jitter-Beiträge sich auch selbst wieder aufheben, so dass im Mittel zufällige kurze Gatterlaufzeiten durch zufällige längere Gatterlaufzeiten kompensiert werden.
  • Fibonacci- und Galois-Ringoszillatoren erzeugen schneller zufällige Signalformen als klassische Ringoszillatoren. Allerdings werden verschiedene digitale Gatter wie XOR- und NOT-Gatter eingesetzt. Dadurch können sich insbesondere bei Implementierungen auf ASICs große Geschwindigkeitsunterschiede der Gattertypen ergeben. Häufig besteht der Wunsch, mit Hilfe von FPGAs (Field Programmable Gate Arrays) Zufallsbitfolgen zu erzeugen. Allerdings können auch bei diesen Digitalbausteinen beispielsweise aufgrund von Umgebungstemperaturschwankungen periodische Schwingungen einsetzen, die nur eine geringe Entropie oder Zufälligkeit in den Signalen haben.
  • Daher besteht eine Aufgabe der vorliegenden Erfindung darin, eine verbesserte Vorrichtung und/oder ein Verfahren zum Erzeugen von Zufallsbits bereitzustellen.
  • Demgemäß wird eine Vorrichtung zum Erzeugen von Zufallsbits vorgeschlagen, welche umfasst:
    eine kombinatorische Einrichtung zur Durchführung einer Blockverschlüsselung von Eingangsdaten in Abhängigkeit von Schlüsseldaten, welche eingerichtet ist, verschlüsselte Ausgangsdaten auszugeben;
    wobei die Eingangsdaten und die Schlüsseldaten der kombinatorischen Einrichtung als logische Pegel aufweisende Eingangssignale eingekoppelt sind, die Ausgangsdaten als logische Pegel aufweisende Ausgangssignale an Ausgängen der kombinatorischen Einrichtung abgreifbar sind; und
    mindestens einen Rückkopplungspfad zum Rückkoppeln eines Ausgangssignals als Eingangssignal für die kombinatorische Einrichtung.
  • Die Vorrichtung umfasst somit eine kombinatorische Einrichtung, welche Blockchiffren bzw. Blockverschlüsselungen an Eingangsdaten durchführen kann. Bei einer Blockverschlüsselung wird ein deterministisches Verschlüsselungsverfahren eingesetzt, bei dem ein Klartext in der Art von Eingangsdaten unter Verwendung von Schlüsseldaten auf ein Chiffrat einer festen Bitlänge abgebildet wird. Beispielsweise sind die verschlüsselten Ausgangsdaten ein Chiffrat der Blockchiffre.
  • Als mögliche Blockchiffren sind beispielsweise DES, FEAL, Serpent, CAST, Camellia, RC6, IDEA, MARS, RC2, AES, Twofish, TEA, 3DES, Blowfish, Skipjack, XTEA und/oder Present bekannt. Grundsätzlich können all diese Blockchiffren verwendet werden.
  • Die kombinatorische Einrichtung liefert die verschlüsselten Ausgangsdaten vorzugsweise ausschließlich unter Verwendung logischer Funktionen die aus den Eingangsdaten, welche die Eingangsdaten als Klartext und die Schlüsseldaten verarbeiten und als Chiffrat ausgeben. Insbesondere hat die kombinatorische Einrichtung keine Zwischenspeicherelemente wie Latches oder Flip-Flops.
  • Der Rückkopplungspfad ist beispielsweise durch eine elektrische Verbindung zwischen einem Ausgangsanschluss, an dem ein Signalpegel anliegt, und einem Eingangsanschluss zum Einkoppeln eines Signalpegels implementiert. Es können auch mehrere Rückkopplungspfade vorgesehen sein. Der Eingangsanschluss, auf den ein Ausgangssignal rückgekoppelt wird, kann insbesondere für ein Bit eines Schlüsseldatums oder ein Bit eines Klartextdatums, benutzt werden.
  • Durch die Rückkopplung berechnet die kombinatorische Einrichtung unter Anwendung eines Blockchiffre-Algorithmus das Verschlüsselungsergebnis, welches die Veränderung eines oder mehrerer Signalpegel ausgangsseitig hervorruft. Die Rückkopplung dieser Signalpegel eingangsseitig führt dabei zu einem chaotischen Signalverhalten. Außerdem ergibt sich eine Beaufschlagung mit Jitter, so dass Zufallssignalformen mit hoher Entropie entstehen.
  • Da die Berechnung oder Durchführung der Blockverschlüsselung ausschließlich durch eine kombinatorische Einrichtung erfolgt, propagiert ein sich ändernder Eingangssignalpegel unter Beaufschlagung von Jittern durch die Kombinatorik. Diese Jitterbeiträge führen dazu, dass eingangsseitig vorliegende, wohl definierte Signalcharakteristika, wie eine steigende oder fallende Flanke, verwischt oder verzufälligt werden, sodass ausgangsseitig zufällige Signalformen vorliegen. Diese werden durch eine Erfassungseinrichtung zum Beispiel in einen oder mehrere Zufallsbitwerte umgewandelt.
  • Die Vorrichtung kann in Ausführungsbeispielen ferner mindestens eine Erfassungseinrichtung zum Erfassen eines Signalpegels mindestens eines der Ausgangssignale als Zufallssignal aufweisen.
  • Die Erfassungseinrichtung kann beispielsweise Signalpegel, welche nicht deterministisch zwischen logischen Pegeln schwanken, abtasten oder bestimmte Signalcharakteristika, wie steigende oder fallende Flanken erfassen und/oder zählen. Dies erfolgt während die kombinatorische Einrichtung chaotische Schwingungen aufgrund der Rückkopplung vollzieht. Das heißt, aufgrund der rückgekoppelten kombinatorischen Implementierung und der den Signalflanken aufgeprägten Jittern ergeben sich Zwischenzustände an den Ausgängen der kombinatorischen Einrichtung, welche chaotische nicht deterministische Signalformen haben.
  • In Ausführungsformen kann die Erfassungseinrichtung eine Zähleinrichtung zum Erfassen von Signalflanken, beispielsweise steigenden und/oder fallenden Signalflanken wenigstens eines der Ausgangssignale, umfassen. Eine Zähleinrichtung, wie ein Counter bzw. Zähler oder ein Zwischenspeicherelement, wie ein T-Flip-Flop sind geeignet, um derartige Signalcharakteristika zu erfassen bzw. zu zählen. Der jeweilige Zählerwert ergibt sich zufällig, da die Anzahl einer jeweiligen Signalflanken, beispielsweise steigende Signalflanken, von dem zufälligen Signalverlauf abhängt.
  • Es kann eine Starteinrichtung vorgesehen werden, welche eingerichtet ist, in Abhängigkeit von einem Startsignal, die Eingangsdaten und/oder die Schlüsseldaten zu einem vorgegebenen Startzeitpunkt derart zu ändern, dass wenigstens eines der Eingangssignale seinen Pegel ändert.
  • Zum Beispiel kann vor dem Startzeitpunkt ein erstes Bitmuster vorgegebener Länge als Schlüsseldaten vorliegen und ein zweites Bitmuster für die Eingangsdaten, welche unter Verwendung des Blockchiffrenverfahrens in die verschlüsselten Ausgangsdaten mit einem jeweiligen Ausgangsbitmuster ausgegeben werden. Eine Änderung der Bitwerte der Eingangsdaten führt zu einer oder mehreren Signalflanken der zugehörigen Signalpegel, wenn die Eingangsdaten auf ein neues Eingangsdatenbitmuster umgeschaltet werden.
  • In Ausführungsformen ist die kombinatorische Einrichtung eingerichtet, eine kryptographische Blockverschlüsselung mit einem Avalanche-Effekt durchzuführen. Ein Avalanche-Effekt, der auch als Lawinen-Effekt bezeichnet wird, ist die Eigenschaft eines kryptographischen Algorithmus, wonach eine minimale Änderung der Eingabe, also der Eingangsdaten und/oder der Schlüsseldaten, zur Änderung vieler Ausgangsdaten hinsichtlich ihrer Werte führt.
  • Noch bevorzugter führt die kombinatorische Einrichtung eine Blockverschlüsselung bzw. Blockchiffren von Eingangsdaten in Abhängigkeit von Schlüsseldaten durch, die ein strenges Lawinen-Kriterium bzw. ein „Strict Avalanche Criterium“ erfüllen. Dieses Kriterium verlangt, dass sich bei einer Änderung eines Eingabebitwertes jedes Bit der Ausgabe mit einer Wahrscheinlichkeit von 50% ändert. Beispielsweise hat die AES-Blockchiffre ein derartiges Avalanche-Verhalten.
  • Durch den Avalanche-Effekt wird der Jitterbeitrag jeweils vervielfältigt, sodass besonders stark zufällige Signalanteile entstehen, die sich aus den Jitterbeiträgen speisen.
  • Es wird ferner ein Verfahren zum Erzeugen von Zufallsbits mit Hilfe einer kombinatorischen Einrichtung, welche eine Blockverschlüsselung von Eingangsdaten in Abhängigkeit von Schlüsseldaten verschlüsselt und verschlüsselte Ausgangsdaten ausgibt, vorgeschlagen. Dabei sind die Eingangsdaten und die Schlüsseldaten der kombinatorischen Einrichtung als logische Pegel aufweisende Eingangssignale eingekoppelt, und das Verfahren weist die Schritte auf: elektrisches Rückkoppeln mindestens eines Ausgangssignals als Eingangssignal der kombinatorischen Einrichtung, wobei die Ausgangsdaten als logische Pegel von Ausgangssignalen an Ausgängen der kombinatorischen Einrichtung abgegriffen werden.
  • Das Verfahren kann als Betriebsverfahren für die vorstehend genannte Vorrichtung zum Erzeugen von Zufallsbits verstanden werden.
  • In Ausführungsformen des Verfahrens werden Signalflanken des wenigstens einen erfassten Signalpegels, welcher nicht deterministisch zwischen zwei logischen Pegeln schwankt, gezählt. In Abhängigkeit von einem jeweiligen Zählergebnis wird ein Zufallsbitwert bestimmt. Dies kann mit Hilfe eines Zählers, wie auch eines T-Flip-Flops, erzielt werden.
  • In Ausführungsformen des Verfahrens werden zu vorgegebenen Zeitpunkten alle Eingangssignale vorübergehend auf vorgegebene logische Pegel gesetzt, und die kombinatorische Einrichtung schwingt anschließend aufgrund der Rückkopplung chaotisch. Man kann auch von einem Neustart aus vorgegebenen Eingangszuständen der Verschlüsselungseinrichtung sprechen.
  • Durch das Setzen auf vorgegebene logische Pegel wird die Rückkopplung unterbrochen, und der Zufallszahlengenerator startet von einem definierten Zustand neu. Vorzugsweise sind die nach verschiedenen Neustarts gewonnenen Zufallsbits statistisch unabhängig voneinander.
  • Die Vorrichtung und das Verfahren ermöglichen insbesondere eine kryptographische Schlüsselerzeugung und Zufallsbiterzeugung.
  • Da eine kombinatorische Implementierung von Blockchiffren vorgesehen ist, können Zufallsbits mit hohen Bitraten erzeugt werden.
  • In Ausführungsbeispielen können die erzeugten Zufallsbits, beispielsweise wenn mehrere Bitpositionen der Ausgangssignale verwendet werden, algorithmischen Nachbehandlungen unterzogen werden. Häufig ist dies aufgrund der guten statistischen Qualität der erhaltenen Zufallsbits nicht notwendig.
  • In Ausführungsformen ist die Vorrichtung Teil einer FPGA-Einrichtung oder einer ASIC-Einrichtung.
  • Das Verfahren kann insbesondere über geeignete Beschreibungssprachen, beispielsweise VHDL oder Verilog, auf oder in einer FPGA- oder ASIC-Vorrichtung implementiert werden.
  • Weitere mögliche Implementierungen der Erfindung umfassen auch nicht explizit genannte Kombinationen von zuvor oder im Folgenden bezüglich der Ausführungsbeispiele beschriebenen Vorrichtungen oder Verfahrensvarianten. Dabei wird der Fachmann auch Einzelaspekte als Verbesserungen oder Ergänzungen zu der jeweiligen Grundform der Erfindung hinzufügen oder abändern.
  • Die oben beschriebenen Eigenschaften, Merkmale und Vorteile dieser Erfindung sowie die Art und Weise, wie diese erreicht werden, werden klarer und deutlicher verständlich im Zusammenhang mit der folgenden Beschreibung der Ausführungsbeispiele, die im Zusammenhang mit den Zeichnungen näher erläutert werden.
  • Dabei zeigen:
  • 1 eine schematische Darstellung eines Ausführungsbeispiels für eine Vorrichtung zum Erzeugen von Zufallsbits;
  • Die 1 zeigt eine schematische Darstellung eines Ausführungsbeispiels für eine Vorrichtung zum Erzeugen von Zufallsbits. Die Vorrichtung 1 umfasst dabei insbesondere eine kombinatorische Einrichtung 2 zur Durchführung einer Blockverschlüsselung. Eine entsprechende Blockverschlüsselung oder Blockchiffre bildet Eingangsdaten k unter Verwendung eines kryptographischen Schlüssels S auf ein Chiffrat oder Ausgangsdaten Fs(k) ab. In der 1 ist dies schematisch angedeutet. Der Blockverschlüsselungsalgorithmus oder die kryptographische Abbildung ist mit F bezeichnet.
  • In der 1 ist das n-Bit lange Eingangsdatenwort k0 ... ki ... kn-1 angedeutet. Die Schlüsseldaten S haben eine Bitlänge q und sind mit S = S0 – Sq-1 bezeichnet. Die sich ergebende Blockchiffre der Länge p ist in der 1 mit den Bitwerten F0 ... Fj ... Fp-1 angedeutet. Jedes Bit entspricht dabei einem logischen Pegel, der an elektrischen Leitungen in der Vorrichtung 1 vorliegt. Zum Einkoppeln und Auskoppeln der entsprechenden Daten in Form von logischen Pegeln sind Leitungen vorgesehen.
  • Dazu hat die kombinatorische Einrichtung, welche auch als Verschlüsselungseinrichtung 2 bezeichnet wird, Eingänge 2E für die Eingangsdaten, Eingänge 2S für die Schlüsseldaten und Ausgänge 2F für die verschlüsselten Ausgangsdaten. Die zu verschlüsselnden Eingangsdaten k liegen mit einer festen Länge n vor und werden auf das Chiffrat Fs(k) ebenfalls mit einer festen Bitlänge q abgebildet. Die genaue Transformation wird dabei durch Schlüsseldaten S festgelegt.
  • Außerdem ist in dem Beispiel der 1 ein Rückkopplungspfad R angegeben. Das heißt, ein Signalpegel Aj eines Ausgangs 2A wird als Eingangssignal Ei einem Eingang 2E zugeführt. Im Beispiel der 1 ist beispielsweise das Ausgangsbit Fj als Eingangsbit ki rückgekoppelt. In der schaltungstechnischen Implementierung wird eine elektrische Leitung von dem Ausgang, der der Bitposition Fj entspricht, an den Eingang, der der Bitposition ki entspricht, implementiert. Dadurch ergibt sich ein rückgekoppeltes, schwingungsfähiges System aufgrund der kombinatorischen Blockchiffrenabbildung F. Es können auch weitere Rückkopplungen vorgesehen sein. Jedenfalls ist es in der 1 beispielhaft, das Ausgangssignal Aj, welches einem logischen Pegel entspricht, als Eingangssignal Ei der kombinatorischen Einrichtung 2 zugeführt.
  • Die kombinatorische Verschlüsselungseinrichtung 2 wird beispielsweise von einer Steuereinrichtung 6 mithilfe von Steuersignalen CT3 angesteuert. Ein Speicher 4, der die Bitwerte des Klartextes k bzw. der zu verschlüsselnden Eingangsdaten enthält, ist über Leitungen, welche entsprechende Eingangssignale E als logische Pegel übertragen, an die Eingänge 2E gekoppelt. Während der Rückkopplung, also im chaotischen Schwingungsfall, wird der Speicher entkoppelt, sodass die Signalpegel der Eingangsdaten veränderbar sind. Ein jeweiliger Bitwert der Eingangsdaten k entspricht dabei einem logischen H- oder L- bzw. 1- oder 0-Pegel des jeweiligen Eingangssignals aus E.
  • Ähnlich ist ein weiterer Speicher 3 zum Abspeichern der Schlüsseldaten S vorgesehen, der über Leitungen an den Schlüsseleingang 2S der kombinatorischen Verschlüsselungseinrichtung 2 gekoppelt ist.
  • An den Ausgängen 2A sind nach Durchführung der Blockverschlüsselung durch die kombinatorische Einrichtung 2 logische Pegel für die jeweiligen Bits des Blockchiffrats Fs(k) abgreifbar. Die Ausgänge 2S sind über geeignete Leitungen zur Übertragung dieser Ausgangssignale A an eine Erfassungseinrichtung 5 gekoppelt.
  • Die Erfassungseinrichtung 5 umfasst in der Ausführungsform der 1 ein T-Flip-Flop 7, welches auftretende, steigende oder fallende Signalflanken, beispielsweise einer bestimmten Bitposition des Chiffrats Fs(k), erfasst bzw. zählt. Dabei werden aufgrund der Rückkopplung zufällige jitterbehaftete Zufallssignalformen ZS erfasst.
  • Die Steuereinrichtung 6 liefert Steuersignale CT1, CT2, CT3, CT4, um beispielsweise die kombinatorische Einrichtung 2 mit einem geeigneten Verschlüsselungsalgorithmus zu versehen, die Schlüsseldaten im Speicher 3 abzulegen, die Erfassungseinrichtung 5 anzusteuern und die Eingangsdaten k festzulegen oder zu verändern. Um nun mit Hilfe der kombinatorischen Verschlüsselungseinrichtung 2 Zufallsbits zu erzeugen, werden Eingangsdaten k zu einem Startzeitpunkt verändert. Das heißt, wenigstens eines der Eingangssignale vollzieht einen Pegelwechsel, nämlich wenn der Bitwert an der jeweiligen Position der Eingangsdaten verändert wird. Außerdem sind die Rückkopplungspfade implementiert, sodass ein chaotisches Signalverhalten eintritt.
  • Untersuchungen der Anmelderin haben ergeben, dass sich echte Zufallsbits mit Hilfe der vorgeschlagenen Schaltung erzeugen lassen. Die Anmelderin hat dazu ein FPGA-Chip vom Typ Spartan-3 als Einrichtung zur Verschlüsselung mit einer Blockchiffre PRESENT implementiert. Die Schlüssellänge ist dabei 80 Bits, und das Chiffrat hat 64 Output-Bits. Bei dem Experiment wurden die Schlüsseldaten zufällig, aber fest gewählt.
  • Zum Starten der Zufallsbiterzeugung und zum Einsetzen der chaotischen Signalformen wurde ein Eingangswert mit 64 Null-Bits zum Startzeitpunkt auf 64 Eins-Bits umgeschaltet. Nach etwa 100 ns wurden mit Hilfe einer Abtast- und Halteeinrichtung als Erfassungsvorrichtung 32 der 64 Output-Bits gesampelt und abgespeichert. Die 32 erhaltenen Zufallsbitwerte, die jeweiligen abgetasteten Signalpegeln entsprechen, sind nicht statistisch unabhängig voneinander. Um die Auswertung zu vereinfachen, wurden nur die 16 niederwertigen Bits der abgetasteten Chiffrat-Bits berücksichtigt, d.h. F0 – F15. Es wurden etwa 5 Mio. Abtastungen durchgeführt.
  • Die Untersuchungen der Anmelderin ergeben, dass bei den 16 Bitwerten eine Entropie von 12,8322 Bits pro 16 Bit Sample vorliegt. Die entsprechende Mi-Entropie betrug 7,4146 Bits.
  • Bei der Untersuchung wurde festgestellt, dass die Bits nicht vollständig gleich verteilt sind zwischen 0 und 1 und eine Schiefe aufweisen. Die Anmelderin hat folgende Tabelle ermittelt, worin die Wahrscheinlichkeiten angegeben sind, das die einzelnen Bits den Wert 1 anzunehmen:
    Die Wahrscheinlichkeit P lautet, P(F15) = 0,726288, für F14 0,681902, für F13 0,651021, für F12 0,663267, für F11 0,68906, für F10 0,64163, für F9 0,618273, für F8 0,797184, für F7 0,886538, für F6 0,907844, für F5 0,692619, für F4 0,832369, für F3 0,798108, für F2 0,640947, für F1 0,738466 und für F0 0,794183.
  • Da bei den erzeugten Zufallsbits möglicherweise eine Tendenz zur logischen 1 vorliegt, kann in Ausführungsformen die Vorrichtung mit einer weiteren Verarbeitungseinheit versehen sein, welche eine Schiefe ausgleicht. Insofern kann die Verarbeitungseinheit oder -einrichtung ein Verfahren zum statischen Ausgleichen und Nachbearbeiten einer Schiefe der Zufallsbits vornehmen.
  • Die Vorrichtung ist ferner implementiert, ein kryptographisches Verschlüsselungsverfahren durchzuführen.
  • Die vorgeschlagene Vorrichtung und das zugrunde liegende Verfahren eignen sich insbesondere zur Implementierung in ASICs. Die Erfindung ermöglicht also unter anderem eine schnelle Zufallsbiterzeugung bei geringem Hardwareaufwand da die Hardwareressourcen gleichzeitig zur Zufallsbiterzeugung und einer kryptographischen Verschlüsselung verwendet werden können.
  • Obwohl die Erfindung im Detail durch das bevorzugte 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. Zum Beispiel ist auch eine Rückkopplung auf Schlüsselbits denkbar.

Claims (10)

  1. Vorrichtung (1) zum Erzeugen von Zufallsbits (ZB) umfassend: eine kombinatorische Einrichtung (2) zur Durchführung einer Blockverschlüsselung von Eingangsdaten (k) in Abhängigkeit von Schlüsseldaten (S), welche eingerichtet ist, verschlüsselte Ausgangsdaten (FS(k)) auszugeben; wobei die Eingangsdaten (k) und die Schlüsseldaten (S) der kombinatorischen Einrichtung (2) als logische Pegel aufweisende Eingangssignale (E, S) eingekoppelt sind, und die Ausgangsdaten (FS(k)) als logische Pegel aufweisende Ausgangssignale (A) an Ausgängen (2F) der kombinatorischen Einrichtung (2) abgreifbar sind; und mindestens einen Rückkopplungspfad (R) zum Rückkoppeln eines Ausgangssignals (Aj) als Eingangssignal (Ei) für die kombinatorische Einrichtung (2).
  2. Vorrichtung nach Anspruch 1, ferner mit mindestens einer Erfassungseinrichtung (5) zum Erfassen eines Signalpegels wenigstens eines der Ausgangssignale (A) als Zufallssignal (ZS).
  3. Vorrichtung nach Anspruch 2, wobei die Erfassungseinrichtung (5) eine Zähleinrichtung zum Erfassen von Signalflanken wenigstens eines der Ausgangssignale (A) umfasst.
  4. Vorrichtung nach Anspruch 2 oder 3, wobei die Erfassungseinrichtung (5) ein Zwischenspeicherelement (7), insbesondere ein T-Flip-Flop, aufweist.
  5. Vorrichtung nach einem der Ansprüche 1–4, wobei der Rückkopplungspfad mit Hilfe wenigstens einer direkten elektrischen Verbindung zwischen einem Ausgang (A) und einem Eingang (E) der kombinatorischen Einrichtung (2) implementiert ist.
  6. Vorrichtung nach einem der Ansprüche 1–5, ferner mit einer Starteinrichtung, welche eingerichtet ist, in Abhängigkeit von einem Startsignal die Eingangsdaten (k) und/oder die Schlüsseldaten (S) zu einem vorgegebenen Startzeitpunkt (t0) derart zu ändern, dass wenigstens eines der Eingangssignale (E, S) seinen Pegel ändert und die kombinatorischen Einrichtung (2) aufgrund des Rückkopplungspfades (R) chaotisch schwingt.
  7. Vorrichtung nach einem der Ansprüche 1–6, wobei die kombinatorische Einrichtung (2) eingerichtet ist, eine Blockverschlüsselung mit einem Avalanche-Effekt, insbesondere mit einem strikten Avalanche-Effekt, durchzuführen.
  8. Verfahren zum Erzeugen von Zufallsbits (ZB) mit Hilfe einer kombinatorischen Einrichtung (2), welche eine Blockverschlüsselung von Eingangsdaten (k) in Abhängigkeit von Schlüsseldaten (S) durchführt und verschlüsselte Ausgangsdaten (FS(k)) ausgibt, und die Eingangsdaten (k) und die Schlüsseldaten (S) der kombinatorischen Einrichtung (2) als logische Pegel aufweisende Eingangssignale (E, S) in die kombinatorische Einrichtung (2) eingekoppelt werden, mit den Schritten: elektrisches Rückkoppeln wenigstens eines Ausgangssignals (A) als Eingangssignal (E) der kombinatorischen Einrichtung (2), wobei die Ausgangsdaten (FS(k)) als logische Pegel von Ausgangssignalen (A) an Ausgängen der kombinatorischen Einrichtung (2) abgegriffen werden.
  9. Verfahren nach Anspruch 8, bei dem Signalflanken des wenigstens einen erfassten Signalpegels, welcher nicht deterministisch zwischen zwei logischen Pegeln schwankt, gezählt werden und in Abhängigkeit von einem Zählergebnis ein Zufallsbitwert (ZB) bestimmt wird.
  10. Verfahren nach Anspruch 8 oder 9, bei dem zu vorgegebenen Zeitpunkten alle Eingangssignale (E, S) vorübergehend auf vorgegebene logische Pegel gesetzt werden, und die kombinatorische Einrichtung (2) anschließend aufgrund der Rückkopplung chaotisch schwingt.
DE102014221827.6A 2014-10-27 2014-10-27 Vorrichtung und Verfahren zum Erzeugen von Zufallsbits Withdrawn DE102014221827A1 (de)

Priority Applications (1)

Application Number Priority Date Filing Date Title
DE102014221827.6A DE102014221827A1 (de) 2014-10-27 2014-10-27 Vorrichtung und Verfahren zum Erzeugen von Zufallsbits

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE102014221827.6A DE102014221827A1 (de) 2014-10-27 2014-10-27 Vorrichtung und Verfahren zum Erzeugen von Zufallsbits

Publications (1)

Publication Number Publication Date
DE102014221827A1 true DE102014221827A1 (de) 2016-05-12

Family

ID=55802807

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102014221827.6A Withdrawn DE102014221827A1 (de) 2014-10-27 2014-10-27 Vorrichtung und Verfahren zum Erzeugen von Zufallsbits

Country Status (1)

Country Link
DE (1) DE102014221827A1 (de)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102004047425A1 (de) * 2004-09-28 2006-04-20 Micronas Gmbh Zufallszahlengenerator sowie Verfahren zur Erzeugung von Zufallszahlen
DE102013222218A1 (de) * 2013-10-31 2014-05-22 Siemens Aktiengesellschaft Konstruieren einer Schaltung geeignet zur Erzeugung von Zufallsbits und Schaltung zur Erzeugung von Zufallsbits

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102004047425A1 (de) * 2004-09-28 2006-04-20 Micronas Gmbh Zufallszahlengenerator sowie Verfahren zur Erzeugung von Zufallszahlen
DE102013222218A1 (de) * 2013-10-31 2014-05-22 Siemens Aktiengesellschaft Konstruieren einer Schaltung geeignet zur Erzeugung von Zufallsbits und Schaltung zur Erzeugung von Zufallsbits

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
BUCCI, Marco [et al.]: A high-speed oscillator-based truly random number source for cryptographic applications on a smart card IC. Computers, IEEE Transactions on, 2003, 52. Jg., Nr. 4, S. 403-409 *
Deutschsprachige Wikipedia zum Begriff S-Box. 1.11.2013. URL: http://de.wikipedia.org/wiki/S-Box [abgerufen am 9.4.2015] *

Similar Documents

Publication Publication Date Title
EP1643643B1 (de) Zufallszahlengenerator sowie Verfahren zur Erzeugung von Zufallszahlen
EP2976707B1 (de) Vorrichtung und verfahren zum erzeugen von zufallsbits
EP3028140B1 (de) Konstruieren einer schaltung geeignet zur erzeugung von zufallsbits und schaltung zur erzeugung von zufallsbits
DE112011106024B4 (de) Erzeugungsvorrichtung für vorrichtungsspezifische Informationen und Erzeugungsverfahren für vorrichtungsspezifische Informationen
DE102008048292A1 (de) Vorrichtung und Verfahren zum Erzeugen einer Zufallsbitfolge
EP1354264B1 (de) Zufallszahlengenerator und verfahren zum erzeugen einer zufallszahl
DE102009000869A1 (de) Verfahren und Vorrichtung zur manipulationssicheren Übertragung von Daten
DE102014102501A1 (de) Zufallszahlgenerator
DE102012210990A1 (de) Verfahren zum Erzeugen von Zufallszahlen
DE102014200163A1 (de) Verfahren zum Erzeugen einer Ausgabe einer Zufallsquelle eines Zufallsgenerators
DE102014221827A1 (de) Vorrichtung und Verfahren zum Erzeugen von Zufallsbits
DE102014224421A1 (de) Verfahren und Vorrichtung zum Erzeugen von Zufallsbits
DE102014219651A1 (de) Verfahren und Vorrichtung zum Erzeugen von Zufallsbits
DE102014203648A1 (de) Vorrichtung und Verfahren zum Erzeugen von Zufallsbits
DE102014221831A1 (de) Vorrichtung und Verfahren zum Erzeugen von Zufallsbits
DE102013213095A1 (de) Erzeugen von einer Anzahl von Zufallsbits
DE102015203580A1 (de) Vorrichtung und Verfahren zum Erzeugen von Zufallsbits
DE102014209689A1 (de) Vorrichtung und Verfahren zum Erzeugen von Zufallsbits
DE102014226996A1 (de) Verfahren und Vorrichtung zum Erzeugen von Zufallsbits
WO2014117983A1 (de) Verfahren und vorrichtung zum erzeugen von zufallsbits
DE102013210147A1 (de) Erzeugen von Zufallsbits
DE102014209964A1 (de) Verfahren und Vorrichtung zum Erzeugen von Zufallsbits
DE102014219693A1 (de) Verfahren und Vorrichtung zum Erzeugen von Zufallsbits
EP2799980A2 (de) Vorrichtung und Verfahren zum Erzeugen von Zufallsbits
DE102015203577A1 (de) Verfahren und Vorrichtung zum Erzeugen von Zufallsbits

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