Zufallsbits

Pseudozufallsbits mit linear rückgekoppeltem Schieberegister

Echte Zufallsbits lassen sich nur durch physikalische Prozesse (Münzwurf, radioaktiver Zerfall, thermisches Rauschen) erzeugen. Mithilfe mathe­matischer Methoden lassen sich jedoch Pseudo­zufalls­bits gewinnen, die ähnliche Eigen­schaften wie echte Zufallsbits haben.

Pseudozufallsbits

Zur Erzeugung einer pseudo­zufälligen Bitfolge eignen sich linear rück­gekoppelte Schiebe­register (Linear Feedback Shift RegisterLFSR). Das folgende Bild zeigt ein linear rück­gekoppeltes Schiebe­register mit n = 4 Stellen; diese seien mit r1, r2, r3, r4 ∈ {0, 1} vorbesetzt. Diese Werte werden mit konstanten Werten a1, a2, a3, a4 ∈ {0, 1} multi­pliziert (logisches Und) und anschließend modulo 2 addiert (logisches Exklusiv-Oder). Das Ergebnis wird im nächsten Takt an die Stelle von r1 übernommen; die vorherigen Werte werden alle um eine Stelle nach links weiter­geschoben, r4 wird ausgegeben (Bild 1).

 

Bild 1: Prinzip eines linear rückgekoppelten Schieberegisters 

Bild 1: Prinzip eines linear rückgekoppelten Schieberegisters

 

Beispiel:  Es sei n = 4 sowie a1 = 1, a2 = 0, a3 = 0, a4 = 1. Dies führt zu folgendem ver­einfachten Schaltbild (Bild 2):

 

Bild 2: Vereinfachte Schaltung 

Bild 2: Vereinfachte Schaltung

 

Wird das Schiebe­register mit r1 = 1 initialisiert, so durchläuft es nacheinander die 15 Belegungen

0001
0011
0111
1111
1110
1101
1010
0101
1011
0110
1100
1001
0010
0100
1000

Die Ausgabefolge 0 0 0 1 1 1 1 0 1 0 1 1 0 0 1 ist die gewünschte Pseudo­zufalls­folge.

Satz:  Ein linear rück­gekoppeltes Schiebe­register der Länge n kann maximal 2n-1 verschiedene Zustände annehmen.

Beweis:  Jeder Zustand des linear rück­gekoppelten Schiebe­registers entspricht einer Belegung seiner n Stellen mit Nullen und Einsen. Es gibt 2n verschiedene solche Belegungen. Ist das Schiebe­register nur mit Nullen belegt, so bleibt es stets in diesem Zustand. Enthält es mindestens eine Eins, so verbleiben maximal 2n-1 mögliche Folge­zustände.

Satz:  Die Ausgabefolge eines linear rück­gekoppelten Schiebe­registers der Länge n ist periodisch mit maximaler Periode 2n-1.

Beweis:  Der Zustands­übergangsgraph eines linear rück­gekoppelten Schiebe­registers ist ein Kreis, da jeder Zustand eindeutig vom vorherigen Zustand bestimmt wird. Das jeweilige Ausgabebit hängt nur vom Zustand des Schiebe­registers ab. Die Folge der Ausgabebits ist also bei jedem Durchlauf durch den Kreis dieselbe, d.h. sie ist periodisch. Die maximale Länge der Periode ist 2n-1, da der Kreis maximal 2n-1 Zustände enthält.

Definition:  Das charakteristische Polynom eines linear rück­gekoppelten Schiebe­registers ist definiert als

p   =   anxn ⊕ . . . ⊕ a1x ⊕ 1

Definition:  Ein Polynom vom Grad n heißt primitiv, wenn es

  1. unzerlegbar ist   und
  2. es kein Teiler von xd ⊕ 1 ist für alle d  <  2n-1

Satz:  Ein linear rück­gekoppeltes Schiebe­register der Länge n nimmt genau dann alle 2n-1 möglichen Zustände an, wenn sein charakteristisches Polynom primitiv ist.

