Hast Du auch schon unsichtbare Geheimbotschaften mit Zitronensaft geschrieben und durch Erhitzen wieder sichtbar gemacht - ohne dabei das Papier zu verbrennen?
Der Begriff Steganographie ist aus den griechischen Wörtern στεγανός ‚verborgen‘ und γραφία ‚Schrift‘ und bezeichnet die Kunst oder Wissenschaft der verborgenene Speicherung oder Übermittlung von Informationen in einem Trägermedium. Das Wort lässt sich auf die griechischen Bestandteile στεγανός steganós ‚bedeckt‘ und γράφειν gráphein ‚schreiben‘ zurückführen, bedeutet also wörtlich „bedeckt schreiben“ bzw. „geheimes Schreiben“. Das modifizierte Medium wird als Steganogramm bezeichnet.
Der Einsatz von Steganographie hat Geheimhaltung und Vertraulichkeit zum Ziel. Informationen werden so verborgen, dass ein Dritter bei Betrachtung des Trägermediums keinen Verdacht schöpft. Damit ist zugleich erreicht, dass die verborgenen Informationen nicht Dritten bekannt werden, d.h. die Geheimhaltung ist gewährleistet.
zeitraubendes Verfahren aus der Antike: einem Sklaven wurde der Kopf geschoren und eine Nachricht auf die Kopfhaut tätowiert. Sobald die Haare wieder nachgewachsen waren, wurde der Sklave zum Empfänger geschickt
Wachstafeln waren von der Antike bis ins Mittelalter weit verbreitet und ist eine in der Regel hochrechteckige Schreibtafel aus Holz, die ein- oder beidseitig mit Wachs beschichtet ist. Die Schrift wurde mit einem Griffel (Stilus) in die Wachsfläche eingekratzt. Um eine Nachricht zu verstecken, wurde die geheime Botschaft entweder in das Holz darunter geritzt oder mit Tinte draufgeschriebe und dann wurde das Wachs wieder darüber gegossen und mit einer unverdächtigen Botschaft versehen.
unsichtbare Geheimtinte (bspw. Zitronensaft)
doppelter Boden in Paketen oder Briefumschlägen
Mikropunkt: wurde vor allem im 2. Weltkrieg von den Nationalsozialisten verwenden, die in Mikropunkten (i-Punkte oder Satzzeichen) Briefe oder Lagepläne versteckten. D.h. die Nachricht wurde unglaublich stark verkleinert und dann im Punkt versteckt.
Maskierte Geheimschrift: Jargon-Code: eine Art Geheimsprache. Bestimmte Floskeln, Wörter oder Zeichen wird eine besondere Bedeutung zugewiesen, diese muss vorher zwischen den Partnern vereinbart werden. Einige Ausdrücke solchen Geheimsprachen haben als jargon auch schon Einzug in die Alltagssprache gehalten, bspw: "Kohle" -> Geld, "Stoff" -> Drogen, "Ratte" -> Verräter, "Loch" -> Gefängnis.
Cardan-Gitter: Das etwa im 16. Jahrhundert von dem italienischen Mathematiker Gerolamo Cardano erdachte und nach ihm benannte „Cardan-Gitter“ spielte in der frühen Neuzeit eine bedeutende Rolle bei der Verschlüsselung von Botschaften. Aus einem Karton werden Fenster ausgeschnitten. Diese Schablone legt man auf einen Text. Der unwichtige Teil der Botschaft wird damit ausgeblendet.💡 Obwohl der Fensterkarton als kryptographischer Schlüssel angesehen werden kann, wird das Cardan-Gitter zu den steganographischen Verfahren gezählt, da das Verbergen der Existenz einer Geheimbotschaft im Vordergrund steht.
In den frühen 1900er Jahren infiltrierten deutsche Spione die Bürger Frankreichs im Namen des Handels. Ihre Motive waren jedoch, die Details des französischen Verteidigungssystems zu beobachten und den Deutschen bei der Invasion Frankreichs zu helfen. Das ausgeklügelte französische Verteidigungssystem gewährleistete ein Höchstmaß an Vertraulichkeit auch zwischen den Regionen, so dass es für einen einzelnen Spion schwierig war, alle Informationen zu sammeln. Daher mussten mehrere Spione Informationen aus jeder Region zusammentragen und gemeinsam einen Plan ausarbeiten. Der Treffpunkt durfte aus Sicherheitsgründen nur an diesem Tag bekannt gegeben werden, aber wie sollte er alle Regionen innerhalb eines Tages erreichen? Sie wählten die Zeitung, einen schnellen, aber sehr unsicheren öffentlichen Kanal! Aber daran hatten die Deutschen schon gedacht: Sie veröffentlichten den geheimen Treffpunkt im Wetterbericht des Tages.
Findest Du heraus, wo der Treffpunkt war?
🤔 Wie versteckt man ein Bild in einem anderen Bild? Vielleicht erinnerst du dich an das RGB-Farbmodell. Die Farbe eines jeden Bild-Pixels wird durch ihren Grün-, Rot- und Blauanteil bestimmt. Dabei wird jeder Farbanteil mit einer Zahl zwischen 0 und 255 festgelegt, z.B. (67, 200, 105) oder binär geschrieben (01000011, 11001000, 01101001).
Werden in dieser RGB-Binärdarstellung die hintersten (kleinsten) Bit geändert, so ändern die Farbanteile kaum. Werden jedoch die vordersten (grössten) Bit geändert, so ändern die Farbanteile stark. Im obigen Beispiel wurden nur die letzten beiden Bit im Trägerbild (Baum) verändert. Trotzdem sieht der Baum immer noch aus wie ein Foto von einem Baum. Für das Geheimbild sind die vordersten Bit die wichtigsten. Diese Bits bestimmen grob die Grösse der Farbanteile. Das oben gezeigte Katzenbild besteht nur den beiden vordersten Bits – die Katze wirkt etwas grobkörnig, ist aber als Katze zu erkennen.
💡 Die Idee besteht nun darin, im Trägerbild für jedes Pixel und für jeden Farbanteil die hintersten beiden Bits zu ersetzen, und zwar durch die vordersten beiden Bit der Farbanteile des entsprechenden Pixels des Geheimbilds. Dies ist nachfolgend für ein Pixel gezeigt. Mit den vordersten beiden Farbanteilbit des „Original Katzenbilds“ werden die beiden hintersten Farbanteilbit des „Original Baumbilds“ überschrieben und so das „Zusammengesetzte Bild“ erzeugt.
🤔 Wie bekommen wir das versteckte Bild wieder raus?
💡 Im „Zusammengesetzen Bild“ sind die beiden hintersten Rotanteilbit 01 und somit müssen die beiden vordersten Rotanteilbit im zu rekonstruierenden Katzenbild ebenfalls 01 sein. Wie lauten aber die anderen sechs Rotanteilbit im zu rekonstruierenden Katzenbild? Diese kennen wir nicht, diese müssen wir „erfinden“. Wählen wir für diese sechs Bit 000000 bei allen Pixeln und allen Farbanteilen, so erhalten wir ein zu dunkles Bild. Wählen wir überall 111111, so erhalten wir ein zu helles Bild. Die Wahl 011111 ergibt ein mittelhelles Bild, jedoch mit schlechtem Kontrast (wir wählen dieses). Es gibt jedoch auch Verfahren, bei denen die sechs Bit für jeden Farbanteil eines jeden Pixels so bestimmt werden, dass ein „natürlicher“ Kontrast entsteht, darauf gehen wir hier aber nicht näher ein.
Am Ende erhalten wir so das etwas verpixelte, aber erkennbare rekonstruierte Bild.
Wir beachten bei dieser Aufgabe nur den Rotanteil eines Pixels. Sei dieser beim Originalbild 01100101. Derjenige des Trägerbildes ist 11000110.
Wie sieht der Rotanteil des zusammengesetzten Bildes aus?
Wie sieht der Rotanteil des rekonstruierten Bildes aus?
Suche im Internet zwei Bilder mit 200x200 Bildpunkten. Dazu fügst Du z.B. in der Google Suche einfach den Zusatz 200×200 mit in die Suche ein, z.B. Katze 200×200. Speichere beide Bilder auf deinem Computer ab.
Gehe auf die Seite Image Steganography, wähle die Einstellung „Hide Image“ und kombiniere beide Bilder. Wähle möglichst viele Bit für das zu versteckende Bild, aber nur so viele, dass das Bild unsichtbar bleibt.
Speichere das Resultat über einen Klick mit der rechten Maustaste auf deinem Computer ab und schicke das Bild deinem Nachbarn / deiner Nachbarin per E-Mail, Teams oder Messenger.
Gehe auf die Seite Image Steganography, wähle die Einstellung „Unhide Image“ und lasse das unsichtbare Bild sichtbar werden.
11000101
01011111
Man kann relativ leicht, eine gheime Nachricht in Mail, WhatsApp oder Threema verstecken.
Dafür greifen wir jedoch etwas in unsere Trickkiste und nutzen Unicode, um das zu erreichen.
💡 Um mit Unicode Nachrichten zu verstecken, benötigen wir zwei verschiedene unsichtbare Unicode-Formatierungszeichen. Damit können wir eine binäre Geheimbotschaft unsichtbar in einen normalen Text einschleusen. Z.B. können wir die binäre UTF-8 Codierung unserer Geheimbotschaft nehmen und diese Bit für Bit mit den beiden unsichtbaren Unicode-Formatierungszeichen in einen Trägertext einfügen.
🤔 Doch welche unsichtbaren Unicode-Formatierungszeichen eignen sich dafür? Diese müssten wirklich unsichtbar sein und von möglichst vielen Apps unterstützt werden.
🐪 Dafür greifen wir ganz tief in die Unicode Trickkiste und schauen uns die arabische und persische Schrift etwas genauer an. Dort variiert die Darstellung eines Zeichens, je nachdem wo das Zeichen steht. Z.B. wird der Buchstabe Bā' isoliert als ﺏ dargestellt, am Wortanfang als ﺐ, im Wortinnern als ﺑ und am Wortende als ﺒ. Um all diese Varianten zu ermöglichen, wird das Unicode Zeichen ZWJ(breitenloser Verbinder) geeignet mit dem Buchstaben kombiniert. Weiter werden häufig auch Buchstaben zu einer neuen Darstellung verschmolzen. Z.B. wird die Buchstabenfolge Lām ل Alif ا zu لا verschmolzen. Um die beiden Buchstaben getrennt hintereinander darzustellen لا (es wird im Arabischen von rechts nach links gelesen) braucht es zusätzlich das Unicode Zeichen ZWNJ (Bindehemmer) dazwischen.
😎 Da weder ZWJ noch ZWNJ eine Breite haben und keines davon einen Einfluss auf lateinische Buchstaben hat, können wir diese beiden Unicode Zeichen dafür verwenden, um binäre Geheimbotschaften in (nicht-arabischen) Texten zu verstecken. Um das Bit 1 unseres binären Geheimtextes in den Trägertext einzufügen, wählen wir ein ZWJ, um das Bit 0 einzufügen ein ZWNJ. Einfügen können ZWJ und ZWNJ mithilfe ihrer hexadezimalen Codepoints.
die breitenlosen Verbinder ZWJ werden auch genutzt, um verschiedene Emojis zu verschmelzen.
👩 + ZWJ + ❤ + VS + ZWJ + 💋 + ZWJ + 👩 = 👩❤️💋👩
⚠️ Fassen wir nun alles zusammen und zeigen am Geheimwort abc auf, wie dieses in einem Trägertext versteckt werden kann.
Der Geheimtext wird binär in UTF-8 codiert: abc ➜ 01100001 01100010 01100011
Jede 1 wird als ZWJ und jede 0 wird als ZWNJ geschrieben: 01100001 01100010 01100011 ➜
ZWNJ ZWJ ZWJ ZWNJ ZWNJ ZWNJ ZWNJ ZWJ ZWNJ ZWJ ZWJ ZWNJ ZWNJ ZWNJ ZWJ ZWNJ ZWNJ ZWJ ZWJ ZWNJ ZWNJ ZWNJ ZWJ ZWJ
🤔 Das ist schön und gut, aber wie füge ich das in WhatsApp oder Threema ein? Ich habe ja keine ZWJ- und ZWNJ-Tasten…
Um uns diese Arbeit abzunehmen, nutzen wir dafür eine einfache App.
Schreibe deine geheime Nachricht in das "Secret"-Textfeld.
Wähle ein geheimes Passwort.
Schreibe in das Message-Textfeld deinen Trägertext (also den Text, welcher nichts mit deiner geheimen Nachricht zu tun hat). Klicke dann auf Hide.
Versende den Trägertext sowie das Passwort per Threema/WhatsApp/... 💡Alternativ kannst du dir die Nachricht auch selber schicken, so musst du niemanden mit deinen Versuchen bespamen.
Schreibe das erhaltene Passwort in das Passwortfeld, um den Geheimtext herauszubekommen.
Kopiere den Trägertext in das Textfeld "Stegcloaked Message". Klicke dann auf "Get Secret".
Tadaa! Die geheime Nachricht erscheint. 💫✨
Ist dieses steganographische Verfahren auch eine Verschlüsselung? Wenn ja, ist es eine symmetrsiche oder asymmetrische Verschlüsselung? Begründe in 1-2 Sätzen.
Wie kann man einen Schlüssel sicher austauschen?
Übersetze das Wort "Hey" in 0en und 1en: https://www.rapidtables.com/convert/number/ascii-to-binary.html
Wie würde nun der Geheimtext aussehen, welchen wir in einen Tarntext "einsetzen" würden?
Bei der Steganografie ist die Information für jeden, der das Verfahren kennt, lesbar. Anders ist es bei der Kryptografie, wo ein Geheimschlüssel die (grundsätzlich sichtbare) Information schützt.
Kerckhoffs’ Prinzip besagt, dass die Sicherheit eines Systems nicht von der Geheimhaltung der Algorithmen abhängen darf, sondern nur von der Geheimhaltung eines Schlüssels.
Ist in der Kryptographie ein Schlüssel bekannt, so muss lediglich dieser geändert werden. Ist in der Steganographie ein Verfahren bekannt, so muss ein anderes Verfahren gewählt werden.
Ein steganografisches Verfahren ist daher nur dann sicher, wenn nach Anwendung des Verfahrens auf ein Medium dritte Personen keinerlei Rückschlüsse ziehen können, ob in einem vorliegenden Medium nicht offensichtliche Informationen verborgen sind.
Ein technisch gutes Beispiel für ein steganographisches Verfahren ist das Verstecken einer Adresse in einer Wettervorhersage wie im Abschnitt „Geheimtreffen, siehe Wetterbericht 🌦️“. Das Verstecken eines Geheimtextes in einem auffälligen Text wie: „Bob adelt den Esel Xaver am Mittag per Lichtschwert eingenhändig.“ wäre ein „bad example“ - ein schlechtes Beispiel.
Insbesondere bei elektronischen Medien muss noch etwas Weiteres beachtet werden, der Platzbedarf für die Geheimbotschaft. Im Kapitel „Versteckte Botschaften in Chat und Instant Messaging“ wird eine Geheimbotschaft aufwändig codiert, um diese unsichtbar in einem normalen Text verstecken zu können. D.h. die Geheimbotschaft belegt viel Speicherplatz. 🤔 Es kann schon verdächtig wirken, wenn eine E-Mail mit dem Text „Hallo!“ mehrere Kilobytes gross ist…
Fülle die Tabelle aus. Versuche in Worte zu fassen, wie sich die Kryptographie und die Steganographie voneinander unterscheiden.
Bob empfängt von Alice folgende Nachricht: "Der Strauss ist sicher auf seinem Planeten gelandet." Bob zählt die Buchstaben aller Wörter der Nachricht und erhält dadurch den Code für ein geheimes Schliessfach: 3 7 3 6 3 6 8 8. Handelt es sich hierbei um ein Verfahren der Steganografie oder Kryptografie? Erkläre warum.
Führe das Verfahren der versteckten Bilder für den RGB-Wert eines Pixels durch. Zwei Bits des "geheimen Bildes" sollte im "Trägerbild" versteckt werden. Erzeuge danach das "rekonstruierte Bild" aus dem zusammengesetzten Bild. Fülle dazu jeweils die Farben mit 011111 auf.
Geheimes Bild 10101111 11011001 01011110
Trägerbild 10000001 10010101 11111101
zusammengesetztes Bild ?
rekonstruiertes Bild ?
Alice, Bob und Charlie möchten sich verschlüsselte Nachrichten schicken.
Bob möchte an Alice eine verschlüsselte Nachricht mit dem symmetrsichen vErfahren schicken. Mit welchem Schlüsssel verschlüsselt Bob die Nachricht?
Alice möchte an Bob eine verschlüsselte Nachricht mit einem Public Key Verfahren schicken. Mit welchem Schlüssel entschlüsselt Bob die Nachricht?
Alice möchte Bob eine verschlüsselte Nachricht verschicken. Es wird ein Public Key Verfahren verwendet. Dummerweise verschlüsselt Alice die Nachricht mit ihrem eigenne öffentlichen Schlüssel. Welchen Schlüssel hätte sie verwenden sollen? Was ist jetzt das Problem und wieso? Ist die Nachricht für einen Angreifer entschlüsselbar? Begründe.
Beschreibe die Funktionsweise einer Cäsar-Verschlüsselung. Wie viele unterschiedliche Schlüssel gibt es?
Steganographie. Die Nachricht ist nur versteckt, jedoch nicht verschlüsselt. Kenntnis über das Verfahren reicht und dann ist es nicht mehr sicher.
ZB: 10000010,10010111,11111101, RB: 10011111,11011111,01011111
3.1. Gemeinsamer Schlüssel von Alice und Bob
3.2. Privater Schlüssel von Bob
4. Sie hätte den public key von Bob verwenden sollen. Das Problem ist, dass niemand den privaten Schlüssel kennt und somit kann Bob die Nachricht nicht entschlüsseln. Die Nachricht ist für einen Angreifer nicht entschlüsselbar. Der ist chancenlos.
5. Cäsar-Verschlüsslung ist ein monoalphabetisches Verschlüsselungsverfahren. Bei der monoalphabetischen Substitution wird ein festes Geheimalphabet verwendet um den geheimen Klartext in Geheimtext zu verschlüsseln. Man nennt sie Verschiebechiffre, weil man die Buchstaben verschiebt und nicht vermischt. Sie ist eine Botschaftsart in der Kryptografie. Man ersetzt ein Zeichen des Klartextes durch Zeichen aus einem Geheim-Alphabet. Das Ersetzen nennt man Substituieren, daher kommt der Name Substitutionsverfahren. Es gibt 25 verschiedenen Schlüssel.