3 releases
0.1.2 | Mar 23, 2020 |
---|---|
0.1.1 | Mar 23, 2020 |
0.1.0 | Mar 23, 2020 |
#760 in Math
245KB
574 lines
PISS
PISS (Picture Secret Steganography) is a command line tool to encode/decode secrets into/from image files using LSB steganography.
Run piss --help
for usage.
Installation
cargo install piss
Usage examples:
Encode a secret into an image
piss encode samples/the-matrix.jpg samples/secret.txt samples/the-matrix-reloaded.png
Original image:
Image with secret:
Recover secret from image:
piss decode samples/the-matrix-reloaded.png samples/secret-reloaded.txt
Miscelaneous
By default, PISS uses 2 bits per image byte to encode the secret, you can change this value if desired:
piss -b 4 encode samples/the-matrix.jpg samples/secret.txt samples/the-matrix-reloaded.png
Just remember to decode using the same number of bits, otherwise the output will be garbage:
piss -b 4 decode samples/the-matrix-reloaded.png samples/secret-reloaded.txt
Important note
It is not recommended to encode secrets and save the output as .jpg
as compression is performed and the secret is lost.
Features
Supports from 1 to 8 bits secret encoding
The user can specify the number of bits of the secret to use per image byte
Change between image formats
It is possible to convert the image format during encoding, just set a different extension for the output.
Contributing
If you find a vulnerability, bug or would like a new feature, open a new issue.
To introduce your changes into the codebase, submit a Pull Request.
Many thanks!
License
PISS is distributed under the terms of both the MIT license and the Apache License (Version 2.0).
See LICENSE-APACHE and LICENSE-MIT, and COPYRIGHT for details.
Dependencies
~16MB
~107K SLoC