STROM-Verschlüsselung

4.1. STROM-Verschlüsselung#

Wir führen zunächst eine sehr einfache Stromchiffre ein, die auf der modularen Arithmetik basiert und einen gegebenen Schlüsseltext zeichenweise mit dem Klartext verrechnet.

Algorithmus 4.1 (STROM-Chiffrierung)

  1. Wir wählen als zu Grunde liegendes Alphabet \(\Sigma\) die lateinischen Großbuchstaben (ohne deutsche Umlaute) A,…,Z und nutzen als Klartext- und Chiffretextraum \(\mathcal{P} = \mathcal{C} = \Sigma^*\), d.h. die Menge aller Wörter über dem Alphabet \(\Sigma\).

  2. Schlüsselraum: Der Schlüssel \(k \in \mathcal{K} = \Sigma^*\) besteht aus einer Folge von Großbuchstaben \(k = k_1 k_2 k_3 \dots\), die mindestens so lang sein muss wie der zu verschlüsselnde Klartext.

  3. Es werden zwei zueinander inverse Funktionen \(f,g:\{\text{A},\dots,\text{Z}\}\times \{\text{A},\dots,\text{Z}\}\to \{\text{A},\dots,\text{Z}\}\) vereinbart, d.h. es gilt \(g(f(x,y),y)=x\) für alle Buchstaben \(x,y \in \Sigma\). Identifiziert man die Großbuchstaben A,B,…,Z mit den natürlichen Zahlen 0,1,…,25 über die kanonische Bijektion, so kann man beispielsweise folgende Abbildungen basierend auf der modularen Arithmetik wählen:

    \[f(x,y)=x+y\bmod 26,\quad g(x,y)=x-y\bmod 26.\]

    Dies führt zu folgenden Substitutionen:

    \(f(x,y)\)

    A

    B

    C

    D

    E

    F

    G

    H

    I

    J

    K

    L

    M

    N

    O

    P

    Q

    R

    S

    T

    U

    V

    W

    X

    Y

    Z

    A

    A

    B

    C

    D

    E

    F

    G

    H

    I

    J

    K

    L

    M

    N

    O

    P

    Q

    R

    S

    T

    U

    V

    W

    X

    Y

    Z

    B

    B

    C

    D

    E

    F

    G

    H

    I

    J

    K

    L

    M

    N

    O

    P

    Q

    R

    S

    T

    U

    V

    W

    X

    Y

    Z

    A

    C

    C

    D

    E

    F

    G

    H

    I

    J

    K

    L

    M

    N

    O

    P

    Q

    R

    S

    T

    U

    V

    W

    X

    Y

    Z

    A

    B

    D

    D

    E

    F

    G

    H

    I

    J

    K

    L

    M

    N

    O

    P

    Q

    R

    S

    T

    U

    V

    W

    X

    Y

    Z

    A

    B

    C

    E

    E

    F

    G

    H

    I

    J

    K

    L

    M

    N

    O

    P

    Q

    R

    S

    T

    U

    V

    W

    X

    Y

    Z

    A

    B

    C

    D

    F

    F

    G

    H

    I

    J

    K

    L

    M

    N

    O

    P

    Q

    R

    S

    T

    U

    V

    W

    X

    Y

    Z

    A

    B

    C

    D

    E

    G

    G

    H

    I

    J

    K

    L

    M

    N

    O

    P

    Q

    R

    S

    T

    U

    V

    W

    X

    Y

    Z

    A

    B

    C

    D

    E

    F

    H

    H

    I

    J

    K

    L

    M

    N

    O

    P

    Q

    R

    S

    T

    U

    V

    W

    X

    Y

    Z

    A

    B

    C

    D

    E

    F

    G

    I

    I

    J

    K

    L

    M

    N

    O

    P

    Q

    R

    S

    T

    U

    V

    W

    X

    Y

    Z

    A

    B

    C

    D

    E

    F

    G

    H

    J

    J

    K

    L

    M

    N

    O

    P

    Q

    R

    S

    T

    U

    V

    W

    X

    Y

    Z

    A

    B

    C

    D

    E

    F

    G

    H

    I

    K

    K

    L

    M

    N

    O

    P

    Q

    R

    S

    T

    U

    V

    W

    X

    Y

    Z

    A

    B

    C

    D

    E

    F

    G

    H

    I

    J

    L

    L

    M

    N

    O

    P

    Q

    R

    S

    T

    U

    V

    W

    X

    Y

    Z

    A

    B

    C

    D

    E

    F

    G

    H

    I

    J

    K

    M

    M

    N

    O

    P

    Q

    R

    S

    T

    U

    V

    W

    X

    Y

    Z

    A

    B

    C

    D

    E

    F

    G

    H

    I

    J

    K

    L

    N

    N

    O

    P

    Q

    R

    S

    T

    U

    V

    W

    X

    Y

    Z

    A

    B

    C

    D

    E

    F

    G

    H

    I

    J

    K

    L

    M

    O

    O

    P

    Q

    R

    S

    T

    U

    V

    W

    X

    Y

    Z

    A

    B

    C

    D

    E

    F

    G

    H

    I

    J

    K

    L

    M

    N

    P

    P

    Q

    R

    S

    T

    U

    V

    W

    X

    Y

    Z

    A

    B

    C

    D

    E

    F

    G

    H

    I

    J

    K

    L

    M

    N

    O

    Q

    Q

    R

    S

    T

    U

    V

    W

    X

    Y

    Z

    A

    B

    C

    D

    E

    F

    G

    H

    I

    J

    K

    L

    M

    N

    O

    P

    R

    R

    S

    T

    U

    V

    W

    X

    Y

    Z

    A

    B

    C

    D

    E

    F

    G

    H

    I

    J

    K

    L

    M

    N

    O

    P

    Q

    S

    S

    T

    U

    V

    W

    X

    Y

    Z

    A

    B

    C

    D

    E

    F

    G

    H

    I

    J

    K

    L

    M

    N

    O

    P

    Q

    R

    T

    T

    U

    V

    W

    X

    Y

    Z

    A

    B

    C

    D

    E

    F

    G

    H

    I

    J

    K

    L

    M

    N

    O

    P

    Q

    R

    S

    U

    U

    V

    W

    X

    Y

    Z

    A

    B

    C

    D

    E

    F

    G

    H

    I

    J

    K

    L

    M

    N

    O

    P

    Q

    R

    S

    T

    V

    V

    W

    X

    Y

    Z

    A

    B

    C

    D

    E

    F

    G

    H

    I

    J

    K

    L

    M

    N

    O

    P

    Q

    R

    S

    T

    U

    W

    W

    X

    Y

    Z

    A

    B

    C

    D

    E

    F

    G

    H

    I

    J

    K

    L

    M

    N

    O

    P

    Q

    R

    S

    T

    U

    V

    X

    X

    Y

    Z

    A

    B

    C

    D

    E

    F

    G

    H

    I

    J

    K

    L

    M

    N

    O

    P

    Q

    R

    S

    T

    U

    V

    W

    Y

    Y

    Z

    A

    B

    C

    D

    E

    F

    G

    H

    I

    J

    K

    L

    M

    N

    O

    P

    Q

    R

    S

    T

    U

    V

    W

    X

    Z

    Z

    A

    B

    C

    D

    E

    F

    G

    H

    I

    J

    K

    L

    M

    N

    O

    P

    Q

    R

    S

    T

    U

    V

    W

    X

    Y

  4. Verschlüsselung: Der zu verschlüsselnde Klartext \(m \in \mathcal{P}\) mit \(m = a_1 a_2 a_3 \dots\) wird mit der Schlüsselfolge \(k = k_1 k_2 k_3 \dots\) zeichenweise mittels \(b_i=f(a_i,k_i)\) in den Chiffretext \(c \in \mathcal{C}\) mit \(c = b_1,b_2,b_3,\dots\) chiffriert:

    Text:

    \(a_1\)

    \(a_2\)

    \(a_3\)

    \(a_4\)

    Schlüssel:

    \(k_1\)

    \(k_2\)

    \(k_3\)

    \(k_4\)

    Chiffretext:

    \(b_1 = f(a_1,k_1)\)

    \(b_2 = f(a_2,k_2)\)

    \(b_3 = f(a_3,k_3)\)

    \(b_4 = f(a_4,k_4)\)

  5. Entschlüsselung: Aus dem Chiffretext \(c = b_1 b_2 b_3 \dots\) und dem Schlüsselstrom \(k= k_1 k_2 k_3 \dots\) erhält man den ursprünglichen Klartext \(m = a_1 a_2 a_3 \dots\) durch zeichenweise Berechnung von \(a_i=g(b_i,k_i)\):

    Chiffretext:

    \(b_1\)

    \(b_2\)

    \(b_3\)

    \(b_4\)

    Schlüssel:

    \(k_1\)

    \(k_2\)

    \(k_3\)

    \(k_4\)

    Text:

    \(a_1 = g(b_1,k_1)\)

    \(a_2 = g(b_2,k_2)\)

    \(a_3 = g(b_3,k_3)\)

    \(a_4 = g(b_4,k_4)\)

    Identifiziert man die Großbuchstaben mit den Zahlen \(0,1,\dots,25\), so ist die Entschlüsselung die Verschlüsselung des Chiffretexts mit der Schlüsselfolge \(-k_1,-k_2,-k_3,\dots\), d.h. es handelt sich um eine symmetrische Chiffrierung.

Wird ein nicht konstanter Schlüsselstrom \(k = k_1 k_2 k_3 \dots\) verwendet, so ist die Verschlüsselung kontextabhängig und es wird verhindert, dass gleiche Klartextzeichen zu gleichen Chiffretextzeichen verschlüsselt werden.

Wir wollen die Funktionsweise von Algorithmus 4.1 in einem kurzen Beispiel illustrieren.

Beispiel 4.1 (STROM-Verschlüsselung)

Wir wollen im Folgenden den Klartext HEUTE IST EIN SCHOENER TAG verschlüsseln. Als Schlüsselstrom \(k = k_1 k_2 k_3 k_4 \dots\) wählen wir das hinreichend lange Gedicht *Die Bürgschaft * von Friedrich Schiller:

Text

H

E

U

T

E

I

S

T

E

I

N

S

C

H

O

E

N

E

R

T

A

G

Schlüssel

Z

U

D

I

O

N

Y

S

D

E

M

T

Y

R

A

N

N

E

N

S

C

H

Chiffretext

G

Y

X

B

S

V

Q

L

H

M

Z

L

A

Y

O

R

A

I

E

L

C

N

Die folgende Bemerkung beschreibt eine interessante Variante der Verschlüsselungsfunktion für die STROM-Chiffrierung.

