DE102008015558B4 - Auf Oszillatorrauschen basierender Zufallszahlengenerator - Google Patents

Auf Oszillatorrauschen basierender Zufallszahlengenerator Download PDF

Info

Publication number
DE102008015558B4
DE102008015558B4 DE102008015558.6A DE102008015558A DE102008015558B4 DE 102008015558 B4 DE102008015558 B4 DE 102008015558B4 DE 102008015558 A DE102008015558 A DE 102008015558A DE 102008015558 B4 DE102008015558 B4 DE 102008015558B4
Authority
DE
Germany
Prior art keywords
dsp
thermal noise
oscillator
random number
filter
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.)
Expired - Fee Related
Application number
DE102008015558.6A
Other languages
English (en)
Other versions
DE102008015558A1 (de
Inventor
Alexander Kravtsov
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.)
Intel Corp
Original Assignee
Intel Corp
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 Intel Corp filed Critical Intel Corp
Publication of DE102008015558A1 publication Critical patent/DE102008015558A1/de
Application granted granted Critical
Publication of DE102008015558B4 publication Critical patent/DE102008015558B4/de
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

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)
  • Mobile Radio Communication Systems (AREA)
  • Semiconductor Integrated Circuits (AREA)

Abstract

Integrierte Schaltung (100; 200), umfassend: einen ersten Oszillator (102; 204); einen zweiten Oszillator (104; 204), wobei die ersten und zweiten Oszillatoren in unabhängiger Hardware implementiert sind; und einen Zufallszahlengenerator (106; 210), der mit dem ersten und zweiten Oszillator gekoppelt ist, wobei der Zufallszahlengenerator (106; 210) die Differenz von thermischem Rauschen des ersten und zweiten Oszillators empfängt und eine Zufallszahl wenigstens teilweise auf der Basis einer Digitalsignalverarbeitungs(DSP)-Operation erzeugt, wobei der Zufallszahlengenerator (106; 210) ferner umfasst: einen Puffer (212) zum Speichern des gemessenen Rauschens, eine erste DSP-Operation, um das Leistungsspektrum des thermischen Rauschens zu verflachen, um ein beinahe flaches Spektrum des thermischen Rauschens im Band mit einem hohen Verhältnis von thermischer Rauschleistung zu pseudostochastischer Prozessleistung zu erhalten, und eine zweite DSP-Operation, um das Band mit einem hohen Verhältnis von thermischer Rauschleistung zu pseudostochastischer Prozessleistung unter Verwendung eines Digitalsignalverarbeitungs(DSP)-basierten Filters in N Teilbänder zu teilen.

