Nepedia
Back to Discover
Advanced Reader
💻

Steganography

technology Maturity 11-13 Next article →

Steganography is the specialized practice of representing information within another message or physical object. The primary goal is to conceal the very existence of the secret information. To an unsuspecting person, the object appears perfectly normal. This differs significantly from cryptography, which is the practice of protecting the contents of a message alone. While cryptography makes a message unreadable, steganography ensures the message does not attract attention. In some regions, visible encrypted messages might arouse suspicion or be illegal. Steganography avoids this by hiding both the content and the fact that a secret is being sent.

Steganography original
Steganography original

The term itself has deep linguistic roots in the Greek language. It combines the word "steganós," which means covered or concealed, with "-graphia," meaning writing. The mechanism of steganography involves using a "cover" to protect a "stegotext." The sender modifies the cover object to embed the secret data. In digital contexts, this often involves altering the bits of a file. For example, a sender might take an innocuous image file and adjust the color of every hundredth pixel. These changes correspond to letters in the alphabet. Because the adjustments are so subtle, they are unlikely to be noticed by a human observer.

Steganography recovered
Steganography recovered

Historically, steganography has taken many physical forms. One of the earliest recorded uses dates back to 440 BC in Greece. The historian Herodotus mentions that Histiaeus sent a message by shaving a servant's head. He marked the message onto the scalp and waited for the hair to regrow. Another example involves Demaratus, who wrote a warning on the wooden backing of a wax tablet. He then applied a layer of beeswax to hide the writing. Later, in 1499, Johannes Trithemius published "Steganographia." This was a treatise on cryptography and steganography disguised as a book on magic. He even developed the "Ave Maria" cipher, which could hide information within a Latin praise of God.

Steganography in the hand of John Dee
Steganography in the hand of John Dee
Chart in the hand of Dr John Dee. Steganographiae
Chart in the hand of Dr John Dee. Steganographiae

In the modern era, digital steganography has become highly sophisticated. It can be applied to many different types of media files. Media files are ideal for this because of their large size. Digital messages can be framed within document files, image files, or programs. One method involves overwriting part of a large block of encrypted or random data. This makes the hidden data look like natural noise. Other techniques include changing the properties of digital text, such as font choice or spacing. There is also "echo steganography," which modifies the echo in a sound file.

Steganography
Steganography

Research has recently shifted toward steganography in streaming media. This includes technologies like Voice over Internet Protocol, or VoIP. In 2003, researchers Giannoula et al. developed a method to hide data in compressed video signals on a frame-by-frame basis. Later, in 2008, Yongfeng Huang and Shanyu Tang used Graph theory and Quantization Index Modulation to hide information in low bit-rate VoIP speech streams. By 2011 and 2012, they developed algorithms that use codec parameters as a cover object. This allows for real-time covert VoIP steganography. Even more recently, in 2024, Cheddad and Cheddad proposed a framework using machine learning to reconstruct audio signals using steganography and halftoning.

Steganography recovered
Steganography recovered

Advanced techniques like adaptive steganography tailor the embedding process to specific media features. This makes the hidden data even harder to detect. For instance, some algorithms can detect skin tones and facial features in an image. By incorporating face rotation, the technique becomes more robust across different facial orientations. Steganography is also being studied in the context of the Internet of Things (IoT) and cyber-physical systems. Data can be stored in unused registers of IoT components or in the states of actuators. Even network steganography is a major field. This involves hiding data within communication protocols. Researchers have studied covert channels in local area networks (LAN) and the TCP/IP protocol for decades.

Steganography original
Steganography original

Interestingly, steganography can even appear in the physical world through printed documents. This is often called "printed digital steganography." A message can be hidden by manipulating the letter size, spacing, or typeface of a cover text. However, traditional digital steganography is difficult to print because the tiny changes in noise are lost. One notable exception is how modern color laser printers operate. These printers often integrate a dot-matrix code of tiny yellow dots on every printout. These dots are not recognizable to the naked eye. They are used for traceability, containing the model, serial number, and timestamps of the print.

HP Color Laserjet 3700 schutz g
HP Color Laserjet 3700 schutz g
733 words

Where will your curiosity go next?

Keep exploring at your chosen reading level.

🖼️ Images & Media (6)
File:Steganography.png
Steganography.png
File:Chart in the hand of Dr John Dee. Steganographiae.png
Chart in the hand of Dr John Dee....
File:Steganography in the hand of John Dee.png
Steganography in the hand of John Dee.png
File:Steganography original.png
Steganography original.png
File:Steganography recovered.png
Steganography recovered.png
File:HP Color Laserjet 3700 schutz g.jpg
HP Color Laserjet 3700 schutz g.jpg
More to explore

🔬 Go deeper

More advanced topics to explore

🪜 Step back

Simpler topics to build understanding

What is Nepedia?

A free, ad-free encyclopedia for children. Every article is written at five reading levels, so the same page works for a five-year-old and a fifteen-year-old — use the level switcher above to see this one change. No account needed to read.