Lost in Just the Translation
This tool is a web-based implementation of a natural language-based
steganographic system developed by
Christian Grothoff at UCLA Computer Science Department,
Mikhail Atallah at
CERIAS. The key
idea behind the system is to hide a message in the noise inherent
in natural language translation. This prototype implements some
of the ideas presented in our research paper
(also, more information is available in our paper
about a previous version of our work).
This tool can be used to steganographically encode or decode a message
in user-defined or system-provided cover texts. The tool provides a
variety of options for the encoding as described in the paper, including
a selection of translation engines, multiple languages and various
transformations. The engine uses keyed cryptographic hashes of translations
to encode information. For details about how
the system works please read our paper.
The prototype has limitations. It uses various on-line translation
engines to obtain translations. These engines have a high latency, are sometimes
unavailable and limit the rate at which sentences can be translated. To alleviate
these problems, the prototype caches translations in a local database. However,
for cover texts supplied by users the cache is likely to not have any effect. Thus,
user-supplied covers are likely not to work if they are longer than a few sentences.
For longer hidden messages, the provided covertexts should be used. For those
texts we have ensured that all translations are cached already, thus sidestepping
problems with doing translation requests on-the-fly.
Note: Changes in the web interfaces for our online translation sources and small, idiosyncratic changes in the way the translations are encoded by the engines make using the encoder extremely difficult. You will likely need your own translation software or sources to achieve any meaningful results.
Please note since our original sources for translations have changed this software won't provide meaningful results without substanial effort as noted above. The encoder/decoder portion of the code is isolated fairly well and still serves as a practical example of the protocol described in detail in the paper.
You can download the current release here.
LiJtT requires PHP 5 with libtidy support, a PEAR supported SQL database (i.e. mysql)
and a PHP-enabled webserver (i.e. apache). The machine running LiJtT must be able to
access the WWW in order to perform on-line queries to various translation engines.
The size of the initial database included in the distribution is currently
around 8 MB.