Steganographie als sichere Alternative zu Metadaten

21.11.2017

Praktisch alle Daten lassen Rückschluss auf unser Verhalten zu. So auch Bilddaten. Im Rahmen meiner Bachelor-Thesis „Hidden Image Data Encoding“ habe ich eine Alternative zu herkömmlichen Bildmetadaten entworfen. Fast jede Bilddatei trägt diese Metadaten. Darin enthalten sind Informationen und Details zum Bild und Autor. Obwohl Metadaten den meisten ein Begriff sind, kennt sich kaum jemand so richtig damit aus. Kaum einer weiß, welche Daten gespeichert werden, oder ob man diese Daten wirklich veröffentlichen möchte.

Metadaten können ein Sicherheitsrisiko darstellen

Unter professionellen Photographen sind diese Standards noch ein Begriff. Doch im Zeitalter der Smartphones und Selfies ist kaum bewusst, dass die Unmengen an Bilddaten kritische Informationen wie GPS-Positionen enthalten. Nur das Teilen einiger weniger Fotos mit einem modernen Smartphone, kann eine Rekonstruktion des Tagesablaufs ermöglichen [1]. IT-Security-Fachleute sehen das Thema Metadaten von Bildern nicht weniger kritisch:

„Metadata of data contains much useful information and it can be very dangerous from an information security point of view.“ [2]

Hinzu kommt, dass Metadaten aktuell keinerlei Schutz vor Manipulation bieten können. Durch Photoshop und ähnliche Bildbearbeitungsprogramme sind Fälschungen möglich, die mit bloßem Auge nicht als solche zu erkennen sind. Digitale Bilder haben ihre Beweiskraft verloren.

Doch das muss nicht so sein. Die jahrzehntealten Metadatenformate sind nicht in der Lage, Bildmanipulation nachzuweisen. Ein neues Verfahren kann dies aber leisten, indem es die Identität und Integrität einer Bilddatei bestätigen kann.

doubleSlash Blog Steganographie Metadaten Icons

 

 

 

 

 

 

 

 

 

Steganographie als Kerntechnologie des neuen Formats für sichere Metadaten

 

Um dieses Problem anzugehen, konnte ich im Rahmen meiner Thesis mithilfe der IT-Expertise von doubleSlash meine Idee umsetzen, die eine Lösung für das Sicherheitsrisiko von Metadaten bieten kann. Diese Lösung arbeitet mit einem steganographischen Verfahren.

Steganographie bezeichnet die verborgene Speicherung oder Übermittlung von Informationen, und wird häufig angewendet, wenn Kommunikation verschleiert werden soll. Dies wird erreicht, indem die Daten in vorhandene Bildinformation (einzelne Bildpixel) eingebracht werden. Diese Eigenschaft macht das Verfahren für sichere Metadaten interessant.

Die Metadaten werden ins Bild kodiert – und sind dadurch sozusagen „ins Bild gebacken“.

Anders als bei herkömmlichen Formaten, bei denen die Daten einfach angehängt werden, befinden sich die Informationen bei der steganographischen Kodierung direkt im Bild.

Information ins Bild kodieren: Das LSB-Encoding

Jede Bilddatei besteht aus Pixeln, diese wiederum aus einzelnen Farbwerten: den Primärfarben RGB Rot, Grün und Blau. In diese Werte kann via LSB-Encoding Information untergebracht werden. LSB steht für „Least Significant Bit“ – was soviel heißt wie „das unwichtigste Bit“. In diesem unwichtigsten Bit der einzelnen Farbwerte werden die Informationen untergebracht. Und das wie folgt:

doubleSlash Blog Steganographie Metadaten Original/LSB-Encoding

 

 

 

 

 

 

 

 

 

 

 

 

Wie in der Grafik zu erkennen ist, werden einzelne Pixel in vergrößerter Darstellung gezeigt: Links vor dem Encoding, rechts danach. Die in dem Bild dargestellten Farben sind repräsentativ, das heißt die Änderung ist mit bloßem Auge nicht sichtbar.

Auf der rechten Seite wird die Änderung in den Bitwerten blau hervorgehoben: Das sind die ins Bild kodierten Nutzdaten Autor, Timestamp, Geoinformation oder Urheberrechtsdaten. In diesen sechs beispielhaft gewählten Pixeln können in etwa zwei Zeichen kodiert werden, somit könnten in diesem Bild etwa 100.000 Zeichen untergebracht.

Um die Kapazität noch weiter zu erhöhen, also noch mehr Informationen im Bild unterzubringen, wird ein erweitertes LSB-Verfahren verwendet: Das sogenannte TBS-Encoding [3]:

doubleSlash Blog TBS Kodierung der Metadaten

 

 

 

 

 

 

 

 

 

 

 

 

Wie bei der vorherigen Grafik sind auch hier Pixel beispielhaft dargestellt, doch beim Treshold Based Steganography Verfahren werden wesentlich mehr Bits für die Unterbringung der Information verwendet. Abhängig von der Helligkeit des Pixels wird in dunklen Farbwerten mehr Information untergebracht. Da das menschliche Auge diese Änderung schlechter wahrnehmen kann, wird die Bildqualität nur minimal beeinflusst.

