Dateiverschlüsselung

Mi, 22. Juni 2021, Ralf Hersel

Der einfachste Ansatz, um eine Datei zu verschlüsseln, ist die Verwendung des Werkzeugs gpg. Falls es weniger auffällig sein soll, kann man auch steganografische Verfahren einsetzen. Wörtlich übersetzt bedeutet Steganografie 'verdeckt schreiben'. Dabei wird eine Botschaft in einem Trägermedium versteckt.

Angenommen wir haben eine normale Textdatei names 'text.txt' mit dem Inhalt: 'Das ist ein Geheimnis'. Dann lässt sich die Datei mit gpg -c folgendermassen verschlüsseln:

ralf@ralf-VirtualBox:~/delme$ cat text.txt 
Das ist ein Geheimnis
ralf@ralf-VirtualBox:~/delme$ gpg -c text.txt
ralf@ralf-VirtualBox:~/delme$ ll
-rw-r--r--  1 ralf ralf   22 Jun 23 10:13 text.txt
-rw-rw-r--  1 ralf ralf  100 Jun 23 10:14 text.txt.gpg
ralf@ralf-VirtualBox:~/delme$ cat text.txt.gpg 

�q\6�W��Y6��Aea�ϻO؅��*�JD����

                 Oi2��뫗L�g^��5�)������?�������}���

                                                   ��#�
ralf@ralf-VirtualBox:~/delme$

Dumm nur, dass man der Datei text.txt.gpg sofort ansieht, dass sie einen verschlüsselten Inhalt enthält. An dieser Stelle kommt die Steganografie ins Spiel.

Der bekannteste steganografische Ansatz ist, den Text in einer Bilddatei zu verstecken. Man kann aber auch eine beliebige andere Multimedia-Datei verwenden. Ein freies Werkzeug dafür nennt sich OpenStego und kann von Github heruntergeladen werden. Die Installation der deb-Datei geht so: sudo dpkg -i openstego_0.8.0-1_all.deb. Das Programm kann über eine GUI oder im Terminal bedient werden.

Man wählt die Textdatei, das Bild und den Namen des zu erstellenden Geheimbildes. Ausserdem kann ein Verschlüsselungsalgorithmus ausgewählt werden. Danach erhält man eine modifizierte Bilddatei, die optisch nicht vom Original zu unterscheiden ist. Beim Titelbild dieses Artikels handelt es sich um ein solches Geheimbild. Darin verborgen ist die Formel, wie man Eisen in Gold umwandelt :) Wer sich dafür interessiert, wie ein Text als Bildrauschen in das Geheimbild eingebracht werden kann, findet hier weitere Informationen.

Eine andere Möglichkeit besteht darin, einen Geheimtext in einem anderen Text zu verstecken. Ein Werkzeug für diese Methode ist zum Beispiel StegSnow. Das Programm kann mittels sudo apt install stegsnow installiert werden. Hier ein Anwendungsbeispiel. Wie vorhin, enthält die Datei 'text.txt' das Geheimnis. 'traegertext.txt' ist ein Gedicht, in das das Geheimnis eingebettet werden soll. Nach der Anwendung des stegsnow Befehls, erhalten wir die Datei 'ergebnis.txt'.

ralf@ralf-VirtualBox:~/delme$ cat traegertext.txt 
Am Himmel, schwarze Wolken,
es donnert, es donnert durchaus.
Ich glaube, wir sollten, wir sollten
schnell zurück ins Haus.

Erste Lichter zucken durch die Luft,
es blitzt, es blitzt durchaus.
Es zieht ein Duft, ein Regenduft
durch unser Gartenhaus.

Der Juni hat sich etwas vorgenommen,
es regnet, es regnet durchaus.
Doch nach dem Regen kommen,
kommen wieder Sonnenstrahlen heraus.

ralf@ralf-VirtualBox:~/delme$ stegsnow -f text.txt traegertext.txt ergebnis.txt
Message used approximately 63.08% of available space.
ralf@ralf-VirtualBox:~/delme$ cat ergebnis.txt 
Am Himmel, schwarze Wolken,                              
es donnert, es donnert durchaus.                               
Ich glaube, wir sollten, wir sollten                                     
schnell zurück ins Haus.                                      

Erste Lichter zucken durch die Luft,                                  
es blitzt, es blitzt durchaus.                               
Es zieht ein Duft, ein Regenduft                                 
durch unser Gartenhaus.                              

Der Juni hat sich etwas vorgenommen,
es regnet, es regnet durchaus.
Doch nach dem Regen kommen,
kommen wieder Sonnenstrahlen heraus.

Wie man sieht, erscheint der Inhalt von 'ergebnis.txt' derselbe zu sein wie von 'traegertext.txt'. Darin enthalten ist jedoch das Geheimnis aus der Datei 'text.txt'. Wer wissen möchte, wie das gemacht wird, kann die Datei 'ergebnis.txt' in LibreOffice öffnen und dort die Weisszeichen einschalten:

Ganz nett, aber nicht besonders sicher.