Accelerated implementation of syndrome-trellis codes for steganography

Supervisor(s)Martin Beneš, MSc


Steganography is a technique to hide secret messages inside inconspicuous cover media. A common approach is to choose a cover and insert the message by making slight, ideally indetectable changes. Modern methods choose the positions for changes based on the cover content. This is typically carried out in two phases, (1) estimating a distortion, cost of change at each position, and (2) choosing the positions to change so that the message is present, while minimizing the distortion. To do so, the second phase is based on coding theory.

The goal of this thesis is to create an accelerated encoding and decoding implementation for syndrome-trellis codes (STCs), a state-of-the-art technique for the coding phase. For acceleration, one can consider single-instruction-multiple data (SIMD) instructions and graphical-processing units (GPU). A starting point is to review the papers and existing implementations in Matlab, C++/SSE, and Python. The student needs to develop an understanding of how steganography is implemented.

The developed implementation should be tested for correctness by comparing its output to the one of the reference implementation in Matlab. The choice of the programming language and the framework should done with considerations of compatibility and portability. The speedup compared to the existing implementations should be reported.


  • Filler, T., Judas, J., and Fridrich, J. Minimizing additive distortion in steganography using syndrome-trellis codes. IEEE Transactions on Information Forensics and Security, 6, 3 (2011), 920–935.
  • Filler, T., Judas, J., and Fridrich, J. Minimizing embedding impact in steganography using trellis-coded quantization. In Media Forensics and Security II. 7541, SPIE, 2010, pp. 38–51.