22.01.2015 Aufrufe

Ausarbeitung

Ausarbeitung

Ausarbeitung

MEHR ANZEIGEN
WENIGER ANZEIGEN

Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.

YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.

Steganographie mit JPEG Graphiken<br />

Christian Kuka<br />

2. Mai 2008<br />

1 JPEG<br />

Zum besseren Verständnis der steganographischen Algorithmen mittels JPEG Graphiken sei hier nochmal<br />

ein kurzer überblick über das JPEG Komprimierungsverfahren dargestellt.<br />

Der Prinzipielle Aufbau des JPEG Kompressors ist in Abbildung 1 zu sehen. Dabei wird zunächst das eigentliche<br />

Bild in 8x8 Pixel große Teilbilder zerlegt. Diese werden dann mittels der diskreten Kosinustransformation<br />

(DCT) in 64 Frequnzkoeffizienten überführt. Die daraufhin ausgeführte verlustbehaftete Quantisierung rundet<br />

jeden Frequnzkoeffizienten auf einen geeigneten ganzen Wert. Nach der Komprimierung sorgt eine Huffman<br />

Kodierung für eine redundanzarme Speicherung der quantisierten Frequnzkoeffizienten.<br />

Abbildung 1: JPEG Aufbau<br />

1.1 Diskrete Kosinustransformation<br />

Die beim JPEG Komprimierungsverfahren zugrunde liegende zweidimensionale diskrete Kosinustransformation<br />

lautet:<br />

1.2 Quantisierung<br />

F xy = 1 4 C xC y<br />

7∑<br />

m=0 n=0<br />

C k =<br />

7∑<br />

f mn cos<br />

(2m + 1)xπ<br />

16<br />

