Steganography is the practice of hiding or concealing secret messages in such a way that even the existence of those messages is kept secret. Though widespread in antiquity, the idea is still very applicable in a modern age where people may want to maintain complete confidentiality and privacy over their communications.

What it does

StegoChat is a simple chat application which allows its users to chat in the clear or covertly with messages hidden steganographically within images.

How we built it

We devised a simple steganographic message hiding scheme within images that provides a loose baseline of secrecy. We then implemented this scheme as a front-end javascript library and then incorporated it as a component to a simple chat application.

Challenges we ran into

Our method of steganography involves fine-level bit manipulation--something which is not one of Javascript's strengths. We additionally ran into some initial hitches in the way of unexpected behavior of the Flask debug server, but we resolved this by relying on a production WSGI holder.

Accomplishments that we're proud of

We were able to completely implement a primitive version image-based steganography in a high-level language.

What we learned

Steganography is very much alive, interesting, and useful.

What's next for StegoChat

We can improve our method of steganography for its use case. Namely, we can provide a greater guarantee of indistinguishability from generic images by making use of a combination of other cryptographic primitives and unused bits of information present in images.

Share this project: