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/11/21 12:27] – [Steganalysis of the LSB method] 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 132: Line 144:
  
 This technique simply consist to replace odd components by 255 and even number by 0. This means that the pixel (132, 247, 123) become (0, 255, 255). This technique simply consist to replace odd components by 255 and even number by 0. This means that the pixel (132, 247, 123) become (0, 255, 255).
 +
 +
 +===== Steganalysis of the LSB method with 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>
 +$ cd stegano
 +
 +# 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>
 +
 +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>
 +# Steganalysis of the original image
 +$ steganalysis-parity -i ../examples/pictures/Montenach.png -o ~/Montenach-steg.png 
 +
 +# Steganalysis of the image with hidden text (LSB only)
 +$ steganalysis-parity -i ~/Montenach-enc.png -o ~/Montenach-enc-steg.png 
 +
 +# Steganalysis of the image with hidden text (LSB + Eratosthenes)
 +$ steganalysis-parity -i ~/Montenach-enc-gen.png -o ~/Montenach-enc-gen-steg.png 
 +</code>
 +
 +
 +{{:security:montenach.png?700*500|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-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-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 ====
 +<code bash>
 +$ slsb-set --reveal --generator eratosthenes -i ~/Montenach-enc-gen.png -b ~/file-gen.txt
 +$ slsb --reveal  -i ~/Montenach-enc.png -b ~/file.txt
 +$ cmp ~/file-gen.txt ~/file.txt 
 +$ cat ~/file.txt 
 +Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nam placerat fermentum
 +lorem, at porttitor metus congue eu. Mauris vitae tell
 +.
 +.
 +.
 +$ 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>
 +
 +
 +
 +
 ====== Bibliography ====== ====== Bibliography ======
  
security/steganography.txt · Last modified: 2021/06/27 00:36 by cedric