Skip to content

Tool that hides data in an image using LSB of colour pixels and cryptographycally secure pseudo-random number generator to generate coordinates of pixels to use.

License

Notifications You must be signed in to change notification settings

Faeris95/SteganoPy3

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
 
 
 
 
 
 
 
 

Repository files navigation

SteganoPy License

Sébastien ROLLAND - Faeris95

SteganoPy3 hides data such as text in an image using LSB and cryptographycally secure pseudo-random number generator to determine the coordinates of pixels to use.

How it works

SteganoPy3 replaces LSB of each colour component of each pixels with a bit of data to hide until all bits are hidden. 32 first bits are used to write the total length to recover so it can hide a maximum of X * Y * 3 - 32 bits with X and Y the pixels width and length of the image.

Cryptography

The key used as seed is derivated with 1M iterations of PBKDF2 with HMAC and SHA-256. ChaCha20 with 8 bytes nonce encrypts a counter which is used as PRNG.

Installation of needed libraries

python3 -m pip install --user -r requirements.txt

Running

Works with PNG images only !

To hide :

steganoPy.py hide <image.png> <data.file> <password> [-o <image_with_data.png>]

To recover data:

steganoPy.py show <image_with_data.png> <password> [-o <data.file>]

To Do

Add possibility to encrypt data before hiding it

About

Tool that hides data in an image using LSB of colour pixels and cryptographycally secure pseudo-random number generator to generate coordinates of pixels to use.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages