3.14 Nicht-periodische Schlüssel mittels Auto
Transcription
3.14 Nicht-periodische Schlüssel mittels Auto
3.14 Nicht-periodische Schlüssel mittels Auto-Key • komplett nicht-periodische Schlüssel lassen sich erreichen, wenn der Text in die Schlüsselerzeugung einbezogen wird • grundsätzlich problematisch: Verschleppung von Chiffrierfehlern • einfache Auto-Key-Verfahren oft leicht angreifbar • Beispiel: • VIGENÈRE-Verschlüsselung • erste d Klartextzeichen x1 . . . xd werden mit geheimem Schlüsselkeim c1 . . . cd chiffriert • danach wird i-tes Zeichen mit ci = xi−d chiffriert • es gilt jedoch yi+2d für 1 ≤ i ≤ d yi = xi + ci yi+d − yi = xi+d − ci − yi+d + yi = xi+2d + ci yi+3d − yi+2d + yi+d − yi = xi+3d − ci .. . • effektiv also lediglich Verdoppelung der Periode, mit abhängigen Schlüsseln der beiden Hälften • ähnliche Ansätze als Stromchiffren aber durchaus effektiv Monographische, polyalphabetische Substitution – Nicht-periodische Schlüssel mittels Auto-Key < 69 / 144 > 4 Polygraphische Substitution • polygraphisch: mehrere Klartextzeichen werden auf einmal verschlüsselt • Anzahl möglicher Substitutionen steigt rasant; bei Verschlüsselung von n Zeichen aus einem Alphabet der Mächtigkeit N = 26: n 1 2 (N n )! 4,03 · 1026 1,88 · 101621 3 1,19 · 1066 978 • allgemeine Substitution (keine Systematik) nur bis etwa n = 3 handhabbar (Tabelle mit 263 = 17576 Einträgen) Polygraphische Substitution < 70 / 144 > 4.1 Bigramm-Substitution • es werden Bigramme substituiert, also χ : V 2 −→ W (m) • Spezielfall Bigramm-Permutation, also χ : V 2 −→ V 2 • Angabe durch Tabelle a b . . . a CA SK . . . b FN WM . . . c BL DG . . . d OU IA . . . e IH CW . . . f OO PF . . . g IL IF . . . h BV VD . . . i BE DA . . . j ER XZ . . . ... ... ... .. . • falls nicht involutorisch: inverse Tabelle nötig • ab 1. Mai 1937 von deutscher Marine verwendet, um Enigma-Spruchschlüssel überzuchiffrieren; aber nur zehn (involutorische) Tabellen in Gebrauch, die von den Briten aufgeklärt wurden • Angriff gegen Bigramm-Substitutionen über Bigramm-Häufigkeiten, entsprechend Zeichenhäufigkeiten bei monographischen Verfahren Polygraphische Substitution – Bigramm-Substitution < 71 / 144 > • PLAYFAIR-Verfahren: Bigramm-Permutation über Alphabet mit N = 25 Zeichen (natürliches Alphabet ohne j) • wurde noch im zweiten Weltkrieg (teilweise leicht modifiziert) auf unterer Kommandoebene benutzt • basiert auf einem 5 × 5-Quadrat, beispielsweise S E D M R C T F N V H X G O W L A I P Y U B K Q Z • falls beide Bigramm-Zeichen in einer Zeile: beide auf rechten Nachbarn abbilden (mit Ringschluss); hu 7→ LS • falls beide Bigramm-Zeichen in einer Spalte: beide auf unteren Nachbarn abbilden (mit Ringschluss); qu 7→ ZB • sonst Überkreuzschritt: neuer Buchstabe in selber Zeile, aber Spalte des jeweils anderen; da 7→ IE • doppelte Buchstaben werden durch Einfügen von x aufgelöst; tasse 7→ tasxse 7→ XBHEED Polygraphische Substitution – Bigramm-Substitution < 72 / 144 > • kombinatorische Komplexität von PLAYFAIR relativ gering • nur 25! = 1,55 · 1025 mögliche 5 × 5-Quadrate • davon jeweils 25 durch zyklische Verschiebung gebildete äquivalent S C H L U W Y Z R V E T X A B H L U S C D F G I K X A B E T ⇔ M N O P Q G I K D F R V W Y Z O P Q M N • also nur 24! = 6,20 · 1023 Möglichkeiten – weniger als monographische Substitution • Angriff über Bigramm-Häufigkeiten oder wahrscheinliches Wort, zusammen mit der Einschränkung der möglichen Substitutionen ⇒ falsche Annahmen führen schnell zu Widerspruch Polygraphische Substitution – Bigramm-Substitution < 73 / 144 > 4.2 Codes • Codes besitzen einen Chiffrierschritt χ : C −→ W m , C ∈ V ∗ variabler Breite für eine Untermenge von V ∗ • C so gewählt, dass sich jeder Klartext in Elemente von C zerlegen lässt (in der Regel V ⊂ C ) • häufige Silben, Wörter Phrasen in C enthalten • Wahl möglichst langer Segmente bei der Codierung • einteilige Codes erhalten die lexikographische Ordnung, um decodierung zu ermöglichen; Beispiel (Auszug aus Signalbuch der deutschen Kaiserlichen Marine, 1914): 63940 63941 63942 63943 63944 OAT OAU OAÜ OAV OAW Ohnmacht, -ig Ohr, OhrenOkkupation, Okkupations-, -ieren Ökonomie, -isch Oktant • zweiteilige Codes enthalten für Codierung und Decodierung jeweils passend sortierte Teile Polygraphische Substitution – Codes < 74 / 144 > • Codes umfangreich und schwierig zu wechseln – es fehlt der Schlüssel • zur Geheimhaltung nur in Kombination mit Verschlüsselung zu gebrauchen • Codierung vor Verschlüsselung (überchiffrierter Code) sinnvoll, falls Code gut gewählt (und diszipliniert eingesetzt) • Zeichenhäufigkeiten werden nivelliert • wahrscheinliches Wort wird verkürzt, weniger “Angriffsfläche” • Nachricht wird verkürzt, weniger “Angriffsfläche” und geringerer Übertragungsaufwand Polygraphische Substitution – Codes < 75 / 144 > 4.3 Lineare Substitution • Buchstaben werden wieder isomorph zu Elementen aus Z26 behandelt • Chiffrierschritt als lineare Abbildung χ(x) = xT + t, x ∈ Zn26 , t ∈ Zn26 , T ∈ Zn×n 26 • falls T = I Reduktion zu VIGENÉRE mit periodischem Schlüssel, d = n • invertierbar, falls T regulär (über Z26 ) χ−1 (y ) = (y − t)T −1 = yT −1 − tT −1 • Konstruktion reguläre Matrix T als T = LDU mit L, U untere bzw. obere Dreiecksmatrix mit Einsen in der Diagonale und D Diagonalmatrix mit invertierbaren Elementen • involutorisch, falls (xT + t)T + t = xT 2 + tT + t = x, also T 2 = I und tT = −t Polygraphische Substitution – Lineare Substitution < 76 / 144 > Beispiel: 1 T = 22 12 t= 8 0 1 9 0 0 3 0 0 1 0 12 24 15 3 10 17 24 14 10 3 15 19 14 14 10 krypto ≡ 10 17 0 19 0 0 1 0 0 17 0 3 1 0 7 3 15 ' 14 1 10 9 9 19 21 19 0 14 9 21 9 19 + 8 0 12 ' 22 23 25 ≡ WXZ 19 0 9 21 9 19 + 8 0 12 ' 17 0 12 ≡ RAM 19 0 19 also Verschlüsselung zu WXZRAM Polygraphische Substitution – Lineare Substitution 1 22 T = 12 T −1 22 17 1 = 0 0 1 ' 0 0 23 0 0 1 9 < 77 / 144 > 0 3 0 0 1 0 0 1 0 0 17 0 0 19 0 −1 −1 7 3 0 0 1 15 0 19 0 22 1 0 0 17 12 23 12 9 0 0 1 0 1 11 0 11 0 4 1 0 1 0 0 23 4 17 3 1 0 25 − 8 12 − 8 3 1 0 7 15 1 −1 0 0 1 0 9 1 0 19 0 ' 16 1 14 5 22 1 16 19 23 0 12 19 16 14 5 22 1 16 19 ' 10 23 17 24 ≡ kry 0 19 12 16 14 5 22 1 16 19 ' 15 23 19 14 ≡ pto Polygraphische Substitution – Lineare Substitution < 78 / 144 > Angriff über wahrscheinliches Wort der Länge k · n: • bei richtiger Lage x und y bekannt in y = xT + t für k verschiedene x und y • zusammenfassen der Gleichungungen y1 x1 1 x1 y2 x2 1 x2 . = . T + . t = . . . . . . . .. yk xk 1 1 1 T .. t . 1 xk • nach T , t auflösbar, falls k ≥ n + 1, also Mindestlänge des wahrscheinlichen Wortes = (n + 1) · n = n2 + n • falls wahrscheinliches Wort länger als nötig: Gleichungssystem überbestimmt; Ausschluss falscher Lage falls keine Lösung Polygraphische Substitution – Lineare Substitution < 79 / 144 > 5 Transposition • die Zeichen des Klartextes werden beibehalten, aber in der Reihenfolge geändert • einfachste Verfahren schreiben Nachricht z.B. waagerecht in Zeilen vorgegebener Länge lesen Senkrecht heraus m n t a g r e ⇒ MNTAG REATD UOANN EECNU a n k o e t e s t a d e s s e u c h d i o n a l h a u s l e n KSSHA SOTSD LLEAE n t n a e s IHENT NAES • letzte Zeile wird häufig mit Blendern aufgefüllt – unnötig, da Empfänger Länge der Nachricht kennt Transposition < 80 / 144 >