{<br />

1√2<br />

wenn k = 0<br />

1 sonst<br />

cos<br />

(2n + 1)yπ<br />

16<br />

Die einzelnen Frequnzkoeffizienten eines 8x8 Teilbildes werden mit Hilfe einer Quantisierungsmatrix gerundet.<br />

F Q F (x, y)<br />

(x, y) = ⌊<br />

Q(x, y) ⌋<br />

Die Quantisierungswerte sind für niedrige Frequnzen kleiner als für hohe Frequnzen, da das menschliche Auge<br />

für grobe Strukturen empfindlicher ist. Die Qunatisierung stellt somit eine Irrelevanzreduktion dar.<br />

1.3 Frequenzhistogramm<br />

Das durch die Transformierung und Quantisierung entstehende Frequenzhistogramm 1.3 einer Bilddatei zeigt<br />

deutlich, daß die Häufigkeit der Frequnzkoeffizienten mit steigendem Betrag abnimmt.<br />

1


1 JPEG 2<br />

Häufigkeit<br />

-4 -3 -2 -1 0 1 2 3 4 JPEG Koeffizienten<br />

Abbildung 2: JPEG Frequnzhistogramm<br />

1.4 Steganographie mit JPEG<br />

Wie bereits erwähnt bietet die JPEG Komprimierung nur an gewissen Stellen die Möglichkeit zur Einbettung<br />

von steganographischen Nachrichten. Wie in Abbildung 1.4 gezeigt ist die Einbettung vor der Quantisierung<br />

nicht möglich, da durch die Quantisierung ein Informationsverlust herrscht. Somit ist die Einbettung erst vor<br />

der Huffman Kodierung erfolgsversprechend.<br />

Bitmap Datei<br />

JPEG Datei<br />

DCT<br />

Quantisierung<br />

Huffman<br />

Kodierung<br />

Informationsverlust<br />

Stego<br />

Abbildung 3: Steganographie in JPEG


2 JSTEG 3<br />

2 JSteg<br />

JSteg ist einer der ältesten Stegonographischen Algorithmen für JPEG komprimierte Grafiken. Entwicklt<br />

wurde JSteg 1997 von Derek Upham Bei JSteg wird eine steganographische Nachricht Bit für Bit in das Bild<br />

eingebettet. Dabei wird jeweils das letzte Bit eines quantifizierten Frequenzkoeffizienten (LSB) überschrieben.<br />

Ausnahme hiervon sind die Frequenzkoeffizienten mit dem Wert 0 und 1. Der Wert 0 wird deshalb nicht<br />

überschrieben, weil dadurch für das Menschliche Auge sichtbare Unterschiede entstehen können (Bereiche<br />

mit niedriger Frequenz sind Bereiche mit groben Strukturen). Frequenzkoeffizienten mit dem Wert 1 werden<br />

ebenfalls nicht überschrieben, weil der resultierende Wert zu 0 werden könnte und ein Kommunikationspartner<br />

nichtmehr zwischen einem ursprünglichen Koeffizienten mit Wert 0 und einem Koeffizienten, der erst nach<br />

der Einbettung zu 0 wurde, unterscheiden könnte.<br />

2.1 Algorithmus<br />

In Abbildung 4 ist der relativ einfache Einbettungsalgorithmus von JSteg dargestellt. Für jeden Frequenzkoeffizienten<br />

der nicht 0 oder 1 ist wird in Zeile 4 jeweils das letzte Bit (LSB) mit einem Bit der steganographischen<br />

Nachricht überschrieben. Erst wenn kein Nachrichtenbit oder Frequenzkoeffizient mehr vorhanden<br />

ist terminiert der Algorithmus.<br />

JSteg Algorithmus<br />

C = JPEG Frequenzkoeffizienten<br />

m = Nachrichtenbit<br />

1 for each Frequenzkoeffizient a ∈ C<br />

2 if a ≠ 0 and a ≠ 1 then<br />

3 lsb(a) = n<br />

4 m = nextbit<br />

Abbildung 4: JSteg Algorithmus<br />

2.2 Eigenschaften<br />

Beim Vergleich des eigentlichen JPEG Histogramms Abb.1.3 und des Histogramms nach der Einbettung<br />

mittels JSteg Abb.2.2 fällt auf, daß JSteg die Frequenzkoeffizienten paarweise ausgleicht.<br />

Häufigkeit<br />

-4 -3 -2 -1 0 1 2 3 4 JPEG Koeffizienten<br />

Abbildung 5: JSteg Histogramm<br />

Die Kapazität des JSteg Algorithmus beträgt wegen der Nicht-Nutzung der Frequenzkoeffizienten 0 und<br />

1 nur 12,8%. Zudem ist festzustellen, daß JSteg eine steganographische Nachricht von oben nach unten in<br />

den Träger einbettet.


2 JSTEG 4<br />

2.3 Angriff<br />

Genau das eben besprochene Histogramm, nach der Einbettung mittels JSteg, ist der Angriffspunkt um mit<br />

statistischen Werkzeugen eine Einbettung zu erkennen. Ein möglicher statistischer Angriff ist der χ 2 Test wie<br />

er in [Wes01] beschrieben wird.<br />

2.3.1 χ 2 Test<br />

Der χ 2 Test zeigt die Unterschiede zwischen einer beobachteten Verteilung und einer erwarteten Verteilung.<br />

Dabei ist die beobachtete Verteilung n i = c 2i die Häufigkeit eines Frequenzkoeffizienten. Die erwartete Verteilung<br />

ist das arithmetische Mittel n ∗ i = c2i+c2i+1<br />

2<br />

zweier im Histogramm nebeneinander liegender Häufigkeiten<br />

von Frequenzkoeffizienten. Der Unterschied der beiden Verteilung ist definiert als:<br />

χ 2 =<br />

k∑<br />

i=1<br />

(n i − n ∗ i )2<br />

n ∗ i<br />

Je mehr Frequenzkoeffizienten durch den JSteg Algorithmus ausgeglichen werden, um so mehr nährt sich der<br />

Wert von χ 2 1.


3 F5 5<br />

3 F5<br />

F5 wurde 2001 von Andreas Westfeld [Wes01] entwickelt und soll die statistischen Eigenschaften eines Trägers<br />

erhalten. Im Gegensatz zu JSteg werden die einzelnen Frequenzkoeffizienten nicht überschrieben, sondern ihr<br />

absoluter Wert dekrementiert. Zudem werden Frequenzkoeffizienten mit Wert 1 genutzt, lediglich Koeffizienten<br />

mit Wert 0 werden nicht für dir Einbettung genutzt.<br />

Zudem bedient sich F5 der Matrixkodierung von Ron Crandall, wodurch die Einbettungseffizients gesteigert<br />

wird.<br />

3.0.2 Permutative Spreizung<br />

Im Gegensatz zu JSteg wird bei F5 eine steganographische Nachricht nicht von oben nach unten in den<br />

Träger eingebettet, sondern mit Hilfe einer Permutation der Frequenzkoeffizienten in dem Träger verteilt.<br />

Die Permutation ist abhängig von einem Schlüssel, den sowohl Sender als auch Empfänger besitzen müssen.<br />

3.0.3 Matrixkodierung<br />

Bei der Matrixkodierung werden n änderbare Stellen eines Trägers zu einem Block (Kodewort) zusammengefaßt.<br />

Um eine Nachricht x bestehend aus k Stellen in den Träger einzubetten, wird geprüft ob eine Hashfunktion<br />

f aus dem Kodewort bereits die Nachricht extrahieren kann x = f(a). Ansonsten muß das Kodewort<br />

so geändert werden das gilt x = f(a ′ ), wobei a ′ das veränderte Kodewort ist. Dabei darf die Anzahl der<br />

Änderungen (Hammingdistanz) bei F5 nicht größer als 1 sein d(a, a ′ ) ≤ 1. Die Kodewortlänge ergibt sich bei<br />

einer Nachrichtenlänge k somit zu n = k 2 − 1<br />

Das folgende Beispiel verdeutlicht die Einbettung einer Nachricht, die aus zwei Bits x 1 ,x 2 besteht, in ein<br />

Kodewort a der Länge n = 3.<br />

x 1 = a 1 ⊕ a 3 , x 2 = a 2 ⊕ a 3<br />

x 1 ≠ a 1 ⊕ a 3 , x 2 = a 2 ⊕ a 3<br />

x 1 = a 1 ⊕ a 3 , x 2 ≠ a 2 ⊕ a 3<br />

x 1 ≠ a 1 ⊕ a 3 , x 2 ≠ a 2 ⊕ a 3<br />

⇒ nichts ändern<br />

⇒ a 1 ändern<br />

⇒ a 2 ändern<br />

⇒ a 3 ändern<br />

3.1 Algorithmus<br />

Zu Beginn des F5 Algorithmuses wird die Permutation der Frequenzkoeffizienten mittels eines Schlüssels<br />

initialisiert. Zudem wird mit Hilfe der maximalen Kapazität des Trägers und der Nachrichtengröße der Parameter<br />

k, sowie die Kodewortlänge n bestimmt.<br />

Die Einbettung selbst ist in 6 beschrieben.<br />

buffer[n] = n Stelliger Einbettungspuffer<br />

1 do<br />

2 buffer mitn Indiezes der Koeffizienten, die nicht 0 sind, füllen<br />

3 hash = k Stelliger Hashwert<br />

4 msg = k Bits der Nachricht<br />

5 position = hash ⊕ msg<br />

6 if position ≠ 0 then<br />

7 Dekrementiere Betrag von C[buffer[position − 1]] um 1<br />

8 while C[buffer[position]] = 0<br />

Abbildung 6: F5 Algorithmus


3 F5 6<br />

Wobei die Bildung des Hashwerts in Zeile 3 nach folgendem Schema berechnet wird:<br />

3.2 Eigenschaften<br />

hash(a) = ⊕ n i=1a i ∗ i<br />

Beim Vergleich des eigentlichen JPEG Histogramms Abb.1.3 und des Histogramms nach der Einbettung<br />

mittels F5 Abb.3.2 fällt auf, daß die Häufigkeit der Frequenzkoeffizienten mit Wert 0 leicht ansteigt. Dieses<br />

ist auf das Shrinkage zurück zu führen, daß entsteht, wenn bei der Einbettung ein Koeffizient mit einem<br />

Absolutwert von 1 zu 0 dekrementiert wird und ein neuer Block zur Einbettung ausgewählt werden muß.<br />

Häufigkeit<br />

-4 -3 -2 -1 0 1 2 3 4 JPEG Koeffizienten<br />

Abbildung 7: F5 Histogramm<br />

Durch die Matrixkodierung bieted F5, in Abhängigkeit von der Einbettungsrate, eine relativ hohe Einbettungseffizienz<br />

wie in Abb.3.2 zu sehen.<br />

10<br />

9<br />

E(k)<br />

R(k)<br />

D(k)<br />

8<br />

7<br />

6<br />

5<br />

4<br />

3<br />

2<br />

1<br />

Abbildung 8: F5 Einbettungseffizienz<br />

0<br />

1 2 3 4 5 6 7 8 9 10<br />

Dabei ergeben sich die einzelnen Kurven für die Einbettungsrate R, d ie Änderungsdichte D und die Einbettungseffizienz<br />

E aus den folgenden Formeln:<br />

Einbettungsrate:<br />

R(k) =<br />

k<br />

2 k − 1<br />

Änderungsdichte:<br />

D(k) = 1<br />

2k


3 F5 7<br />

Einbettungseffizienz (Eingebettete Bits pro Änderung):<br />

E(k) = R(k)<br />

D(k)<br />

Allerdings muß hierbei noch das Shrinkage berücksichtigt werden, wodurch F5 eine Einbettungseffizienz von<br />

1,5 bei maximaler Einbettungrate erreicht.<br />

3.3 Angriff<br />

In [JFH] wird beschrieben, daß es möglich ist Einbettungen mittels F5 zu entdecken und sogar die Länge der<br />

eingebetteten Nachricht zu ermitteln. Dazu wird der Träger erst dekomprimiert und um 4 Zeilen verkleinert,<br />

wie in Abb. 3.3 gezeigt.<br />

Abbildung 9: Crop Angriff<br />

Daraufhin wird ein Tiefpassfilter verwendet um Blockartifakte zu entfernen. Eine erneute Komprimierung<br />

mit der Quantisierungsmatrix des Trägers und ein darauf folgender Vergleich der Histogrammdaten der<br />

Frequenzkoeffizienten kann einen erhöhten Anteil an 0-Koeffizienten aufdecken.


4 MODEL BASED STEGANOGRAPHIE 8<br />

4 Model Based Steganographie<br />

Bei MBS liegt die Idee des perfekten Komprimierers zugrunde. Unter einem perfekten Komprimierer versteht<br />

man einen Komprimierer der alle Eigenschaften der realen Welt kennt, also intern ein perfektes Modell der<br />

realen Welt besitzt. Somit sind komprimierte Bilder lediglich eine willkührliche Aneinanderreihung von Bits.<br />

Darauf aufbauend kann man davon ausgehen, daß ein Dekomprimierer aus willkührlichen Daten immer ein<br />

ursprürliches Bild erstellen kann. Da er ebenfalls ein perfektes Modell der realen Welt besitzt.<br />

Da es allerdings keinen perfekten Komprimierer gibt, versucht die modelbasierte Stegonographie (MBS) ein<br />

nahezu perfektes Modell P zu nutzen um eine steganographische Nachricht in einen Träger einzubetten.<br />

Dabei werden für einen Menschen oder Maschine wahrnehmbare Eigenschaften des Trägers X det 1 genutzt<br />

um das Modell zu initialisieren. Vernachlässigbare Eigenschaften des Trägers X indet werden bei MBS unter<br />

Berücksichtigung des Modells mit Hilfe eines arithmetischen Dekodierers so verändert, daß sie die Nachricht<br />

enthalten. Ein Empfänger kann somit wieder das Modell mit Hilfe von X det initialisieren und die eingebettete<br />

Nachricht extrahieren.<br />

Die genaue Arbeitsweise von MBS ist in Abb.4 dargestellt.<br />

Cover<br />

X<br />

Model<br />

X<br />

det<br />

X<br />

indet<br />

P<br />

X i ndet | X det<br />

X X ’<br />

det<br />

indet<br />

Entropy<br />

Decoder<br />

X’<br />

Message<br />

M<br />

Abbildung 10: MBS<br />

Im Hinblick auf JPEG komprimierte Graphiken bedeutet dies, daß es eine Aufteilung von wahrnehmbaren<br />

und vernachlässigbaren Eigenschaften gibt.<br />

Wobei die vernachlässigbaren Eigenschaften einer JPEG komprimierten Graphik die Häufigkeit eines Frequenzkoeffizienten<br />

darstellt. Im folgenden werden die Häufigkeit eines bestimmten Frequenzkoeffizienten c als<br />

high precision bins h c bezeichnet.<br />

Dagegen stellen die wahrnehmbaren Eigenschaften eine Gruppe l c von, im Histogramm benachbarter, high<br />

precision bins dar.<br />

⎧<br />

⎪⎨ h 2c+1 + h 2c wenn c < 0<br />

l c = h 0 wenn c = 0<br />

⎪⎩<br />

h 2c−1 + h 2c wenn c > 0<br />

1 In dem Artikel von Rainer Böhme und Andreas Westfeld [BW04] werden die Bezeichnung X det und X indet statt wie bei<br />

Phil Sallee [Sal] α und β verwendet. Da diese <strong>Ausarbeitung</strong> sich öfter auf Andreas Westfeld beruft, sollen diese Bezeichnung das<br />

weitere Lesen vereinfachen


4 MODEL BASED STEGANOGRAPHIE 9<br />

Diese Gruppe wird im folgenden low precision bins genannt.<br />

Low precision bins sind somit Teil von X det und dürfen bei der Einbettung nicht verändert werden. Dagegen<br />

stellen high precision bins Elemente von X indet dar, die unter Berücksichtigung eines Models P verändert<br />

werden dürfen. Dabei muß der Algorithmus beachten, daß die Häufigkeit innerhalb einer low precision bin<br />

unverändert bleibt und die Änderung weiterhin kohärent zum Modell bleibt.<br />

4.0.1 Model<br />

Als Modell für die Häufigkeitsverteilung wird eine Cauchy Verteilung genutzt, die wie folgt definiert ist:<br />

P (c) = p − 1 (|c/s| + 1)−p<br />

2s<br />

mit p > 1 und s > 0<br />

Die zugehörige Dichtefunktion ist:<br />

D(c) =<br />

{<br />

1<br />

2 (1 + |c/s|)1−p wenn c ≤ 0<br />

1 − 1 2 (1 + |c/s|)1−p wenn c ≥ 0<br />

Abb.4.2 zeigt das Histogramm einer mit JPEG komprimierten Graphik mit den jeweiligen high und low<br />

precision bins (l −2 . . . l 2 ). Die rote Linie beschreibt dabei das Modell, das über die Parameter p und s an die<br />

low precision bins angepasst wurde.<br />

Häufigkeit<br />

l<br />

-1<br />

l<br />

1<br />

l<br />

-2<br />

l<br />

2<br />

-4 -3 -2 -1 0 1 2 3 4 JPEG Koeffizienten<br />

Abbildung 11: MBS Modell<br />

Nach dem anpassen des Modells wird die Wahrscheinlichkeit von jedem Koeffizienten innerhalb des Modells<br />

über die Dichtefunktion berechnet. Diese Wahrscheinlichkeiten werden mit der Nachricht und der Häufigkeiten<br />

der Koeffizienten an einen arithmetischen Dekodierer übergeben. Der Rückgabewert des arithmetischen Dekodierers<br />

zusammen mit der jeweiligen low precision bin entspricht dem Wert des neuen Koeffizienten. Ein<br />

möglicher Dekodierer wird nach Sallee [Sal] in [IHWC87] beschrieben.<br />

4.1 Eigenschaften<br />

Bei MBS ergibt sich die Einbettungsrate R, die Änderungsdichte D und die Einbettungseffizienz E aus der<br />

Wahrscheinlichkeit k der Häufigkeit eines Frequenzkoeffizienten.<br />

Einbettungsrate:<br />

R(k) = −(k log 2 (k) + (1 − k) log 2 (1 − k))


4 MODEL BASED STEGANOGRAPHIE 10<br />

Änderungsdichte:<br />

Einbettungseffizienz:<br />

D(k) = 2k(1 − k)<br />

E(k) = R(k)<br />

D(k)<br />

Die Einbettungsrate ist hierbei gleichbedeutend mit der Entropy.<br />

4<br />

3.5<br />

E(k)<br />

R(k)<br />

D(k)<br />

3<br />

2.5<br />

2<br />

1.5<br />

1<br />

0.5<br />

Abbildung 12: MBS Einbettungseffizienz<br />

0<br />

0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1<br />

Wie in Abb.4.1 zu sehen ist, sinkt die Einbettungseffizienz nie unter 2 für 0 < k < 1.<br />

4.2 Angriff<br />

Bisher wurde immer davon ausgegangen, daß die Häufigkeit von Frequenzkoeffizienten kontinuierlich mit<br />

steigender Frequenz abnimmt.<br />

Dies ist aber nicht immer der Fall, je nach Art des Bildes und je nach Aufnahmegerät kann ein Träger<br />

eine erhöhte Häufigkeit von Frequenzen in hḧren Bereichen aufzeigen. Diese Besonderheit wird von dem verwendeten<br />

Modell nicht abgedeckt wie in Abb.4.2 ersichtlich. Bei der Einbettung durch MBS würde diese<br />

Besonderheit unter Umständen entfernt werden, da Änderungen kohärent zum zugrunde liegenden Modell<br />

bleiben müßen.<br />

Bei genügend statistischen Daten kann diese Veränderung der Frequenzkoeffizienten daher durch einen Vergleich<br />

der erwarteten und der vorhandenen Koeffizienten aufgedeckt werden. Nach [BW04] ist die Wahrscheinlichkeit,<br />

daß eine steganographische Nachricht entdeckt werden kann, bei einer Nutzung von mehr als<br />

40% der möglichen Kapazitat eines Trägers bei 50%.


5 FAZIT 11<br />

Häufigkeit<br />

-4 -3 -2 -1 0 1 2 3 4 JPEG Koeffizienten<br />

5 Fazit<br />

Abbildung 13: MBS Histogramm<br />

Alle hier vorgestellten Algorithmen können schon bei einer geringen Einbettungsrate entdeckt werden. Dennoch<br />

können die verwendeten Techniken und Blickwinkel für neue steganographische Algorithmen genutzt<br />

werden. Weitere steganographische Algorithmen, die in dieser <strong>Ausarbeitung</strong> nicht Untersucht wurden, wären<br />

MB2 und ”writing on wet paper”[JFS05]. MB2 stellt dabei eine Weiterentwicklung des hier vorgestellten<br />

MBS (MB1) Algorithmuses dar. Writing on wet paper betrachtet dabei einen Träger als einen Speicher mit<br />

defekten Zellen und bietet somit einen völlig neuen Blickwinkel auf das Einbetten von steganographischen<br />

Nachrichten.


ABBILDUNGSVERZEICHNIS 12<br />

Abbildungsverzeichnis<br />

1 JPEG Aufbau . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1<br />

2 JPEG Frequnzhistogramm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2<br />

3 Steganographie in JPEG . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2<br />

4 JSteg Algorithmus . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3<br />

5 JSteg Histogramm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3<br />

6 F5 Algorithmus . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5<br />

7 F5 Histogramm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6<br />

8 F5 Einbettungseffizienz . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6<br />

9 Crop Angriff . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7<br />

10 MBS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8<br />

11 MBS Modell . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9<br />

12 MBS Einbettungseffizienz . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10<br />

13 MBS Histogramm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11<br />

Literatur<br />

[BW04]<br />

Rainer Böhme and Andreas Westfeld. Breaking cauchy model-based jpeg steganography with first<br />

order statistics. 2004.<br />

[IHWC87] Radford M. Neal Ian H. Witten and John G. Cleary. Arithmetic coding for data compression.<br />

Commun. ACM, 30(6):520–540, 1987.<br />

[JFH]<br />

[JFS05]<br />

[Sal]<br />

Miroslav Goljan Jessica Fridrich and Dorin Hogea. Steganalysis of jpeg images: Breaking the f5<br />

algorithm.<br />

Petr Lisoněk Jessica Fridrich, Miroslav Goljan and David Soukal. Writing on wet paper. IEEE<br />

TRANSACTIONS ON SIGNAL PROCESSING, 53(10):3923–3935, 2005.<br />

Phil Sallee. Model-based steganography.<br />

[Wes01] Andreas Westfeld. F5 - ein steganographischer algorithmus. 2001.

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!