Description

  • TECHNISCHES GEBIET
  • Ausführungsformen der Erfindung betreffen im Allgemeinen das Gebiet von integrierten Schaltungen und insbesondere Systeme, Verfahren und Vorrichtungen für einen Zufallszahlengenerator auf der Basis von Oszillatorrauschen.
  • HINTERGRUND
  • Kryptographische Techniken im Allgemeinen erfordern die Erzeugung einer Zufallszahl, um einen Geheimwert bereitzustellen, der für einen Angreifer unbekannt ist. Zum Beispiel werden Zufallszahlen verwendet, um die öffentlichen/privaten Schlüsselpaare zu erzeugen, die in solchen Algorithmen wie RSA verwendet werden. Zufallszahlen werden für eine große Vielfalt von anderen kryptographischen Zwecken verwendet, die Abfragen, Zeitstempel und dergleichen umfassen.
  • Aus der Druckschrift US 2003/0037079 A1 ist ein Zufallszahlengenerator mit einem Oszillator, der ein erstes Oszillatorsignal an einen Prozessor liefert, und einem zweite Oszillator, welcher ein Signal an einen Frequenzmultiplizierer liefert, bekannt. Der Frequenzmultiplizierer stellt dem Prozessor ein zweites Oszillatorsignal zur Verfügung. Der relative Jitter zwischen den zwei Oszillatorsignalen wird von dem Prozessor verwendet, um eine Folge von Zufallszahlen zu erzeugen.
  • Aus der US 2004/0006580 A1 ist ferner ein Verfahren zum Erzeugen von Zufallsbitströmen basierend auf thermischem Rauschen eines CMOS-Bausteins bekannt. Dabei weist ein Schaltkreis zwei Vorrichtungen zum Erzeugen thermischen Rauschens auf, deren Ausgänge an einen Differenzverstärker angeschlossen sind. Darüber hinaus ist aus der Druckschrift WO 2006/015624 A1 eine Vorrichtung zum Erzeugen einer zufälligen Binärfolge bekannt. Dabei wird eine Logikschaltung verwendet, welche Eingänge und Ausgänge aufweist, wobei die Ausgänge an die Eingänge rückgekoppelt sind.
  • Die Druckschrift JP 2004280486 A offenbart ferner eine Vorrichtung zum Erzeugen einer Zufallszahlenfolge. Dabei wird eine Summe von Ausgangsgrößen einer Gruppe von Quellen, welche Rauschen erzeugen, mit der Summe einer anderen Gruppe von Quellen, die Rauschen erzeugen, verglichen. Ferner offenbart die US 2007/0011217 A1 ein Verfahren zum Erzeugen eines Zufallbits. Dabei sind ein Verstärker, ein Komparator, ein Oszillator, ein Abtaster und ein Speicherschaltkreis vorgesehen. Der Verstärker verstärkt eine Differenz zwischen Eingangssignalen, welche basierend auf thermischem Rauschen erzeugt sind. Der Komparator vergleicht eine AC-Ausgangsgröße des Verstärkers mit einem DC-Signal, welches durch ein Filtern der AC-Ausgangsgröße erhalten wird.
  • KURZER ABRISS DER ERFINDUNG
  • Es ist die Aufgabe der Erfindung, eine Erzeugung von Zufallszahlen mit verbesserter stochastischer Verteilung zu ermöglichen. Diese Aufgabe wird durch eine integrierte Schaltung nach Anspruch 1, ein Verfahren nach Anspruch 7 sowie ein System nach Anspruch 12 gelöst.
  • KURZE BESCHREIBUNG DER ZEICHNUNGEN
  • Ausführungsformen der Erfindung sind in den Figuren der beiliegenden Zeichnungen, in welchen gleiche Bezugszeichen ähnliche Elemente bezeichnen, veranschaulichend und nicht einschränkend dargestellt.
  • 1 ist ein übergeordnetes Blockdiagramm, das ausgewählte Aspekte einer integrierten Schaltung veranschaulicht, die gemäß einer Ausführungsform der Erfindung implementiert ist.
  • 2 ist ein Blockdiagramm, das ausgewählte Aspekte eines Rechensystems veranschaulicht, das gemäß einer Ausführungsform der Erfindung implementiert ist.
  • 3 ist ein Flussdiagramm, das ausgewählte Aspekte des Betriebs eines Zufallszahlengenerators veranschaulicht, der gemäß einer Ausführungsform der Erfindung implementiert ist.
  • 4A und 4B sind Blockdiagramme, die ausgewählte Aspekte von Rechensystemen veranschaulichen.
  • AUSFÜHRLICHE BESCHREIBUNG
  • Ausführungsformen der Erfindung betreffen im Allgemeinen Systeme, Verfahren und Vorrichtungen für einen Zufallszahlengenerator auf der Basis von Oszillatorrauschen. In einigen Ausführungsformen wird ein echter Zufallszahlengenerator (TRNG) ohne die Notwendigkeit einer dedizierten TRNG-Hardware bereitgestellt. Anstelle der dedizierten Hardware können Ausführungsformen bestehende Systemtaktgeber verwenden, um eine Entropiequelle bereitzustellen. Wie im Folgenden genauer beschrieben wird, setzt der TRNG in einigen Ausführungsformen eine Digitalsignalverarbeitung (DSP) ein, um zu gewährleisten, dass die Zufallsbits nur die Ausgabe der physikalischen stochastischen Natur eines Oszillators (z. B. der Systemtaktgeber) sind.
  • 1 ist ein übergeordnetes Blockdiagramm, das ausgewählte Aspekte einer integrierten Schaltung veranschaulicht, die gemäß einer Ausführungsform der Erfindung implementiert ist. Die integrierte Schaltung (IC) 100 kann zum Beispiel Teil des Chipsatzes für ein Rechensystem sein. Die IC 100 umfasst unter anderem zwei Oszillatoren (102 und 104) und einen RNG 106. In einigen Ausführungsformen kann die IC 100 mehr Elemente, weniger Elemente und/oder andere Elemente als die in 1 dargestellten umfassen.
  • In einigen Ausführungsformen sind die Oszillatoren 102 und 104 Universaloszillatoren in dem Sinne, dass sie nicht ausschließlich für den RNG 106 reserviert sind. Zum Beispiel können die Oszillatoren 102 und 104 Systemtaktgeber für verschiedene Funktionseinheiten der IC 100 (z. B. Prozessor 110) bereitstellen. Die Oszillatoren 102 und 104 müssen unabhängig voneinander sein, weshalb sie durch eine unabhängige Hardware (wie beispielsweise unabhängige Kristalle) bereitgestellt werden können.
  • In einigen Ausführungsformen stellt der RNG 106 Zufallszahlen bereit, die als eindeutige private Zufallskennungen verwendet werden können. Die eindeutigen privaten Zufallskennungen können eine Anzahl von Funktionen unterstützen, welche kryptographische Merkmale wie beispielsweise öffentliche/private Schlüsselpaare (z. B. in RSA-Algorithmen) umfassen. Wie im Folgenden unter Bezugnahme auf 2 bis 3 genauer beschrieben wird, kann der RNG 106 einen zweistufigen Algorithmus einsetzen, um die eindeutigen privaten Zufallskennungen zu erzeugen. In einigen Ausführungsformen bezieht die erste Stufe ein Trennen der Differenz zwischen dem thermischen Rauschen der Oszillatoren von anderen Charakteristiken ein. Die zweite Stufe kann ein Umwandeln des thermischen Rauschens in eine stochastische Binärfolge einbeziehen.
  • In einigen Ausführungsformen sind ausgewählte Aspekte des RNG 106 in Firmware (z. B. Firmware 112) implementiert. Die Firmware kann durch einen Prozessor ausgeführt werden, der auf der IC 100 integriert ist (z. B. Prozessor 110). In alternativen Ausführungsformen können die Firmware 112, der Prozessor 110 und/oder die Oszillatoren 102 und 104 auf zwei oder mehr getrennten integrierten Schaltungen angeordnet sein. Die Firmware 112 kann in jedem beliebigen einer großen Vielfalt von nichtflüchtigen Speichern gespeichert sein, welche zum Beispiel Flash-Speicher, löschbare programmierbare Festwertspeicher (EPROM), elektrisch löschbare programmierbare Festwertspeicher (EEPROM) und dergleichen umfassen. Der Prozessor 110 kann jeder beliebige einer großen Vielfalt von Verarbeitungselementen sein, die eine Diensteprozessor, einen Managementprozessor, einen Universalprozessor und dergleichen umfassen.
  • 2 ist ein Blockdiagramm, das ausgewählte Aspekte eines Rechensystems 200 veranschaulicht, das gemäß einer Ausführungsform der Erfindung implementiert ist. Das System 200 umfasst Oszillatoren 202 und 204 sowie einen Zufallszahlengenerator 210. In alternativen Ausführungsformen kann das System 200 mehr Elemente, weniger Elemente und/oder andere Elemente umfassen.
  • Die Differenz zwischen den Oszillatoren 202 und 204 liefert eine Entropiequelle für den Zufallszahlengenerator 210. Zum Beispiel können die Oszillatoren 202 und 204 eine Quelle thermischen Rauschens bereitstellen. In einigen Ausführungsformen dient ein Oszillator (z. B. 202) als Zeitgeber, um einen Zeitraum zu spezifizieren, während dessen die Anzahl von Schwingungen am anderen Oszillator (z. B. 204) gezählt wird. Die Oszillatoren 202 und 204 können Universaloszillatoren sein. Zum Beispiel können sie die Oszillatoren sein, die verschiedene Systemtaktgeber für verschiedene Elemente des Systems 200 bereitstellen. In einigen Ausführungsformen sind die Oszillatoren 202 und 204 unabhängig von der Hardwareebene. Die Oszillatoren 202 und 204 basieren auf unabhängigen Kristallen.
  • Der Zufallszahlengenerator 210 sammelt die Anzahlen der gezählten Schwingungen des Oszillators 204 im Puffer 212 (siehe z. B. Abschnitte 1 bis 3 des beispielhaften Codes, der im Folgenden dargestellt ist). Die Folge der zuvor erwähnten Anzahlen nennen wir gemessenes Rauschen. Das gemessene Rauschen kann eine Mischung aus einem echt stochastischen Prozess (z. B. thermisches Rauschen) und einem pseudostochastischen Prozess (z. B. „Diskretisierungsrauschen”, „Substratrauschen” usw.) umfassen. Der Zufallszahlengenerator 210 trennt das thermische Rauschen vom pseudostochastischen Prozess unter Verwendung der Digitalsignalverarbeitung (DSP). In einigen Ausführungsformen verwendet der Zufallszahlengenerator 210 ein DSP-Filter, um ein Frequenzband mit einem „hohen” Verhältnis von thermischer Rauschleistung zur Leistung des pseudostochastischen Prozesses zu erhalten (sagen wir, das Verhältnis = 100 ist hoch). Nennen wir dieses Frequenzband „thermisches Rauschband”. In der veranschaulichten Ausführungsform wird ein IIR-Filter 214 (Filter mit unendlicher Impulsantwort) verwendet, um das Leistungsspektrum des thermischen Rauschens zu verflachen und auf diese Weise seine Weiterverarbeitung zu vereinfachen. Abschnitt 4 des beispielhaften Codes, der im Folgenden dargestellt ist, stellt ein Beispiel des IIR-Filters 214 gemäß einigen Ausführungsformen bereit. In alternativen Ausführungsformen können andere Techniken verwendet werden, um das Spektrum des thermischen Rauschens zu verflachen. In einigen Ausführungsformen weist das gemessene Rausche die konstante Vorspannung auf, die von der Folge subtrahiert werden kann.
  • In einigen Ausführungsformen kann das thermische Rauschband unter Verwendung von DSP in N Teilbänder geteilt (oder getrennt) werden. Die N Teilbänder können eine geringe Überlappung aufweisen (z. B. weniger als 1% der Leistung). Demnach stellen die N Teilbänder N nichtkorrelierte komplexe gaußsche Kanäle bereit, die stochastisch unabhängig sind. In der veranschaulichten Ausführungsform teilt ein Filter mit endlicher Impulsantwort (FIR-Filter) 216 das thermische Rauschband in N (z. B. 4) Teilbänder. Obwohl 2 einen einzigen Block verwendet, um das FIR-Filter 216 zu veranschaulichen, ist zu erkennen, dass in einigen Ausführungsformen N FIR-Filter 216 vorhanden sein können. Abschnitt 5 des beispielhaften Codes, der im Folgenden dargestellt ist, stellt ein Beispiel eines FIR-Filters 216 gemäß einigen Ausführungsformen bereit. In alternativen Ausführungsformen können andere Techniken verwendet werden, um das thermische Rauschband zu teilen. In einigen Ausführungsformen werden die Elemente jedes Teilbandes in einem jeweiligen Puffer 218 gespeichert.
  • In einigen Ausführungsformen wandelt eine Vergleichslogik 220 die Teilbandelemente, die in den Puffer 218 gespeichert sind, in eine boolesche Folge um. Zum Beispiel kann die Vergleichslogik 220 die realen und imaginären Teile jedes Teilbandelements mit Null vergleichen, um die boolesche Folge zu erzeugen. In alternativen Ausführungsformen kann eine andere Operation verwendet werden, um die boolesche Folge zu erzeugen. Die Vergleichslogik 220 kann so lange laufen gelassen werden als nötig, um eine boolesche Folge von gewünschter Länge zu erzeugen, um eine eindeutige private Zufallskennung 222 zu erzeugen. Die Länge der eindeutigen privaten Zufallskennung 222 ist beliebig und kann bloß eine Funktion der Länge von Zeit sein, die die Vergleichslogik 220 laufen gelassen wird.
  • In einigen Ausführungsformen sind ausgewählte Aspekte des Zufallszahlengenerators 210 in Firmware (z. B. Firmware 112, die in 1 dargstellt ist) implementiert. In solchen Ausführungsformen können die in Firmware implementierten Merkmale durch einen Prozessor (z. B. Prozessor 110, der in 1 dargestellt ist) ausgeführt werden. Zum Beispiel können der Puffer 212, das IIR-Filter 214, das FIR-Filter 216, die Puffer 218 und/der die Vergleichslogik 220 als Firmware implementiert sein, die auf einem Prozessor ausgeführt wird. BEISPIELHAFTER CODE
    Figure DE102008015558B4_0002
    Figure DE102008015558B4_0003
  • 3 ist ein Flussdiagramm, das ausgewählte Aspekte des Betriebs eines Zufallszahlengenerators veranschaulicht, der gemäß einer Ausführungsform der Erfindung implementiert ist. Unter Bezugnahme auf Prozessblock 302 wird das gemessene Rauschen gepuffert. In einigen Ausführungsformen stellt das gemessene Rauschen eine Entropiequelle bereit. Zum Beispiel umfasst das gemessene Rauschen in einigen Ausführungsformen eine Mischung aus einem echt stochastischen Prozess (z. B. thermisches Rauschen) und einem pseudostochastischen Prozess. Die Puffer können in Firmware (z. B. Abschnitt 1 des beispielhaften Codes) implementiert sein, die sich auf einem Prozessor (z. B. Prozessor 110, der in 1 dargestellt ist) ausführen lässt.
  • Unter Bezugnahme auf Prozessblock 304 wird das thermische Rauschen unter Verwendung von DSP vom pseudostochastischen Prozess getrennt. Zum Beispiel kann ein IIR-Filter das thermische Rauschen verflachen. In einigen Ausführungsformen kann das IIR-Filter (oder eine andere geeignete DSP-Operation) in Firmware (z. B. Abschnitt 1 des beispielhaften Codes) implementiert sein, die sich auf einem Prozessor (z. B. Prozessor 110, der in 1 dargestellt ist) ausführen lässt. Das thermische Rauschband kann (wenigstens teilweise) normalisiert sein, um das Signal (wenigstens teilweise) bei Null zu zentrieren.
  • Unter Bezugnahme auf Prozessblock 306 wird das thermische Rauschband in N Teilbänder geteilt. In einigen Ausführungsformen wird eine DSP-Operation, wie beispielsweise ein FIR-Filter, verwendet, um das thermische Rauschband in N Teilbänder zu teilen. Das FIR-Filter (oder eine andere geeignete DSP-Operation) kann in Firmware (z. B. Abschnitt 1 des beispielhaften Codes) implementiert sein, die sich auf einem Prozessor (z. B. Prozessor 110, der in 1 dargestellt ist) ausführen lässt. Elemente der N Teilbänder können in N entsprechenden Puffern (z. B. Puffer 218, die in 2 dargestellt sind) gespeichert werden.
  • Unter Bezugnahme auf Prozessblock 308 wird unter Verwendung der Elemente der N Teilbänder eine boolesche Folge erzeugt. In einigen Ausführungsformen werden die Elemente der N Teilbänder mit Null verglichen, um die boolesche Folge zu erzeugen. In alternativen Ausführungsformen kann eine andere Operation verwendet werden, um die boolesche Folge zu erzeugen. Die boolesche Folge wird auf eine gewünschte Länge wachsen gelassen, um eine eindeutige private Zufallskennung zu erzeugen. Die Länge ist willkürlich und eine Funktion der Länge der Zeit, die die Vergleichsoperation läuft.
  • 4A und 4B sind Bockdiagramme, die ausgewählte Aspekte von Rechensystem 400 beziehungsweise 500 veranschaulichen. Das Rechensystem 400 umfasst einen Prozessor 410, der mit einer Zwischenverbindung 420 gekoppelt ist. In einigen Ausführungsformen können die Begriffe „Prozessor” und „zentrale Verarbeitungseinheit (CPU)” austauschbar verwendet werden. In einer Ausführungsform ist der Prozessor 410 ein Prozessor der XEON® Familie von Prozessoren, die von der Intel Corporation in Santa Clara, Kalifornien, erhältlich sind. In einer alternativen Ausführungsform können andere Prozessoren verwendet werden. In einigen Ausführungsformen kann der Prozessor 410 mehrere Prozessorkerne umfassen.
  • In einer Ausführungsform ist der Chip 430 eine Komponente eines Chipsatzes. Die Zwischenverbindung 420 kann eine Punkt-zu-Punkt-Zwischenverbindung sein, oder sie kann mit zwei oder mehr Chips (z. B. vom Chipsatz) verbunden sein. Der Chip 430 umfasst eine Speichersteuerung 440, die mit einem Hauptsystemspeicher (z. B. wie in 1 dargestellt) gekoppelt sein kann. In einer alternativen Ausführungsform kann die Speichersteuerung 440 auf demselben Chip wie der Prozessor 410 sein, wie in 4B dargestellt. Das Speichersystem 444 kann einen Hauptspeicher für das Rechensystem 400 (und das Rechensystem 500) bereitstellen. In der veranschaulichten Ausführungsform umfasst das Speichersystem 444 Speicherbauelemente 446.
  • Eine Eingabe/Ausgabe(I/O)-Steuerung 450 steuert den Fluss von Daten zwischen dem Prozessor 410 und einer oder mehr I/O-Schnittstellen (z. B. drahtgebundenen und drahtlosen Netzschnittstellen) und/oder I/O-Bauelementen. Zum Beispiel steuert die I/O-Steuerung 450 in der veranschaulichten Ausführungsform den Fluss von Daten zwischen dem Prozessor 410 und einem drahtlosen Sender und Empfänger 460. In einer alternativen Ausführungsform können die Speichersteuerung 440 und die I/O-Steuerung 450 in einer einzigen Steuerung integriert sein. In einigen Ausführungsformen umfasst die I/O-Steuerung 450 einen Zufallszahlengenerator 852. Der Zufallszahlengenerator 852 kann einen TRNG für Systeme mit zwei unabhängigen Oszillatoren bereitstellen, die zum Beispiel primäre und sekundäre Taktgeber bereitstellen.
  • Elemente von Ausführungsformen der vorliegenden Erfindung können auch als ein maschinenlesbares Medium zum Speichern der maschinell ausführbaren Anweisungen bereitgestellt werden. Das maschinenlesbare Medium kann Flash-Speicher, optische Platten, CD-ROM (Compact-Disk-Festwertspeicher), DVD-ROM (digitale vielseitige Scheibe/digitale Videoscheibe), Direktzugriffsspeicher (RAM), löschbare programmierbare Festwertspeicher (EPROM), elektrisch löschbare programmierbare Festwertspeicher (EEPROM), magnetische oder optische Karten, Ausbreitungsmedien oder eine andere Art von maschinenlesbaren Medien, die zum Speichern von elektronischen Anweisungen geeignet sind, umfassen, ohne darauf beschränkt zu sein. Zum Beispiel können Ausführungsformen der Erfindung heruntergeladen werden als ein Computerprogramm, das von einem entfernten Computer (z. B. einem Server) durch Datensignale, die in einer Trägerwelle oder einem anderen Ausbreitungsmedium eingebettet sind, über eine Verbindungsstrecke (z. B. ein Modem oder eine Netzverbindung) an einen anfordernden Computer (z. B. einem Client) übertragen werden kann.
  • Es sollte zu erkennen sein, dass während der gesamten Spezifikation die Bezugnahme auf „eine (bestimmte) Ausführungsform” oder „(irgend)eine Ausführungsform” bedeutet, dass ein bestimmtes Merkmal, eine bestimmte Struktur oder eine bestimmte Charakteristik, die in Verbindung mit der Ausführungsform beschrieben wird, in wenigstens einer Ausführungsform der vorlegenden Erfindung enthalten ist. Daher ist hervorzuheben und sollte zu erkennen sein, dass zwei oder mehr Bezugnahmen auf „(irgend)eine Ausführungsform” oder „eine (bestimmte) Ausführungsform” oder „(irgend)eine alternative Ausführungsform” in verschiedenen Teilen dieser Spezifikation sich nicht unbedingt alle auf dieselbe Ausführungsform beziehen. Außerdem können die bestimmten Merkmale, Strukturen oder Charakteristiken je nach Eignung in einer oder mehr Ausführungsformen der Erfindung kombiniert sein.
  • Ähnlich sollte zu erkennen sein, dass in der vorhergehenden Beschreibung von Ausführungsformen der Erfindung verschiedene Merkmale manchmal zusammen in einer einzigen Ausführungsform, Figur oder Beschreibung zusammengefasst wurden, um die Offenbarung zu straffen und einen oder mehr der verschiedenen erfinderischen Aspekte besser verständlich zu machen. Dieses Offenbarungsverfahren ist jedoch nicht dahingehend auszulegen, dass es die Absicht widerspiegelt, dass der beanspruchte Gegenstand mehr Merkmale als die in jedem Anspruch ausdrücklich angegebenen benötigt. Vielmehr liegen, wie die folgenden Ansprüche widerspiegeln, erfinderische Aspekte in weniger als allen Merkmalen einer einzelnen zuvor offenbarten Ausführungsform. Demnach werden die auf die ausführliche Beschreibung folgenden Ansprüche hiermit ausdrücklich in diese ausführliche Beschreibung aufgenommen.

