Using Steganography and Cryptography to Bypass Censorship in Third World Countries

September 25, 2015 | Views: 4105

Begin Learning Cyber Security for FREE Now!

FREE REGISTRATIONAlready a Member Login Here

Hello – Today I’ll be providing a set-by-step guide to Steganography and its crypto. We’ll look at its uses in third world countries and oppressive regimes that have complete control over the Net, including Cuba, Venezuela, North Korea, China, Syria etc.

Oppressive systems are known to shut down secure ways of communicating, especially for activists and those who do not agree with these powerful groups. By using Steganography, we have an alternative way of communicating messages in an encrypted format that hides in plain sight. This makes it almost impossible for oppressors to combat it.


A Brief Overview of Steganography:

“Steganography is the practice of concealing a file, message, image, or video within another file, message, image, or video. The word steganography combines the Greek words steganos, meaning “covered, concealed, or protected”, and graphein meaning “writing”.”


We’ll Cover:

>Image Creation

>Message Creation

>Message Encryption into Image

>Message Decryption From Image


The Required Software:

(1) A Linux distribution

(2) Gimp Image Editor: sudo apt-get install gimp

(2) Steghide : sudo apt-get install steghide

Steghide is a Steganography program that’s able to hide data in various kinds of images and audio files. The color -respectively, sample -frequencies are not changed. Thus, making the embedding resistant against first-order statistical tests.


Once you’ve installed steghide into your Linux Distro, we’ll want to start by opening a Terminal.

After that, you want to change to a directory where we can save files, for example your /Documents/.

cd /Documents/

Now in the /Documents/ directory, we want to create the message we want to Encrypt into an Image. We can do this by imputing the following:

nano message.txt

Write a small test message in the nano editor. Once finished, hit CTR+O and Enter to save and CTR+X to close.

The Next step is to create the image that we’ll use to hide our encrypted message inside. To do this, we open the Gimp Image Editor.

Once opened, we want to click File>New > Advanced options and delete the Gimp Comment finally click >Ok.

Now, from somewhere in your system, pick an image to drag and drop it into your Gimp project. After that’s done, once again click >FIle> Export As. Export the image to your /Documents/ directory in the .jpg format. I named mine image.jpg

The following step is to embed the file message.txt with our encrypted message into the image we just created in Gimp image.jpg. To do this, we run the following command in the Terminal:

steghide embed -cf image.jpg -ef message.txt

You’ll receive the following options:

-Enter Password: PasswordToDecryptMessage

-Re-Enter Password:PasswordToDecryptMessage

After hitting Enter, if it all went well, the output should be: “embedding “message.txt” in “image.jpg”… done”

You can now open the image to notice that nothing seems different, you can e-mail it, put it on a USB, send it to someone, and the message will stay hidden inside it – until the intended recipient revives it and attempts to open the message with the passphrase set in the embedding process.

To extract embedded message.txt from image.jpg, we input the following in the Terminal:

steghide extract -sf image.jpg

>Enter Passphrase: DecryptionPASSWORD > Hit Enter:

If all goes well, the the output should be: “wrote extracted data to “message.txt”.”

You can now open message.txt to view the hidden message.


Remember, Steganography and cryptography are strongest when combined. A message sent in secret (steganography) in an encrypted form (cryptography) is much more secure than a “plain text” message sent by secret means or a clearly sent encrypted message. There are some cases in which Steganography can take the place of cryptography. For example, German bans on encrypting radio communications were recently countered by applying Steganography to radio communications [Westfeld06]. Generally, however, Steganography is not intended to replace cryptography but supplement it” [Johnson95].”

I hope this information was useful to some. Thank you 🙂

Share with Friends
Use Cybytes and
Tip the Author!
Share with Friends
Ready to share your knowledge and expertise?
  1. this is wonderful however is there a way to decrypt it without the linux distro,maybe with other operating systems?.

  2. perfect artical. moths ago i was planed doing my research as combination of steganography and that session i enthusiastic with particular subject.when i saw this artical i got understood how its my point of view video stegnpgraphy is more powerfull than image stegnography. image are static object but video is a series of images so we can get advantage in couple of side with video stegnpgraphy. 1. Hide more information than image(because collection of image) 2. image transformation(because not static images) .think it.. 🙂

Page 3 of 3«123
Comment on This

You must be logged in to post a comment.

Our Revolution

We believe Cyber Security training should be free, for everyone, FOREVER. Everyone, everywhere, deserves the OPPORTUNITY to learn, begin and grow a career in this fascinating field. Therefore, Cybrary is a free community where people, companies and training come together to give everyone the ability to collaborate in an open source way that is revolutionizing the cyber security educational experience.

Support Cybrary

Donate Here to Get This Month's Donor Badge


We recommend always using caution when following any link

Are you sure you want to continue?