PS Einführung Kryptographie und IT-Sicherheit Chaos-based Image Encryption D. Schwarz, S. Ebner SS 2017 1 / 25 Übersicht 1 Einleitung & Motivation 2 Erstellung einer Chaos basierten Verschlüsselung 3 Cat Map Verschlüsselung 4 Baker Map Verschlüsselung 5 Betrachtung der Sicherheit 2 / 25 Einleitung & Motivation 1 Einleitung & Motivation 2 Erstellung einer Chaos basierten Verschlüsselung 3 Cat Map Verschlüsselung 4 Baker Map Verschlüsselung 5 Betrachtung der Sicherheit 3 / 25 Einleitung & Motivation Was ist Chaos? • Dynamisches System Zustand des Systems lässt sich mittels einer Funktion beschreiben • Chaos Theorie Verhalten von dynamischen Systemen mit einer großen Sensibilität zum Ausgangszustand • Chaos System Ausgangszustand: beliebig großer Input Funktion: Permutationsfunktion 4 / 25 Einleitung & Motivation Motivation • Effiziente, direkte Verschlüsselung von Bildern • Zweifel an herkömmlichen Verschlüsselungen: Bilder zu viel Redundanz • Reiz Verschlüsselung visuell zu sehen (?) 5 / 25 Einleitung & Motivation Historisch • Mitte 1990: Anfang des ‘Hypes’ für Chaos-based Image Encryption • Inspiration: Erstmalige Anwendung einer Chaos Map auf ein Bild Erweiterung durch Diffusionsmethoden • Folge: Publikation einer Vielzahl von verschiedensten Ansätze 6 / 25 Einleitung & Motivation Kontroverse • Sicherheitskriterien: I Schlüsselraum I Schlüsselsensibilität I Plaintext-Sensibilität • Manko: Erfüllung durch schwache Verschlüsselungen möglich • Publikationskreislauf: Schwäche des Verfahrens ⇒ verbesserte Version ⇒ . . . 7 / 25 Erstellung einer Chaos basierten Verschlüsselung 1 Einleitung & Motivation 2 Erstellung einer Chaos basierten Verschlüsselung 3 Cat Map Verschlüsselung 4 Baker Map Verschlüsselung 5 Betrachtung der Sicherheit 8 / 25 Erstellung einer Chaos basierten Verschlüsselung Kernelemente 1. Designen der Basis Map Effiziente Ver-/Entschlüsselung Parametrisierung möglich 2. Generalisierung der Map Hinzufügen von Kontrolparametern 3. Diskretisierung Übertragung der Map von 1 x 1 zu N x N Diskrete Map teilt jedem Pixel bijektiv einen anderen zu 9 / 25 Erstellung einer Chaos basierten Verschlüsselung Erweiterung 4. Dreidimensionale Erweiterung Verändert Werte der Pixel 5. Diffusionsmechanismus hinzufügen Vermischung basierend auf den Pixelwerten Iteration Time Plain-Image Chaotic Map Diffusion Function Confusion-Key Diffusion-Key Cipher-Image 10 / 25 Cat Map Verschlüsselung 1 Einleitung & Motivation 2 Erstellung einer Chaos basierten Verschlüsselung 3 Cat Map Verschlüsselung 4 Baker Map Verschlüsselung 5 Betrachtung der Sicherheit 11 / 25 Cat Map Verschlüsselung Die Cat Map kann mit folgender Formel beschrieben werden: B(x, y ) = (2x + y , x + y ) mod 1 Dies ist eine bijektive Abbildung. Ein 1x1 Feld wird um 1 Feld nach oben und 2 Felder nach rechts gestreckt und dann wieder zu einem 1x1 Feld zusammengestaucht. 12 / 25 Cat Map Verschlüsselung Erweiterung für Pixel Seien nun N x N Pixel gegeben: • Man benötigt zwei ganze Zahlen p und q • 0 ≤ p, q < N Formal B(x, y ) = ((x + y ∗ p) mod N, (x ∗ q + (1 + p ∗ q)) mod N Schlüssel Die Parameter q und p stellen den Schlüssel dar Der Schlüsselraum beträgt N 2 13 / 25 Baker Map Verschlüsselung 1 Einleitung & Motivation 2 Erstellung einer Chaos basierten Verschlüsselung 3 Cat Map Verschlüsselung 4 Baker Map Verschlüsselung 5 Betrachtung der Sicherheit 14 / 25 Baker Map Verschlüsselung Die Baker Map kann mit folgender Formel beschrieben werden: B(x, y ) = (2x, y /2) für 0 ≤ x < 1/2 B(x, y ) = (2x − 1, y /2 + 1/2) für 1/2 ≤ x ≤ 1 Dies ist eine bijektive Abbildung. 1 1 0.5 A B 0 0 0.5 B A 1 1 0.5 2 0 B A 1 15 / 25 Baker Map Verschlüsselung Erweiterung für k Rechtecke • [Fi−1 , Fi ) x [0, 1), i = 1, . . . , k • Fi = p1 + · · · + pi , F0 = 0 mit p1 + · · · + pk = 1 Formal B(x, y ) = ((x − Fi )/pi , pi ∗ y + Fi ) für (x, y ) ∈ [Fi , Fi + pi ) x [0, 1) 1 1 A0 0 p1 A1 p2 A2 p3 A3 p4 A2 p3 A1 p2 A0 p1 A3 p4 1 0 1 16 / 25 Baker Map Verschlüsselung Erweiterung für Pixel Seien nun N x N Pixel gegeben: • Man benötigt k ganze Zahlen n1 , . . . , nk welche alle N teilen und es muss n1 + · · · + nk = N gelten • Ni = n1 + · · · + ni , N0 = 0, qi = N/ni Formal B(r , s) = (qi ∗ (r − Ni ) + s mod qi , (s − s mod qi )/qi + Ni ) Schlüssel Die Parameter n1 , . . . , nk stellen den Schlüssel dar Der Schlüsselraum beträgt 2N−1 17 / 25 Baker Map Verschlüsselung Da sowohl die Baker Map als auch die Cat Map sich nur auf Quadrate anwenden lässt, muss man sich für Bilder beliebiger Größe etwas einfallen lasse: • Unterteile das Bild in mehrere Quadrate: Schlecht, reduziert Schlüsselraum • Transformiere das Bild verlustfrei zu einem Quadrat: Neuep Seitenlänge: I d (N ∗ M) e I Man bekommt neue Pixel, welchen so verändert werden müssen, dass sie keine Schwachstelle liefern I Originalgröße sollte mit gegeben werden 18 / 25 Betrachtung der Sicherheit 1 Einleitung & Motivation 2 Erstellung einer Chaos basierten Verschlüsselung 3 Cat Map Verschlüsselung 4 Baker Map Verschlüsselung 5 Betrachtung der Sicherheit 19 / 25 Betrachtung der Sicherheit Vergleich von Krypto und Chaos Systemen Jedes Kryptosystem sollte folgende Eigenschaften haben: • Nach Verschlüsslung kein Pattern im Ciphertext erkennbar • Flippen eines Bits im Plaintext erzeugt komplett anderen Ciphertext • Flippen eines Bits im Key erzeugt komplett anderen Ciphertext Jedes Chaotische System sollte folgende Eigenschaften haben: • Nach wiederholter Anwendung der Permutation sind Pixel zufällig durchmischt • Minimale Veränderung des Inputs erzeugen komplett neuen Output • Die meisten chaotischen Systeme benutzen Kontrol-Parameter (i.d.R. Key). Kleine Veränderungen dieser sorgen für komplett andere Eigenschaften der Chaotischen Map. 20 / 25 Betrachtung der Sicherheit Selected-plaintext-attack Pixel an Position [0, 0]: Baker Map und Cat Map verändert diese nach beliebig vielen Iterationen nicht! Falls Chaotic Map immer selben Confusion-Key verwendet ⇒ Reduziert Schwierigkeit Diffusion-Key herauszubekommen 21 / 25 Betrachtung der Sicherheit Chosen-plaintext-attack Anwendbar auf alle Chaotic Maps Permutation statt Schlüssel Schlüssel ∨ Permutation ⇒ Entschlüsselung • Kein CBC Modus wie bei Blockcipher I Quasi ECM mit nur einen Block • Fixe Permutation der Pixel nach jeder Runde • Mit genügend Plaintext-Ciphertext-Paaren lässt sich Permutation schrittweise rekonstruieren 22 / 25 Betrachtung der Sicherheit Zusammenfassung • Erzeugen Verbesserungen neues Chaos? Verbesserung A löst Schwäche A, aber entsteht dadurch Schwäche B? • Kann Chaos Verschlüsselung bessere Effizienz erreichen? Optimierte Hardware für Input beliebiger Größe möglich? ⇒ State-of-the-Art Verfahren für wichtige Verschlüsselung! 23 / 25 Literatur Quellen 1) Fridrich, J.: Image encryption based on chaotic maps. In: Systems, Man, and Cybernetics, 1997. Computational Cybernetics and Simulation., 1997 IEEE International Conference on. vol. 2, pp. 1105-1110. IEEE (1997) 2) Lian, S., Sun, J., Wang, Z.: Security analysis of a chaos-based image encryption algorithm. Physica A: Statistical Mechanics and its Applications 351(2), 645-661 (2005) 3) Sharma, P., Ahmad, M., Khan, P.: Cryptanalysis of image encryption algorithm based on pixel shuffling and chaotic S-box transformation. In: Security in Computing and Communication, Communications in Computer and Information Science, vol. 467, pp. 173-181. Springer (2014) 24 / 25 Literatur Quellen 4) Weaknesses in Security Considerations related to Chaos-based Image Encryption, M. Preishuber, T. Hütter, S. Katzenbeisser, A. Uhl 5) Depreciating Motivation and Statistical Security Analysis of Chaos-based Image and Video Encryption, M. Preishuber, T. Hütter, S. Katzenbeisser, A. Uhl 25 / 25