Claims (14)

  1. Integrierte Schaltung (100; 200), umfassend: einen ersten Oszillator (102; 204); einen zweiten Oszillator (104; 204), wobei die ersten und zweiten Oszillatoren in unabhängiger Hardware implementiert sind; und einen Zufallszahlengenerator (106; 210), der mit dem ersten und zweiten Oszillator gekoppelt ist, wobei der Zufallszahlengenerator (106; 210) die Differenz von thermischem Rauschen des ersten und zweiten Oszillators empfängt und eine Zufallszahl wenigstens teilweise auf der Basis einer Digitalsignalverarbeitungs(DSP)-Operation erzeugt, wobei der Zufallszahlengenerator (106; 210) ferner umfasst: einen Puffer (212) zum Speichern des gemessenen Rauschens, eine erste DSP-Operation, um das Leistungsspektrum des thermischen Rauschens zu verflachen, um ein beinahe flaches Spektrum des thermischen Rauschens im Band mit einem hohen Verhältnis von thermischer Rauschleistung zu pseudostochastischer Prozessleistung zu erhalten, und eine zweite DSP-Operation, um das Band mit einem hohen Verhältnis von thermischer Rauschleistung zu pseudostochastischer Prozessleistung unter Verwendung eines Digitalsignalverarbeitungs(DSP)-basierten Filters in N Teilbänder zu teilen.
  2. Integrierte Schaltung nach Anspruch 1, wobei der erste Oszillator (102; 202) bestimmt, wie lang Schwingungen des zweiten Oszillators (104; 204) gezählt werden, um einen Abtastwert des gemessen Rauschens zu erzeugen.
  3. Integrierte Schaltung nach Anspruch 1, wobei der erste Oszillator (102; 202) einen ersten Systemtaktgeber bereitstellt, und der zweite Oszillator (104; 204) einen zweiten Systemtaktgeber bereitstellt.
  4. Integrierte Schaltung nach Anspruch 1, wobei die erste DSP-Operation ein Filter mit unendlicher Impulsantwort (IIR-Filter) ist.
  5. Integrierte Schaltung nach Anspruch 1, wobei die zweite DSP-Operation ein Filter mit endlicher Impulsantwort (FIR-Filter) ist.
  6. Integrierte Schaltung nach Anspruch 1, wobei die ersten und zweiten DSP-Operationen in Firmware implementiert sind.
  7. Verfahren, umfassend: Speichern einer Anzahl von Schwingungen eines ersten Oszillators (102; 202), die während serieller Intervalle auftraten, die durch einen zweiten Oszillator (104; 204) zu einer gemessenen Rauschfolge definiert werden; Filtern der gemessenen Rauschfolge mit einem Digitalsignalverarbeitungs(DSP)-basierten Filter, um ein thermisches Rauschband zu erzeugen, wobei das Filtern der gemessenen Rauschfolge ein Verflachen eines Spektrums des thermischen Rauschens in einem Frequenzband mit einem hohen Verhältnis von thermischer Rauschleistung zur Leistung von pseudostochastischen Prozessen umfasst; Teilen des thermischen Rauschbandes unter Verwendung eines Digitalsignalverarbeitungs(DSP)-basierten Filters in N Teilbänder; und Erzeugen einer Folge von Binärzeichen wenigstens teilweise auf der Basis eines Vergleichs von realen und imaginären Teilen des digitalen Signals der N Teilbänder mit Null.
  8. Verfahren nach Anspruch 7, wobei das gemessene Rauschen durch zwei unabhängige Oszillatoren (102, 104; 202, 204) bereitgestellt wird.
  9. Verfahren nach Anspruch 8, wobei jeder der beiden unabhängigen Oszillatoren (102, 104; 202, 204) ein Universaloszillator ist.
  10. Verfahren nach Anspruch 7, wobei das Filtern des gemessenen Rauschens mit dem Digitalsignalverarbeitungs(DSP)-basierten Filter umfasst: Filtern des gemessenen Oszillatorrauschens mit einem Filter mit unendlicher Impulsantwort (IRR-Filter).
  11. Verfahren nach Anspruch 7, wobei das Teilen des Bandes mit hochenergetischem thermischem Rauschen unter Verwendung des Digitalsignalverarbeitungs(DSP)-basierten Filters in N Teilbänder umfasst: Teilen des Bandes mit hochenergetischem thermischem Rauschen unter Verwendung eines Filters mit endlicher Impulsantwort (FIR-Filter) in N Teilbänder.
  12. System, umfassend: eine integrierte Schaltung (100; 200) mit einem ersten Oszillator (102; 202), einem zweiten Oszillator (104; 204), wobei die ersten und zweiten Oszillatoren in unabhängiger Hardware implementiert sind und einem Zufallszahlengenerator (106; 210), der mit dem ersten und zweiten Oszillator gekoppelt ist, wobei der Zufallszahlengenerator (106; 210) thermisches Rauschen von dem ersten und zweiten Oszillator empfangen und eine Zufallszahl wenigstens teilweise auf der Basis einer Digitalsignalverarbeitungs(DSP)-Operation erzeugen soll; und einen drahtlosen Sendeempfänger (460), der mit der integrierten Schaltung gekoppelt ist, wobei der Zufallszahlengenerator (106; 210) umfasst: eine erste DSP-Operation, um das gemessene Rauschen zu filtern, um ein thermisches Rauschband zu erzeugen, wobei das Filtern des gemessenen Rauschens ein Verflachen des Spektrums des thermischen Rauschens in einem Frequenzband mit einem hohen Verhältnis von thermischer Rauschleistung zur Leistung von pseudostochastischen Prozessen umfasst, und eine zweite DSP-Operation, um das Band mit hochenergetischem thermischem Rauschen unter Verwendung eines Digitalsignalverarbeitungs(DSP)-basierten Filters in N Teilbänder zu teilen.
  13. System nach Anspruch 12, wobei die erste DSP-Operation ein Filter mit unendlicher Impulsantwort (IIR-Filter) ist.
  14. System nach Anspruch 12, wobei die zweite DSP-Operation ein Filter mit endlicher Impulsantwort (FIR-Filter) ist.
DE102008015558.6A 2007-03-23 2008-03-25 Auf Oszillatorrauschen basierender Zufallszahlengenerator Expired - Fee Related DE102008015558B4 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US11/728,083 US7692503B2 (en) 2007-03-23 2007-03-23 Random number generator based on oscillator noise
US11/728,083 2007-03-23

Publications (2)

Publication Number Publication Date
DE102008015558A1 DE102008015558A1 (de) 2008-10-23
DE102008015558B4 true DE102008015558B4 (de) 2014-09-04

Family

ID=39386700

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102008015558.6A Expired - Fee Related DE102008015558B4 (de) 2007-03-23 2008-03-25 Auf Oszillatorrauschen basierender Zufallszahlengenerator

Country Status (4)

Country Link
US (1) US7692503B2 (de)
CN (1) CN101276267B (de)
DE (1) DE102008015558B4 (de)
GB (1) GB2448216B (de)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100281088A1 (en) * 2009-04-29 2010-11-04 Psigenics Corporation Integrated true random number generator
CN102361396B (zh) * 2011-09-02 2013-11-20 陕西源能微电子有限公司 异形伪随机序列控制抖频振荡器
WO2013173729A1 (en) * 2012-05-18 2013-11-21 Cornell University Methods and systems for providing hardware security functions using flash memories
EP3050132A4 (de) * 2013-09-27 2017-05-24 Intel Corporation Spannungsgesteuerter nano-magnetischer zufallszahlengenerator
CN104317551A (zh) * 2014-10-17 2015-01-28 北京德加才科技有限公司 一种超高安全的真随机数生成方法及真随机数生成系统
CN107317925B (zh) * 2017-06-20 2021-02-26 北京壹人壹本信息科技有限公司 移动终端
US20220311606A1 (en) * 2020-06-10 2022-09-29 Beijing Boe Technology Development Co., Ltd. Optical communication apparatus, optical communication system and method

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1164696A1 (de) * 1999-12-24 2001-12-19 Anritsu Corporation Wundergenerator, diesen enthaltender digitaler leistungsprüfer und analysator der übertragungskennlinie von phasenrauschen
US20030037079A1 (en) * 2001-08-15 2003-02-20 Wilber Scott A. True random number generator and entropy calculation device and method
US20040006580A1 (en) * 2002-05-08 2004-01-08 Miller Robert H. Random bit stream generation by amplification of thermal noise in a CMOS process
JP2004280486A (ja) * 2003-03-17 2004-10-07 Renesas Technology Corp 乱数生成装置および情報処理装置
WO2006015624A1 (en) * 2004-08-09 2006-02-16 Telecom Italia S.P.A. Random number generation based on logic circuits with feedback
US20060129848A1 (en) * 2004-04-08 2006-06-15 Texas Instruments Incorporated Methods, apparatus, and systems for securing SIM (subscriber identity module) personalization and other data on a first processor and secure communication of the SIM data to a second processor
US20070011217A1 (en) * 2005-07-06 2007-01-11 Samsung Electronics Co., Ltd. Low-power random bit generator using thermal noise and method thereof

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4694412A (en) * 1982-09-22 1987-09-15 Intel Corporation Random number generator for use in an authenticated read-only memory
JPH10209821A (ja) 1996-12-05 1998-08-07 Texas Instr Inc <Ti> ランダムノイズ発生器及び発生方法
US6628139B2 (en) 2001-08-03 2003-09-30 Micron Technology, Inc. Digital logic devices with extremely skewed trip points and reset circuitry for rapidly propagating signal edges
US6886023B2 (en) 2002-01-14 2005-04-26 Ip-First, Llc Apparatus for generating random numbers
CN1752924A (zh) 2005-08-18 2006-03-29 上海微科集成电路有限公司 基于振荡器的真随机数发生器

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1164696A1 (de) * 1999-12-24 2001-12-19 Anritsu Corporation Wundergenerator, diesen enthaltender digitaler leistungsprüfer und analysator der übertragungskennlinie von phasenrauschen
US20030037079A1 (en) * 2001-08-15 2003-02-20 Wilber Scott A. True random number generator and entropy calculation device and method
US20040006580A1 (en) * 2002-05-08 2004-01-08 Miller Robert H. Random bit stream generation by amplification of thermal noise in a CMOS process
JP2004280486A (ja) * 2003-03-17 2004-10-07 Renesas Technology Corp 乱数生成装置および情報処理装置
US20060129848A1 (en) * 2004-04-08 2006-06-15 Texas Instruments Incorporated Methods, apparatus, and systems for securing SIM (subscriber identity module) personalization and other data on a first processor and secure communication of the SIM data to a second processor
WO2006015624A1 (en) * 2004-08-09 2006-02-16 Telecom Italia S.P.A. Random number generation based on logic circuits with feedback
US20070011217A1 (en) * 2005-07-06 2007-01-11 Samsung Electronics Co., Ltd. Low-power random bit generator using thermal noise and method thereof

