Steganographic Markov Chains

I am working now on a design for steganographic markov chains, intended for plausible and quiet encryption.

First of all, here is a rough design

  • Implement a JSON-backed database for markovian statistics about words (partially implemented, backed currently by Pickle)
  • Implement an encoder (currently I am planning nibble/word). That works already.
  • Implement a decoder (that works already)
  • Implement break-document-into-words for quality input into the db (implemented naive algorithm)
  • Add “smarts” about sentences/paragraphs to the encoder
  • Add compression/encryption layers, in order to supply better hiding (I’ll probably use 256-AES)
  • Design a key exchange scheme — if I know someone’s PGP public key, could I still steg. the encrypted key in the beginning without skewing statistics?

I plan to be able to use it for e-mail (markov chaining would hopefully, at worst, look like spam), blogs (wrap it with a nice interface for uploading to wordpress/lj, and think about a firefox extension for auto decryption (if you put a marker in the compressed plain text, you could opportunistically decrypt and check for the marker) and IM (wrap it with libpurple, and a public interface for key negotiation — ideally implement it as a plugin to pidgin which can be made to work without hassle).

One Response to “Steganographic Markov Chains”

  1. klaymen Says:

    Moshe, go to sleep!

Leave a Reply