Steganography

From David's Wiki
Revision as of 15:17, 10 October 2019 by David (talk | contribs) (→‎Methods)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

Steganography is hiding data. This can be in audio or videos. The challenge is that the data should be inperceptible to the viewer and recoverable after video compression (e.g. h264).


Requirements

  • Imperceptibility/Impalpability: The video with the embedded data should be visually identical
  • Robustness: The embedded data should not be disturbed by image processing and attacks.
  • Capacity: The amount of embedded data should be high
  • Security: The data should be highly secured. This can be done with encryption beforehand.

The difference between Steganography and Cryptography is the first point. Encryption results in scrambled text which can draw attention.

Attacks include packet loss, video clipping, video scaling.

Classifications

Various ways to classify steganography methods

Embedding Time

  • Preembedding: Embed data into the raw video. Spatial and transformation domains. This will need to survive the encoding process.
  • Intraembedding: Embed data into the video encoding: intra-prediction, motion vectors, pixel interpolation
  • Postembedding: Embed data into the encoded bitstream

Methods

These specify the general techniques people have tried for steganography in videos.

Spatial Domain

Spatial domain methods mainly focus on hiding data in the least significant bit (LSB) of videos. These methods are not robust to video compression.

Masking and Filtering

These methods focus on altering the luminance. Also not robust to video compression.

Transformations

They work by embedding the message in the LSB of the coefficients of the discrete cosine transform (DCT).

Compression Parameters

These methods hide data in the motion vectors. Data can be hidden in the LSB or the phase of the motion vectors.

Resources