Also Published As

Publication number Publication date
US7692503B2 (en) 2010-04-06
GB2448216A (en) 2008-10-08
CN101276267B (zh) 2011-05-18
US20080231377A1 (en) 2008-09-25
GB0805404D0 (en) 2008-04-30
CN101276267A (zh) 2008-10-01
DE102008015558A1 (de) 2008-10-23
GB2448216B (en) 2010-09-01

Similar Documents

Publication Publication Date Title
DE102008015558B4 (de) Auf Oszillatorrauschen basierender Zufallszahlengenerator
DE102014102501A1 (de) Zufallszahlgenerator
DE102014119507B4 (de) Synchronisation eines datensignals
DE102012205315B4 (de) Schnellverriegelungs-Taktdaten-Wiederherstellung für Phasenschritte
DE112019001293B4 (de) Übermitteln von paketen in einem maschennetz
DE102016104478A1 (de) Kryptographische Verfahren, die Arbeitsnachweise in Systemen untereinander verbundener Knoten realisieren
DE102019117499A1 (de) Einrichtung zum Synchronisieren von Takten konfigurierbarer Dies integrierter Schaltungen über eine Zwischenverbindungsbrücke
DE102011055821A1 (de) Intelligentes Cache-Management-Protokoll für Fahrzeugnetzwerke
DE202017107393U1 (de) Vorhersagen eines Suchmaschinen-Einordnungssignalwerts
DE102004032363B4 (de) GPS-Empfänger und zugehöriges Signalverarbeitungsverfahren
DE102008057907B4 (de) Steuerung eines Pseudozufallszahlengenerators und einer Verbraucherschaltung, die mit demselben gekoppelt ist
DE112021001648T5 (de) Prioritätsbestimmungssystem, Prioritätsbestimmungsverfahren und Programm
DE102018130297A1 (de) Arbeitsnachweis-Konzept für ein Fahrzeug
DE102017107212A1 (de) Verfahren und Vorrichtung zum Verarbeiten von Radarsignalen
DE102008008099B4 (de) Verfahren und Vorrichtung zum Verteilen von Zufallselementen
DE102017125012A1 (de) Basisstations-Zeitversatzeinstellung
DE102019217015A1 (de) Kommunikationsvorrichtung
DE102006011699A1 (de) Systeme und Verfahren zum Erzeugen von Zufallszahlverteilungen bei Vorrichtungen, die begrenzte Verarbeitungs- und Speicherfähigkeiten aufweisen
WO2019202031A1 (de) Paket-korrelator für ein funkübertragungssystem
DE112015007097B4 (de) Übertragungssteuervorrichtung, Fahrzeug und Übertragungssteuerverfahren
DE102014200164A1 (de) Verfahren zum Erzeugen einer Ausgabe einer Zufallsquelle eines Zufallsgenerators
EP3289685B1 (de) Verfahren und vorrichtung zur erzeugung einer geräte-spezifischen kennung und geräte umfassend einen personalisierten programmierbaren schaltungsbaustein
DE102019127335A1 (de) Erzeugen von Hash-Werten
DE102013201687A1 (de) Verfahren und Vorrichtung zum Erzeugen von Zufallsbits
EP1359677A1 (de) Verfahren und Endgerät zur Erzeugung und Verarbeitung eines Navigationssignals mit konstanter Amplitude

Legal Events

Date Code Title Description
OP8 Request for examination as to paragraph 44 patent law
R016 Response to examination communication
R018 Grant decision by examination section/examining division
R020 Patent grant now final
R119 Application deemed withdrawn, or ip right lapsed, due to non-payment of renewal fee