Das charakteristische Polynom des linear rück­gekoppelten Schiebe­registers aus obigem Beispiel ist  p  =  x4x ⊕ 1; es ist primitiv, da das Schiebe­registers alle 24-1 = 15 möglichen Zustände annimmt.

Pseudozufallsbits und Kryptografie

Es liegt nahe, Pseudo­zufalls­bits anstelle echter Zufallsbits zur Ver­schlüsselung von binär codierten Nachrichten zu verwenden (One-Time-Pad). Hierbei ergibt sich der Geheimtext c = c1 ... ck als bitweise Summe modulo 2 (Exklusiv-Oder) aus dem Klartext m = m1 ... mk und der Zufallsfolge r = r1 ... rk :

ci  =  miri     für i = 1, ..., k

Besteht die Folge r aus echten Zufallsbits, so ist die Ver­schlüsselung absolut sicher. Besteht die Folge r dagegen aus Pseudo­zufalls­bits, die von einem linear rück­gekoppelten Schiebe­register der Länge n erzeugt wurden, so ist die Ver­schlüsselung absolut unsicher. Bereits die Kenntnis von 2n beliebigen aufeinander­folgenden Bits reicht aus, um die Konstanten a1, ..., an des linear rück­gekoppelten Schiebe­registers und damit die gesamte Pseudo­zufalls­folge zu bestimmen. Die 2n Pseudo­zufalls­bits lassen sich bestimmen, wenn 2n aufeinander­folgende Klartextbits zusammen mit den zugehörigen Geheimtext­bits bekannt sind (known plaintext attack) oder aufgrund eines im Klartext wahr­scheinlich vorkommenden Wortes erraten werden können.

Zur Bestimmung der Konstanten des linear rück­gekoppelten Schiebe­registers müssen lediglich n Gleichungen mit den n Unbekannten a1, ..., an aufgelöst werden.

Beispiel:  Es sei n = 4, und eine zusammen­hängende Folge r1, ..., r8 von Pseudo­zufalls­bits sei bekannt. Wenn die 4 Stellen des Schiebe­registers mit r5, ..., r8 belegt sind (von rechts nach links), dann wird r8 ausgegeben (Bild 3).

 

Bild 3: Belegung des linear rückgekoppelten Schieberegisters 

Bild 3: Belegung des linear rückgekoppelten Schieberegisters

 

Anschließend ist das Schiebe­register mit r4, ..., r7 belegt, wobei für das rechts herein­geschobene r4 gilt:

a4·r8a3·r7a2·r6a1·r5  =  r4

Aus den Belegungen des Schiebe­registers in den nächsten drei Takten ergeben sich als weitere Gleichungen:

a4·r7a3·r6a2·r5a1·r4  =  r3

a4·r6a3·r5a2·r4a1·r3  =  r2

a4·r5a3·r4a2·r3a1·r2  =  r1

Aus diesen 4 Gleichungen lassen sich die 4 Unbekannten a1, ..., a4 berechnen.

Sind die Konstanten des linear rück­gekoppelten Schiebe­registers ermittelt, lässt sich die Folge aller folgenden und, durch ent­sprechendes Zurück­rechnen, aller vorherigen Pseudo­zufalls­bits bestimmen und damit der gesamte Geheimtext ent­schlüsseln. Für krypto­grafische Anwendungen sind also durch linear rück­gekoppelte Schiebe­register erzeugte Pseudo­zufalls­bits absolut ungeeignet. In der Kryptografie werden krypto­grafisch sichere Zufallsbits benötigt, die auf andere Art und Weise erzeugt werden.

Literatur

[Wel 88]   D. Welsh: Codes and Cryptography. Oxford University Press (1988)

[PP 16]   C. Paar, J. Pelzl: Kryptografie verständlich. Springer Vieweg (2016)

[Lan 18]   H.W. Lang: Kryptografie für Dummies. Wiley (2018)

Buch

[Weitere Informationen]

 

Weiter mit:   [Blum-Micali-Zufallsbits]   oder   [up]

 


H.W. Lang   mail@hwlang.de   Impressum   Datenschutz
Created: 12.02.2001   Updated: 17.02.2023
Diese Webseiten sind während meiner Lehrtätigkeit an der Hochschule Flensburg entstanden