Does this project spark your interest?

Become a member to follow this project and don't miss any updates

Bury it under the noise floor

Here is discussed a PHP class to hide encrypted messages and files inside of images without significantly changing the way the image looks.

Similar projects worth following

This project was created on 07/22/2014 and last updated 11 days ago.

This is meant to be an instructional write-up to touch on some common ideas and mechanisms in cryptography, and leverage them to make a reasonable steganographic program.

Full documentation and a usable demo page are at the link to my blog.

  • AES-256 encrypted with optional BZ2 compression.
  • Multi-round password hashing to derive key material from passwords.
  • No predictable patterns to search for. Offset is derived from the password, and the stride between pixels is arhythmic, with a seed value derived from the password.
  • Each color is treated as a discrete channel, with messages able to span channels. This allows up to three independent messages to be overlaid on the same carrier, or one message can occupy multiple channels.
  • Option for automatic re-scaling of the carrier image to minimize waste.
  • All relevant parameters are derived from the key, or stored as discrete bits, allowing for simple decoding. Just supply a carrier image and a correct password.
  • MD5 integrity verification.
  • File storage and retrieval
  • Built-in trivial logging faculty.

Project logs
  • Changed the license

    11/19/2015 at 19:16 0 comments

    In light of recent idiocy in government threatening to attack encryption, I changed the license to the most permissive license I could find.

    I will not ration bullets in a war. Fork it. Mutate it. Re-purpose it. Learn from it. Make government impossible.

View project log

Enjoy this project?

Josh Lindsay wrote 10/26/2015 at 09:21 point

Ha! My test fixture was inoperable since I moved my hosting. It has been fixed.

Are you sure? yes | no

Josh Lindsay wrote 07/22/2014 at 22:32 point
Wow.... This was published to hack-a-day about 1.4 years ago, and a similar thing happened. It got trashed in the comments, but it is my most popular github repo to this day.

I wrote this class on an impulse over the course of a few days. Glad so many people like it. :-)
Thanks, everyone.

Are you sure? yes | no

Similar projects