From Wikipedia, the free encyclopedia

Jump to: navigation, search
Hidden messages

Subliminal messages

See also:

Steganography is the art and science of writing hidden messages in such a way that no-one, apart from the sender and intended recipient, suspects the existence of the message, a form of security through obscurity. The word steganography is of Greek origin and means "concealed writing". The first recorded use of the term was in 1499 by Johannes Trithemius in his Steganographia, a treatise on cryptography and steganography disguised as a book on magic. Generally, messages will appear to be something else: images, articles, shopping lists, or some other covertext and, classically, the hidden message may be in invisible ink between the visible lines of a private letter.

The advantage of steganography, over cryptography alone, is that messages do not attract attention to themselves. Plainly visible encrypted messages—no matter how unbreakable—will arouse suspicion, and may in themselves be incriminating in countries where encryption is illegal.[1] Therefore, whereas cryptography protects the contents of a message, steganography can be said to protect both messages and communicating parties.

Steganography includes the concealment of information within computer files. In digital steganography, electronic communications may include steganographic coding inside of a transport layer, such as a document file, image file, program or protocol. Media files are ideal for steganographic transmission because of their large size. As a simple example, a sender might start with an innocuous image file and adjust the color of every 100th pixel to correspond to a letter in the alphabet, a change so subtle that someone not specifically looking for it is unlikely to notice it.


[edit] Ancient steganography

The first recorded uses of steganography can be traced back to 440 BC when Herodotus mentions two examples of steganography in The Histories of Herodotus.[2] Demaratus sent a warning about a forthcoming attack to Greece by writing it directly on the wooden backing of a wax tablet before applying its beeswax surface. Wax tablets were in common use then as re-usable writing surfaces, sometimes used for shorthand. Another ancient example is that of Histiaeus, who shaved the head of his most trusted slave and tattooed a message on it. After his hair had grown the message was hidden. The purpose was to instigate a revolt against the Persians.

[edit] Steganographic techniques

[edit] Physical steganography

Steganography has been widely used including recent historical times and the present day. Possible permutations are endless and known examples include:

Steganart example. Within this picture, the letters position of an hidden message are represented by increasing numbers (1 to 20), and a letter value is given by its intersection position in the grid. For instance, the first letter of the hidden message is at the intersection of 1 and 4. So, after a few tries, the first letter of the message seems to be the 14th letter of the alphabet; the last one (number 20) is the 5th letter of the alphabet.
  • Hidden messages within wax tablets: in ancient Greece, people wrote messages on the wood, then covered it with wax upon which an innocent covering message was written.
  • Hidden messages on messenger's body: also in ancient Greece. Herodotus tells the story of a message tattooed on a slave's shaved head, hidden by the growth of his hair, and exposed by shaving his head again. The message allegedly carried a warning to Greece about Persian invasion plans. This method has obvious drawbacks such as delayed transmission while waiting for the slave's hair to grow, and its one-off use since additional messages requires additional slaves. In WWII, the French Resistance sent some messages written on the backs of couriers using invisible ink.
  • Hidden messages on paper written in secret inks, under other messages or on the blank parts of other messages.
  • Messages written in morse code on knitting yarn and then knitted into a piece of clothing worn by a courier.
  • Messages written on the back of postage stamps.
  • During and after World War II, espionage agents used photographically produced microdots to send information back and forth. Microdots were typically minute, about or less than the size of the period produced by a typewriter. WWII microdots needed to be embedded in the paper and covered with an adhesive (such as collodion). This was reflective and thus detectable by viewing against glancing light. Alternative techniques included inserting microdots into slits cut into the edge of post cards.
  • During World War II, a spy for the Japanese in New York City, Velvalee Dickinson, sent information to accommodation addresses in neutral South America. She was a dealer in dolls, and her letters discussed how many of this or that doll to ship. The stegotext was the doll orders, the concealed 'plaintext' was itself encoded and gave information about ship movements, etc. Her case became somewhat famous and she became known as the Doll Woman.
  • Cold War counter-propaganda. During 1968, crew members of the USS Pueblo (AGER-2) intelligence ship held as prisoners by North Korea, communicated in sign language during staged photo opportunities, informing the United States they were not defectors but rather were being held captured by the North Koreans. In other photos presented to the US, crew members gave "the finger" to the unsuspecting North Koreans, in an attempt to discredit photos that showed them smiling and comfortable.[3]

[edit] Digital steganography

Modern steganography entered the world in 1985 with the advent of the personal computer applied to classical steganography problems. [4] Development following that was slow, but has since taken off, going by the number of 'stego' programs available: Over 725 digital steganography applications have been identified by the Steganography Analysis and Research Center. [5] Digital steganography techniques include:

Image of a tree. By removing all but the last 2 bits of each color component, an almost completely black image results. Making the resulting image 85 times brighter results in the image below.
Image extracted from above image.
  • Concealing messages within the lowest bits of noisy images or sound files.
  • Concealing data within encrypted data. The data to be concealed is first encrypted before being used to overwrite part of a much larger block of encrypted data.
  • Chaffing and winnowing.
  • Mimic functions convert one file to have the statistical profile of another. This can thwart statistical methods that help brute-force attacks identify the right solution in a ciphertext-only attack.
  • Concealed messages in tampered executable files, exploiting redundancy in the i386 instruction set.
  • Pictures embedded in video material (optionally played at slower or faster speed).
  • Injecting imperceptible delays to packets sent over the network from the keyboard. Delays in keypresses in some applications (telnet or remote desktop software) can mean a delay in packets, and the delays in the packets can be used to encode data.
  • Content-Aware Steganography hides information in the semantics a human user assigns to a datagram. These systems offer security against a non-human adversary/warden.
  • Blog-Steganography. Messages are fractionalyzed and the (encrypted) pieces are added as comments of orphaned web-logs (or pin boards on social network platforms). In this case the selection of blogs is the symmetric key that sender and recipient are using; the carrier of the hidden message is the whole blogosphere.

[edit] Printed stenography

Digital stenography output may be in the form of printed documents. A message, the plaintext, may be first encrypted by traditional means, producing a ciphertext. Then, an innocuous covertext is modified in some way to as to contain the ciphertext, resulting in the stegotext. For example, the letter size, spacing, typeface, or other characteristics of a covertext can be manipulated to carry the hidden message. Only a recipient who knows the technique used can recover the message and then decrypt it. Francis Bacon developed Bacon's cipher as such a technique.

[edit] Additional terminology

In general, terminology analogous to (and consistent with) more conventional radio and communications technology is used; however, a brief description of some terms which show up in software specifically, and are easily confused, is appropriate. These are most relevant to digital steganographic systems.

The payload is the data it is desirable to transport (and, therefore, to hide). The carrier is the signal, stream, or data file into which the payload is hidden; contrast "channel" (typically used to refer to the type of input, such as "a JPEG image"). The resulting signal, stream, or data file which has the payload encoded into it is sometimes referred to as the package, stego file, or covert message. The percentage of bytes, samples, or other signal elements which are modified to encode the payload is referred to as the encoding density and is typically expressed as a floating-point number between 0 and 1.

In a set of files, those files considered likely to contain a payload are called suspects. If the suspect was identified through some type of statistical analysis, it might be referred to as a candidate.

[edit] Countermeasures

Detection of physical steganography requires careful physical examination, including the use of magnification, developer chemicals and ultraviolet light. It is a time-consuming process with obvious resource implications, even in countries where large numbers of people are employed to spy on their fellow nationals. Targeted mail screening is however feasible in the case of certain suspected individuals or institutions, such as prisons or prisoner of war camps. During World War II, a technology used to ease monitoring of POW mail was specially treated paper that would reveal invisible ink. An article in the June 24, 1948 issue of Paper Trade Journal by the Technical Director of the United States Government Printing Office, Morris S. Kantrowitz, describes in general terms the development of this paper, three prototypes of which were named Sensicoat, Anilith, and Coatalith paper. These were for the manufacture of postal cards and stationery to be given to German prisoners of war in the U.S. and Canada. If POWs tried to write a hidden message the special paper would render it visible. At least two U.S. patents were granted related to this technology, one to Mr. Kantrowitz, No. 2,515,232, "Water-Detecting paper and Water-Detecting Coating Composition Therefor", patented July 18, 1950, and an earlier one, "Moisture-Sensitive Paper and the Manufacture Thereof," No. 2,445,586, patented July 20, 1948. A similar strategy is to issue prisoners with writing paper ruled with a water-soluble ink that 'runs' when in contact with a water-based invisible ink.

In computing, detection of steganographically encoded packages is called steganalysis. The simplest method to detect modified files, however, is to compare them to known originals. For example, to detect information being moved through the graphics on a website an analyst can maintain known-clean copies of these materials and compare them against the current contents of the site. The differences, assuming the carrier is the same, will compose the payload. In general, using extremely high compression rate makes steganography difficult, but not impossible. While compression errors provide a hiding place for data, high compression reduces the amount of data available to hide the payload in, raising the encoding density and facilitating easier detection (in the extreme case, even by casual observation).

[edit] Applications

[edit] Usage in modern printers

Steganography is used by some modern printers, including HP and Xerox brand color laser printers. Tiny yellow dots are added to each page. The dots are barely visible and contain encoded printer serial numbers, as well as date and time stamps.

[edit] Example from modern practice

The larger the cover message is (in data content terms—number of bits) relative to the hidden message, the easier it is to hide the latter. For this reason, digital pictures (which contain large amounts of data) are used to hide messages on the Internet and on other communication media. It is not clear how commonly this is actually done. For example: a 24-bit bitmap will have 8 bits representing each of the three color values (red, green, and blue) at each pixel. If we consider just the blue there will be 28 different values of blue. The difference between 11111111 and 11111110 in the value for blue intensity is likely to be undetectable by the human eye. Therefore, the least significant bit can be used (more or less undetectably) for something else other than color information. If we do it with the green and the red as well we can get one letter of ASCII text for every three pixels.

Stated somewhat more formally, the objective for making steganographic encoding difficult to detect is to ensure that the changes to the carrier (the original signal) due to the injection of the payload (the signal to covertly embed) are visually (and ideally, statistically) negligible; that is to say, the changes are indistinguishable from the noise floor of the carrier.

From an information theoretical point of view, this means that the channel must have more capacity than the 'surface' signal requires, that is, there must be redundancy. For a digital image, this may be noise from the imaging element; for digital audio, it may be noise from recording techniques or amplification equipment. In general, electronics that digitize an analog signal suffer from several noise sources such as thermal noise, flicker noise, and shot noise. This noise provides enough variation in the captured digital information that it can be exploited as a noise cover for hidden data. In addition, lossy compression schemes (such as JPEG) always introduce some error into the decompressed data; it is possible to exploit this for steganographic use as well.

Steganography can be used for digital watermarking, where a message (being simply an identifier) is hidden in an image so that its source can be tracked or verified.

In fact, not only picture files can host hidden information, but other file formats can also hide data such as audio files, text files, web pages[6] and many other file formats.

[edit] Alleged usage by terrorists

When one considers that messages could be encrypted steganographically in e-mail messages, particularly e-mail spam, the notion of junk e-mail takes on a whole new light. Coupled with the "chaffing and winnowing" technique, a sender could get messages out and cover their tracks all at once.

Rumors about terrorists using steganography started first in the daily newspaper USA Today on February 5, 2001 in two articles titled "Terrorist instructions hidden online" and "Terror groups hide behind Web encryption". In July of the same year, the information looked even more precise: "Militants wire Web with links to jihad". A citation from the USA Today article: "Lately, al-Qaeda operatives have been sending hundreds of encrypted messages that have been hidden in files on digital photographs on the auction site". These rumors were cited many times—without ever showing any actual proof—by other media worldwide, especially after the terrorist attack of 9/11. The Italian newspaper Corriere della Sera reported that an Al Qaeda cell which had been captured at the Via Quaranta mosque in Milan had pornographic images on their computers, and that these images had been used to hide secret messages (although no other Italian paper ever covered the story). The USA Today articles were written by veteran foreign correspondent Jack Kelley, who in 2004 was fired after allegations emerged that he had fabricated stories and invented sources.

In October 2001, the New York Times published an article claiming that al-Qaeda had used steganographic techniques to encode messages into images, and then transported these via e-mail and possibly via USENET to prepare and execute the September 11, 2001 Terrorist Attack. The Federal Plan for Cyber Security and Information Assurance Research and Development,[7] published in April 2006 makes the following statements:

  • "…immediate concerns also include the use of cyberspace for covert communications, particularly by terrorists but also by foreign intelligence services; espionage against sensitive but poorly defended data in government and industry systems; subversion by insiders, including vendors and contractors; criminal activity, primarily involving fraud and theft of financial or identity information, by hackers and organized crime groups…" (p 9–10)
  • "International interest in R&D for steganography technologies and their commercialization and application has exploded in recent years. These technologies pose a potential threat to national security. Because steganography secretly embeds additional, and nearly undetectable, information content in digital products, the potential for covert dissemination of malicious software, mobile code, or information is great." (p 41–42)
  • "The threat posed by steganography has been documented in numerous intelligence reports." (p 42)

Moreover, a captured terrorist training manual, the "Technical Mujahid, a Training Manual for Jihadis" contains a section entitled "Covert Communications and Hiding Secrets Inside Images." A brief summary is provided by the Jamestown Foundation.[8]

The above considered, there are no known instances of islamists actually using computer steganography. Islamist utilisation of steganography is somewhat simpler: In 2008 a British Muslim, Rangzieb Ahmed, was alleged to have a contact book with Al-Qaeda telephone numbers, written in invisible ink. He was convicted on terrorism charges.[9]

[edit] See also

[edit] Citations

[edit] References

[edit] Further reading

[edit] External links

