[JoGu]

Kryptologie

Die Enigma - mathematisch betrachtet

a7Hzq .#5r<
kÜ\as TâÆK$
ûj(Ö2 ñw%h:
Úk{4R f~`z8
¤˜Æ+Ô „&¢Dø

Beschrieben wird hier die Enigma I (»Wehrmachts-Enigma«).

Der Schlüsselraum

Es gibt

Der gesamte Schlüsselraum K (Primär- und Sekundärschlüssel) hat also die Größe
#K = 60 ⋅ 17576 ⋅ 150 738 274 937 250 ⋅ 17576 = 2 793 925 870 508 516 103 360 000 ≈ 2.8 × 1024 ≈ 1.16 × 281.
Da aber überhaupt nicht klar ist, ob alle Schlüssel verschiedene Substitutionen definieren, kann man daraus nur schließen, dass die effektive Schlüssellänge höchstens ungefähr 81 ist (in Bit ausgedrückt, was damals noch nicht üblich war). Davon gehen alleine 50 Bit auf das Konto des Steckerbretts.


Die Steuerlogik

Üblicherweise wird der schnelle Rotor mit 1, der mittlere mit 2 und der langsame mit 3 bezeichnet. Nach der obigen Beschreibung ist die Zustandsänderungsfunktion also

g(z1, z2, z3) = (z1+1, z2+λ(z1)+λ(z1)λ(z2), z3+λ(z1)λ(z2))

mit λ(x) = δx,m (Kronecker-Symbol),
wobei m die Position des »Mitnehmers« (der Kerbe) ist. Die Periode ist also 26⋅25⋅26 = 16900.


Die Enigma-Gleichung

Die drei beweglichen Rotoren, die zunächst von rechts nach links durchquert werden, werden in dieser Reihenfolge nummeriert. Ihr Zustand wird dann durch einen Vektor

z = (z3, z2, z1)
beschrieben. Die zugehörige Rotorsubstitution werde mit
σz = ρ3(z3) ° ρ2(z2) ° ρ1(z1)
bezeichnet. Die Umkehrwalze bewirkt eine Permutation π, die eine echte Involution ist, d. h., kein Element wird auf sich selbst abgebildet. Das Steckerbrett bewirkt ebenfalls eine Involution η.

Die Enigma-Substitution, die Gesamtsubstitution im Zustand z, ist also

ρz = η-1 ° σz-1 ° π ° σz ° η
oder, ausführlich geschrieben, als Enigma-Gleichung:
ci = ρz(ai) = η-1 τz1 ρ1-1 τz2-z1 ρ2-1 τz3-z2 ρ3-1 τ-z3 π τz3 ρ3 τz2-z3 ρ2 τz1-z2 ρ1 τ-z1 η (ai).

Satz. Die Enigma-Substitution ρz im Zustand z ist eine echte Involution.

Beweis. Involution:

ρz-1 = η-1 ° σz-1 ° π-1 ° σz ° η = ρz ,
da π-1 = π.

Echte Involution: Wäre ρz(s) = s für einen Buchstaben s ∈ Σ, so wäre

σz η(s) = σz η ρz(s) = π σz η(s),
also π(t) = t für t = σzη(s) ∈ Σ, im Widerspruch dazu, dass π eine echte Involution ist.♦

Bemerkung. Dass η Involution ist, wurde dabei nicht benötigt. Es wurde wegen der geringen Fehleranfälligkeit bei der Bedienung so eingerichtet. Kryptographisch flexibler wären variable Verbindungsstecker zwischen dem Eingangsrotor und Tastatur/Lampenfeld; aber davon bräuchte man auf jeden Fall 26.


Autor: Klaus Pommerening, 14. Dezember 1999; letzte Änderung: 13. Januar 2008.