Ich glaube, was Sie suchen, ist Steganographie , eine Möglichkeit, eine Nachricht in ansonsten unschuldig aussehenden Inhalten zu verbergen.
Unter Linux scheint es dafür keine Fülle von Tools zu geben, aber Outguess 1 und Steghide 2 würden tun, was Sie wollen. openstego ist eine andere (mit einer Befehlszeilenschnittstelle).
Beispiel mit outguess
: Ich habe den Text Ihrer Frage kopiert / eingefügt in Q.txt
:
$ ../src/outguess/outguess -k 'Unix&Linux' -d Q.txt Tux.jpg Tux_steg.jpg
Reading Tux.jpg....
JPEG compression quality set to 75
Extracting usable bits: 10126 bits
Correctable message size: 5008 bits, 49.46%
Encoded 'Q.txt': 4592 bits, 574 bytes
Finding best embedding...
0: 2274(49.2%)[49.5%], bias 2008(0.88), saved: 2, total: 22.46%
3: 2269(49.1%)[49.4%], bias 2007(0.88), saved: 3, total: 22.41%
13: 2268(49.0%)[49.4%], bias 1977(0.87), saved: 3, total: 22.40%
62: 2237(48.4%)[48.7%], bias 1992(0.89), saved: 7, total: 22.09%
78: 2216(47.9%)[48.3%], bias 1964(0.89), saved: 10, total: 21.88%
78, 4180: Embedding data: 4592 in 10126
Bits embedded: 4624, changed: 2216(47.9%)[48.3%], bias: 1964, tot: 10119, skip: 5495
Foiling statistics: corrections: 1437, failed: 746, offset: 198.494881 +- 300.529142
Total bits changed: 4180 (change 2216 + bias 1964)
Storing bitmap into data...
Writing Tux_steg.jpg....
$ ../src/outguess/outguess -k 'Unix&Linux' -r Tux_steg.jpg out.txt
Reading Tux_steg.jpg....
Extracting usable bits: 10126 bits
Steg retrieve: seed: 78, len: 574
$ diff out.txt Q.txt
$ echo $?
0
Quellbild (von Tux.svg ):
Bild mit Ihrer darin versteckten Frage:
Die Bilder sind unterschiedlich, wenn Sie genau hinschauen, aber es ist ziemlich so, als ob das zweite mit einer höheren JPEG-Komprimierungsstufe erzeugt worden wäre. Die Tatsache, dass der vollständige Text Ihrer Frage eingemischt (und passwortgeschützt) ist, ist visuell überhaupt nicht erkennbar.
Je kleiner die versteckte Nachricht ist, desto weniger visuell unterschiedlich sind die Bilder. (Ich kann visuell nicht zwischen dem Original und einer Datei mit eingebettetem "Copyright YOU 2012" unterscheiden.)
1 alt, aber gut gebaut.
2 wird nicht mit einem modernen C ++ - Compiler erstellt, es sind einige Quellkorrekturen erforderlich.