[edit] Text hiding tools


  • mozaiq has a large library of stock photos it provides if you cannot supply a photo of your own. A good starting point for creating simple steganographic examples.
  • will take a sentence that you provide and turn it into text that looks like a spam message.
  • Hide text in a PNG or BMP image and its corresponding decoder.
  • Image Cipher takes some text and embeds it an a user-provided image by performing subtle color transformations on certain pixels


  • "Integer Binary Numbers" Freeware. Code and decode MsOffice or OpenOffice files in bmp file. You can secure your document with a password.
  • Concealar. The software "Concealar" hides text into images, protected by a password, using cryptographic and steganographic techniques. Encryption algorithm used for text is AES (Rijndael) and the password is hashed with SHA512. The software does not create any noise in the resultant image so pattern-finding & pixel-mapping techniques of steganalysis do not work on this software.
  • Bapuli Online—implementing steganography using Visual Basic.
  • BitCrypt is one of the easiest to use encryption tools which at the same time provide ultra-strong encryption. It uses up to 8192 long bit key ciphers to encrypt the text, and then stores the encrypted text within bitmap images.
  • Hackito Ergo Sum Blog Hide text in a PNG image and read it back. Includes open source code and a complete explanation of the process.

[edit] File hiding tools



  • Stego Archive. Source for a large variety of steganography software.
  • StegoShare A steganography software which may be used for anonymous file sharing.
  • Hiding Glyph: Bytewise Image Steganography. Freeware, which hides any file (or folder) into any losslessly compressed image (BMP, PNG, etc.).
  • ImageSpyer. A GUI tool which hides any file into any image, also known as StegoTC[1] plugin for Total Commander. LSB method, custom bitset, data encryption. Freeware.
  • "Integer Binary Numbers" Freeware. Codes and decodes MsOffice and OpenOffice files in bmp files. Document can be password secured.
  • BestCrypt, a commercial Windows/Linux disk encryption software that supports hiding one encrypted volume inside another.
  • Digital Invisible Ink Toolkit. An open-source cross-platform image steganography suite that includes both steganography and steganalysis implementations.
  • FreeOTFE Free, open-source Windows/PocketPC/Linux disk encryption software that supports hiding one encrypted volume inside another, without leaving evidence that the second encrypted volume exists. This probably resists any statistical analysis (as opposed to tools that conceal data within images or sound files, which is relatively easy to detect).
  • OpenStego. OpenStego is an opensource (GPL) program/library for embedding any type of file into images. Currently, it is written in Java, and supports 24 bpp images.
  • PCopy A steganography commandline tool with a userfriendly wizard which can produce lossless images like PNG and BMP. Special features are RLE, Huffman compression, strong XOR encryption and the Hive archiving format which enables the injection of entire directories.
  • Phonebook FS protects your disks with Deniable Encryption
  • Stego and Winstego. Steganography by justified plain text.
  • Stego-0.5, a GNOME/GTK+ based GUI for LSB algorithm. License (GPL)
  • Steghide Free .jpeg and .wav encryption for Linux and other operating systems.
  • SteGUI Free GUI for Steghide for Linux.
  • Thumbnail Steganography is a new type of steganography designed to increase the complexity required when attempting to automate steganography detection. It requires the original image (jpg, gif, etc) as well as the thumbnail (png) to extract the file from the thumbnail. It is open source and written in java.
  • Trojan. A new steganography software developed for the purpose of hiding data inside images. The source of the data can be various: text messages or binary files.
  • TrueCrypt. Free, open-source Windows/Linux disk encryption software that supports hiding one encrypted volume inside another, without leaving any evidence that the second encrypted volume exists. This probably resists any statistical analysis (as opposed to tools that conceal data within images or sound files, which is relatively easy to detect).
  • Peter Wayner's website—sample implementations of steganographic techniques, by the author of Disappearing Cryptography.
  • NetTools Steganography by hiding data in pictures, archives, sounds, text files, html, and lists.
  • Qtech Hide & View v.01. The newest BPCS-Steganography program for Windows. Image steganography. Free to use.
  • SteganoG. A simple program to hide a text file in a .bmp file.
  • Downloadable hideimage. Image hider, also available in a PHP Interface. No licensing at all.
  • Vecna. Hide any file in any image. Output is always PNG. Written in Java. GPL

[edit] Steganalysis tools

  • StegAlyzerAS. An automated tool to detect the presence of steganography applications by matching artifacts of known files and registry keys on suspect computer media.
  • Steganography Analysis and Research Center (SARC). A Backbone Security Center of Excellence providing tools for steganography detection and extraction as well as Certified Steganography Examiner Training.
  • StegDetect. A tool to automatically find hidden messages in images embedded by seven steganography applications.
  • StegSpy. A tool that will detect hidden messages embedded by five steganography applications.
  • StegSecret. A java-based multiplatform steganalysis tool. Allows detection of hidden information by using the most known steganographic methods. Detects EOF, LSB, DCTs and other techniques.
  • OutGuess. Application to find data in Jpeg images.

Personal tools