Blum-Micali-Generator - LinkFang.de





Blum-Micali-Generator


Der Blum-Micali-Generator ist ein von Manuel Blum und Silvio Micali entwickelter kryptographisch sicherer Zufallszahlengenerator.[1]

Prinzip

Der Generator basiert auf einer generischen Konstruktion von Blum und Micali, die eine Einwegpermutation [math]f: M \to M[/math] und ein Hardcoreprädikat [math]B[/math] für [math]f[/math] benötigt. Ein Hardcoreprädikat ist eine Funktion [math]B: M \to \{0,1\}[/math] mit der Eigenschaft, dass es praktisch unmöglich ist, aus [math]f(x)[/math] das Bit [math]B(x)[/math] zu berechnen. Aus einem zufälligen Startwert [math]x_0 \in M[/math] wird zuerst durch die Vorschrift [math]x_{i+1} = f(x_i)[/math] eine Folge abgeleitet. Die Folge der zufälligen Bits ist dann die Folge [math]B(x_i)[/math].

Konstruktion

Bei der konkreten Konstruktion wird als Einwegpermutation die diskrete Exponentiation genutzt. Als Parameter wird zuerst eine Primzahl [math]p[/math] gewählt, die eine zyklische Gruppe [math]\mathbb{Z}_p^*[/math] festlegt. Aus dieser multiplikativen Gruppe wird ein zufälliges Element [math]g[/math] gewählt, das auch gleichzeitig ein Generator ist (da die Wahrscheinlichkeit, dass die 1 gewählt wird, vernachlässigbar klein ist). Die Funktion [math]f[/math] ist nun die diskrete Exponentiation [math]f(x) = g^x\ \bmod{\ p}[/math]. Sie ist eine Permutation, da sowohl [math]x[/math] als auch [math]g^x[/math] in [math]\mathbb{Z}_p^*[/math] liegen und [math]g[/math] ein Generator ist.

Ausgehend von einem zufälligen [math]x_0[/math] wird nun wie oben beschrieben mittels [math]f[/math] eine Folge [math]x_{i+1} = f(x_i) = g^{x_i}\ \bmod{\ p}[/math] definiert. Das benötigte Hardcoreprädikat für [math]f[/math] ist die Funktion [math]B(x)[/math], die 1 ausgibt, falls [math]x \lt \frac{p-1}{2}[/math], und 0 sonst. Die vom Generator erzeugte pseudozufällige Bitfolge ist also [math]B(x_i)[/math].

Sicherheit

Das Verfahren ist beweisbar sicher unter der Annahme, dass es schwierig ist, diskrete Logarithmen zu berechnen. Wenn ein Algorithmus ein Bit [math]B(x_i)[/math] dieser Folge mit Wahrscheinlichkeit besser als [math]1/2[/math] vorhersagen kann, so kann daraus ein Algorithmus konstruiert werden, der in der Gruppe [math]\mathbb{Z}_p^*[/math] in probabilistischer Polynomialzeit diskrete Logarithmen berechnen kann.

Einzelnachweise

  1. Manuel Blum and Silvio Micali: How to Generate Cryptographically Strong Sequences of Pseudorandom Bits. In: SIAM Journal on Computing. Band 13, Nr. 4, 1984, S. 850–864 (wvu.edu [PDF]).

Weblinks


Kategorien: Kryptologisches Verfahren | Pseudozufallszahlengenerator

Quelle: Wikipedia - http://de.wikipedia.org/wiki/Blum-Micali-Generator (Vollständige Liste der Autoren des Textes [Versionsgeschichte])    Lizenz: CC-by-sa-3.0

Änderungen: Alle Bilder mit den meisten Bildunterschriften wurden entfernt. Ebenso alle zu nicht-existierenden Artikeln/Kategorien gehenden internen Wikipedia-Links (Bsp. Portal-Links, Redlinks, Bearbeiten-Links). Entfernung von Navigationsframes, Geo & Normdaten, Mediadateien, gesprochene Versionen, z.T. ID&Class-Namen, Style von Div-Containern, Metadaten, Vorlagen, wie lesenwerte Artikel. Ansonsten sind keine Inhaltsänderungen vorgenommen worden. Weiterhin kann es durch die maschinelle Bearbeitung des Inhalts zu Fehlern gerade in der Darstellung kommen. Darum würden wir jeden Besucher unserer Seite darum bitten uns diese Fehler über den Support mittels einer Nachricht mit Link zu melden. Vielen Dank!

Stand der Informationen: August 201& - Wichtiger Hinweis: Da die Inhalte maschinell von Wikipedia übernommen wurden, ist eine manuelle Überprüfung nicht möglich. Somit garantiert LinkFang.de nicht die Richtigkeit und Aktualität der übernommenen Inhalte. Sollten die Informationen mittlerweile fehlerhaft sein, bitten wir Sie darum uns per Support oder E-Mail zu kontaktieren. Wir werden uns dann innerhalb von spätestens 10 Tagen um Ihr Anliegen kümmern. Auch ohne Anliegen erfolgt mindestens alle drei Monate ein Update der gesamten Inhalte.