Bemerkung 4.1 (Selbst-inverse STROM-Chiffrierung)

Wählt man statt \(b_i=a_i+k_i\bmod N\) wie in Algorithmus 4.1 beschrieben zum Verschlüsseln die Vorschrift

\[b_i = -a_i-k_i\bmod N,\]

so funktioniert wegen \(a_i=-b_i-k_i\bmod N\) das Entschlüsseln wie das Verschlüsseln, d.h., die zu Grunde liegende Verschlüsselungsfunktion ist selbst-invers. Verwendet man Großbuchstaben, so sieht die zugehörige Verschlüsselungstabelle in diesem Fall wie folgt aus:

\(f(k,c)\)

A

B

C

D

E

F

G

H

I

J

K

L

M

N

O

P

Q

R

S

T

U

V

W

X

Y

Z

A

A

Z

Y

X

W

V

U

T

S

R

Q

P

O

N

M

L

K

J

I

H

G

F

E

D

C

B

B

Z

Y

X

W

V

U

T

S

R

Q

P

O

N

M

L

K

J

I

H

G

F

E

D

C

B

A

C

Y

X

W

V

U

T

S

R

Q

P

O

N

M

L

K

J

I

H

G

F

E

D

C

B

A

Z

D

X

W

V

U

T

S

R

