Text Steganography

Hide Messages in Plain Sight Using Invisible Characters

What is Text Steganography?

Text steganography hides secret messages within ordinary-looking text using invisible Unicode characters. These characters are present in the text but not visible to the human eye, making it perfect for covert communication.

Zero-Width Characters Used:

Character Unicode Name Binary
[ZWNJ] U+200C Zero Width Non-Joiner (ZWNJ) 0
[ZWJ] U+200D Zero Width Joiner (ZWJ) 1
[ZWSP] U+200B Zero Width Space (ZWSP) Separator

How It Works:

1. Encoding: Your secret message is converted to binary, then each bit is represented by a zero-width character (0=ZWNJ, 1=ZWJ).

2. Insertion: These invisible characters are inserted into cover text between words or characters.

3. Result: The text looks completely normal, but contains your hidden message.

Example: "Hello World" could contain an entire hidden sentence that's invisible!

Hide Secret Message in Text

0 characters
The secret message will be hidden within this text

Encoding Options:

Extract Hidden Message from Text

Detect Hidden Characters in Text

Analyze text for the presence of zero-width or unusual Unicode characters.

How to Use This Tool

Hiding a Message:

  1. Enter your secret message in the first field
  2. Enter cover text (normal text that will carry the hidden message)
  3. Choose encoding method (Binary or Whitespace)
  4. Click "Hide Message" to encode
  5. Copy the resulting text - it looks normal but contains your secret!

Extracting a Message:

  1. Switch to "Decode" mode
  2. Paste text that may contain a hidden message
  3. Click "Extract Message"
  4. The tool automatically detects and decodes the hidden message

Detecting Hidden Characters:

  1. Switch to "Detect" mode
  2. Paste any text you want to analyze
  3. Click "Analyze Text"
  4. View detailed breakdown of all Unicode characters found

Console Commands:

  • hide [message] - Quick hide message in default cover text
  • extract [text] - Extract hidden message
  • detect [text] - Detect zero-width characters
  • clear - Clear all fields

Puzzle Difficulty Guide

Beginner (Obvious Hint)

Puzzle explicitly states that text contains hidden characters or provides the extraction method.

Example: "This message contains zero-width characters with a hidden flag"

Skills: Basic copy/paste and tool usage

Intermediate (Subtle Clue)

Hints suggest invisible or hidden content without explicitly mentioning the technique.

Example: "There's more to this text than meets the eye"

Skills: Recognition of steganography indicators, using detection tools

Advanced (No Hints)

No indication that text contains hidden data. Must suspect and verify steganography independently.

Example: Plain text provided with no context

Skills: Systematic analysis, testing multiple steganography techniques

Technical Details

Binary Encoding Method:

Each character of your secret message is converted to its binary representation (8 bits). Each bit is then encoded as a zero-width character:

  • 0 bit: Zero Width Non-Joiner (U+200C)
  • 1 bit: Zero Width Joiner (U+200D)
  • Byte separator: Zero Width Space (U+200B)

Whitespace Encoding Method:

Uses spaces and tabs to encode binary data:

  • 0 bit: Regular space (U+0020)
  • 1 bit: Tab character (U+0009)

This method is more detectable but works in environments where zero-width characters are stripped.

Detection Techniques:

  • Unicode Analysis: Scan for zero-width and unusual Unicode characters
  • Character Frequency: Abnormal patterns in whitespace or invisible characters
  • Binary Reconstruction: Convert zero-width sequences back to ASCII

Limitations & Considerations:

  • Some platforms strip zero-width characters (social media, email clients)
  • Copy/paste may not preserve all Unicode characters
  • Text editors vary in their display of invisible characters
  • Not secure encryption - anyone with the tool can extract messages

Real-World Applications:

  • CTF Challenges: Hidden flags in problem descriptions
  • Watermarking: Embedding author information in text
  • Covert Messaging: Passing information in plain sight
  • Anti-Copying: Tracking text distribution with invisible markers

⚠ Security Notice

This is NOT encryption! Text steganography only hides messages from casual observation. Anyone who suspects steganography can easily extract your message using this or similar tools.

For secure communication, use proper encryption methods like AES or PGP before embedding messages with steganography.

Best Practices:

  • Encrypt sensitive messages before embedding
  • Use diverse cover text to avoid patterns
  • Test extraction on target platform before sending
  • Consider combining with other steganography methods