User Tools

Site Tools


security:steganography

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
security:steganography [2011/12/29 02:37] cedricsecurity:steganography [2021/06/27 00:36] (current) cedric
Line 1: Line 1:
 +====== Installation of Stegano ======
 +
 +For the examples you need to install Stegano.
 +
 +<code bash>
 +sudo pip install Stegano
 +</code>
 +
 +You can read the [[http://stegano.readthedocs.io | documentation of Stegano]] (included in the sources).
 +
 +
 ====== Steganography ====== ====== Steganography ======
 +
 Steganography is the art and science of writing hidden messages. Steganography is the art and science of writing hidden messages.
  
Line 10: Line 22:
 We will dive into digital steganography. We will dive into digital steganography.
  
-The folowing sections will present some techniques of digital steganography.+The following sections will present some techniques of digital steganography.
  
 ===== Simple steganography art ===== ===== Simple steganography art =====
  
-In computer scinece a well known method of hiding data (message) is to concatenate these data to an archive.+In computer science a well known method of hiding data (message) is to concatenate these data to an archive.
 For example, if I want to hide a text file in a music file: For example, if I want to hide a text file in a music file:
  
Line 116: Line 128:
 </code> </code>
  
-This is a very simple example showing how to hide a string in an image with the LSB method. Have a look in the [[http://bitbucket.org/cedricbonhomme/stegano/src/tip/lsb-s.py | source code of Stéganô]] to find more details.+This is a very simple example showing how to hide a string in an image with the LSB method.
  
 ====== Steganalysis ====== ====== Steganalysis ======
Line 135: Line 147:
  
 ===== Steganalysis of the LSB method with sets ===== ===== Steganalysis of the LSB method with sets =====
-We will hide a message in a picture with the simple LSB method and with the LSP method + sets.+You must [[security:steganography#installation_of_stegano|install Stegano]] before running these commands. 
 + 
 +First, we will hide a message in a picture with the simple LSB method and with the LSB method + sets.
  
 <code bash> <code bash>
-python ./slsb-gen.py --hide -i ../examples/pictures/Montenach.png -o ./Montenach-enc-gen.png --generator eratosthenes -f ../examples/lorem_ipsum.txt +cd stegano 
-python ./slsb.py --hide -i ../examples/pictures/Montenach.png -o ./Montenach-enc.png  -f ../examples/lorem_ipsum.txt+ 
 +# LSB with The Eratosthenes set 
 +slsb-set --hide -i ./examples/pictures/Montenach.png -o ~/Montenach-enc-gen.png --generator eratosthenes -f ./examples/lorem_ipsum.txt 
 + 
 +# LSB only 
 +$ slsb --hide -i ./examples/pictures/Montenach.png -o ~/Montenach-enc.png  -f ../examples/lorem_ipsum.txt
 </code> </code>
  
-The following will generate the corresponding steganalysed pictures:+The selected generator //Sieve of Eratosthenes// (''--generator eratosthenes'') will generate the set of points. This set of points will be used in order to select the pixels where the informations will be hidden. 
 + 
 +The following will generate the corresponding steganalysed pictures (left column):
 <code bash> <code bash>
 # Steganalysis of the original image # Steganalysis of the original image
-python steganalysis-parity.py -i ../examples/pictures/Montenach.png -o ./Montenach-steg.png +$ steganalysis-parity -i ../examples/pictures/Montenach.png -o ~/Montenach-steg.png 
  
 # Steganalysis of the image with hidden text (LSB only) # Steganalysis of the image with hidden text (LSB only)
-python steganalysis-parity.py -i ./Montenach-enc.png -o ./Montenach-enc-steg.png +$ steganalysis-parity -i ~/Montenach-enc.png -o ~/Montenach-enc-steg.png 
  
 # Steganalysis of the image with hidden text (LSB + Eratosthenes) # Steganalysis of the image with hidden text (LSB + Eratosthenes)
-python steganalysis-parity.py -i ./Montenach-enc-gen.png -o ./Montenach-enc-gen-steg.png +$ steganalysis-parity -i ~/Montenach-enc-gen.png -o ~/Montenach-enc-gen-steg.png 
 </code> </code>
  
  
 {{:security:montenach.png?700*500|Original image}} {{:security:montenach.png?700*500|Original image}}
-{{ :security:montenach-steg.png?700*500|Steganalysis of the original image}}+{{ :security:montenach-steg.png?700*500|(1) Steganalysis of the original image}}
  
  
 {{:security:montenach-enc.png?700*500|Image with hidden text  (LSB only)}} {{:security:montenach-enc.png?700*500|Image with hidden text  (LSB only)}}
-{{ :security:Montenach-enc-steg.png?700*500|Steganalysis of the image with hidden text (LSB only)}}+{{ :security:Montenach-enc-steg.png?700*500|(2) Steganalysis of the image with hidden text (LSB only)}}
  
 {{:security:montenach-enc-gen.png?700*500|Image with hidden text  (LSB + Eratosthenes)}} {{:security:montenach-enc-gen.png?700*500|Image with hidden text  (LSB + Eratosthenes)}}
-{{ :security:montenach-enc-gen-steg.png?700*500|Steganalysis of the image with hidden text (LSB + Eratosthenes)}}+{{ :security:montenach-enc-gen-steg.png?700*500|(3) Steganalysis of the image with hidden text (LSB + Eratosthenes)}}
  
 +
 +Compare the pictures 1 and  2 and compare the pictures 1 and 3, left column.
  
 ==== Reveal the message ==== ==== Reveal the message ====
 <code bash> <code bash>
-python ./slsb-gen.py --reveal --generator eratosthenes -i ./Montenach-enc-gen.png -b file-gen.txt +$ slsb-set --reveal --generator eratosthenes -i ~/Montenach-enc-gen.png -b ~/file-gen.txt 
-python ./slsb.py --reveal  -i ./Montenach-enc.png -b file.txt +$ slsb --reveal  -i ~/Montenach-enc.png -b ~/file.txt 
-$ cmp file-gen.txt file.txt  +$ cmp ~/file-gen.txt ~/file.txt  
-$ cat file.txt +$ cat ~/file.txt 
 Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nam placerat fermentum Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nam placerat fermentum
 lorem, at porttitor metus congue eu. Mauris vitae tell lorem, at porttitor metus congue eu. Mauris vitae tell
Line 177: Line 200:
 . .
 . .
 +$ slsb-set --reveal --generator fermat -i ~/Montenach-enc-gen.png -b ~/file.txt
 +Impossible to detect message.
 +
 +$ slsb-set --reveal --generator mersenne -i ~/Montenach-enc-gen.png -b ~/file.txt
 +Impossible to detect message.
 </code> </code>
  
security/steganography.1325122622.txt.gz · Last modified: 2011/12/29 02:37 by cedric