Entscheidend für die Informationsmenge in einem Farbwert ist hier das höchste Bit. Steht es vorn, ist die Farbe hell, steht es weiter hinten, ist die Farbe dunkel. Für jede 0 vor der ersten 1 eines Farbwertes wird ein zusätzliches Bit für die Kodierung verwendet.

Die erhöhte Kapazität zeigt sich im Vergleich: Wo vorher nur zwei Zeichen Untergebracht werden konnten, finden nun fast fünf Zeichen Platz. Die Kapazität ist im Durchschnitt etwa doppelt so hoch.

Alle Änderungen sind mit bloßem Auge nach wie vor nicht zu erkennen.

Es wird Zeit, digitalen Bildern ihre Integrität zurückzugeben

Der Hauptvorteil der Kodierung von Informationen innerhalb des Bildes ist die untrennbare Verbindung des Bildes mit der Information. Die gespeicherten Daten sind ins Bild gerechnet und können nicht ohne weiteres einfach entfernt werden. Nun kommt die Kryptographie, d.h. das Verschlüsseln und Entschlüsseln, ins Spiel.

Kombiniert man Steganographie nun mit Kryptographie, wie Hashing und Signaturen, lässt sich eine Kette logischer Abhängigkeiten generieren:

  • Die Farbwerte werden durch einen Hash auf einen Wert abgebildet, der ebenfalls ins Bild kodiert ist und den Originalzustand der Farbwerte nachweisen kann.
  • Dieser Hash wird durch eine GPGSignatur [4] gesichert, welche den Originalzustand des Hashes nachweisen kann
  • Die GPGSignatur ist ein kryptographisch sicheres Verfahren, welches nahezu unmöglich zu fälschen ist

 

Diese GPGSignatur verlässt sich auf das asymmetrische RSAKryptosystem. Nur durch einen privaten Schlüssel, welcher beim Autor des Bildes liegt, lässt sich eine Signatur erzeugen, welche zum öffentlichen Schlüssel passt. Dieser wird ebenfalls ins Bild kodiert, um die Signatur jederzeit prüfen zu können.

Passt das Bild zum Hash, und der Hash zur Signatur, ist der Originalzustand nachgewiesen. Der Besitzer des Schlüssels der Signatur ist auch der Ersteller der kodierten Daten.

Steganographie: Und das funktioniert?

Die gute Nachricht: ja. Dass das System funktioniert, kann mit einem Prototyp nachgewiesen werden. Dieser Prototyp wurde im Rahmen einer wissenschaftlichen Arbeit erstellt und wird von doubleSlash als Open Source zur Verfügung gestellt:

https://github.com/doubleSlashde/hidden-image-data-encoding

Auf der GitHub – Page finden sich weitere Informationen über den Prototypen.

Fazit

Durch die Umsetzung der steganographischen Verfahren und der Einbindung der kryptographischen Methoden wurde ein proof of concept erstellt, das neuartige Funktionen wie ein Signaturverfahren integrieren kann. 

Die hier umgesetzten Ideen sind jedoch noch nicht ausgereift. Ein großer Nachteil des steganographsichen Verfahrens ist die Tatsache, dass eine einfache Bildmanipulation die Daten unwiderruflich beschädigen kann. Als Lösung dafür könnte ein Fehlerrekonstruktionsverfahren eingesetzt werden, wie es zum Beispiel beim QR-Code der Fall ist, um die Beschädigung der Information durch die Modifikation des Bildes einzuschränken.

Wie kann ein Encoding eine sinnvolle Alternative zum momentanen Vorgehen bieten, Metadaten an eine Datei anzuhängen?

Das Anlegen und Lesen der Metadaten mithilfe des hier beschriebenen Konzeptes ist sehr viel zeitintensiver als bei herkömmlichen Metadaten. Jedoch bietet diese Methode eine Sicherheit, die mit herkömmlichen Metadaten so nicht möglich ist. Die Kodierung durch den TBS–Algorithmus bietet außerdem mehr als genug Kapazität für alle Arten an Metainformation.

Trotz allen Herausforderungen und Schwierigkeiten, wie z.B. der Verbindung des TBS-Encondings mit der GPG-Signatur, war es ein spannendes Projekt, was komplett neuen Boden in Sachen Bild Metadaten betreten hat und damit als wissenschaftlich wertvolle Forschungsgrundlage dient.


[1] https://www.howtogeek.com/211427/how-to-see-exactly-where-a-photo-was-taken-and-keep-your-location-private/
[2] http://resources.infosecinstitute.com/metadata-and-information-security
[3] https://www.researchgate.net/publication/271207740_Threshold-based_Steganography_A_Novel_Technique_for_Improved_Payload_and_SNR
[4] https://gnupg.org/

Bilder: Lorem Pixel, doubleSlash

Zurück zur Übersicht

Kommentar verfassen

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

*Pflichtfelder

*