Chaos-based Image Encryption

Werbung
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
Herunterladen