Q

P

O

N

M

L

K

J

I

H

G

F

E

D

C

B

A

Z

Y

E

W

V

U

T

S

R

Q

P

O

N

M

L

K

J

I

H

G

F

E

D

C

B

A

Z

Y

X

F

V

U

T

S

R

Q

P

O

N

M

L

K

J

I

H

G

F

E

D

C

B

A

Z

Y

X

W

G

U

T

S

R

Q

P

O

N

M

L

K

J

I

H

G

F

E

D

C

B

A

Z

Y

X

W

V

H

T

S

R

Q

P

O

N

M

L

K

J

I

H

G

F

E

D

C

B

A

Z

Y

X

W

V

U

I

S

R

Q

P

O

N

M

L

K

J

I

H

G

F

E

D

C

B

A

Z

Y

X

W

V

U

T

J

R

Q

P

O

N

M

L

K

J

I

H

G

F

E

D

C

B

A

Z

Y

X

W

V

U

T

S

K

Q

P

O

N

M

L

K

J

I

H

G

F

E

D

C

B

A

Z

Y

X

W

V

U

T

S

R

L

P

O

N

M

L

K

J

I

H

G

F

E

D

C

B

A

Z

Y

X

W

V

U

T

S

R

Q

M

O

N

M

L

K

J

I

H

G

F

E

D

C

B

A

Z

Y

X

W

V

U

T

S

R

Q

P

N

N

M

L

K

J

I

H

G

F

E

D

C

B

A

Z

Y

X

W

V

U

T

S

R

Q

P

O

O

M

L

K

J

I

H

G

F

E

D

C

B

A

Z

Y

X

W

V

U

T

S

R

Q

P

O

N

P

L

K

J

I

H

G

F

E

D

C

B

A

Z

Y

X

W

V

U

T

S

R

Q

P

O

N

M

Q

K

J

I

H

G

F

E

D

C

B

A

Z

Y

X

W

V

U

T

S

R

Q

P

O

N

M

L

R

J

I

H

G

F

E

D

C

B

A

Z

Y

X

W

V

U

T

S

R

Q

P

O

N

M

L

K

S

I

H

G

F

E

D

C

B

A

Z

Y

X

W

V

U

T

S

R

Q

P

O

N

M

L

K

J

T

H

G

F

E

D

C

B

A

Z

Y

X

W

V

U

T

S

R

Q

P

O

N

M

L

K

J

I

U

G

F

E

D

C

B

A

Z

Y

X

W

V

U

T

S

R

Q

P

O

N

M

L

K

J

I

H

V

F

E

D

C

B

A

Z

Y

X

W

V

U

T

S

R

Q

P

O

N

M

L

K

J

I

H

G

W

E

D

C

B

A

Z

Y

X

W

V

U

T

S

R

Q

P

O

N

M

L

K

J

I

H

G

F

X

D

C

B

A

Z

Y

X

W

V

U

T

S

R

Q

P

O

N

M

L

K

J

I

H

G

F

E

Y

C

B

A

Z

Y

X

W

V

U

T

S

R

Q

P

O

N

M

L

K

J

I

H

G

F

E

D

Z

B

A

Z

Y

X

W

V

U

T

S

R

Q

P

O

N

M

L

K

J

I

H

G

F

E

D

C

Es gibt verschiedene Varianten, aus einem Schlüsselwort eine längere Schlüsselfolge zu konstruieren. Beispielhaft werden wir die Vigenère-Chiffrierung in VIGENERE-Verschlüsselung betrachten und später die Autokey-Chiffrierung in AUTOKEY-Verschlüsselung diskutieren.