Decrypto 8.0 Help

(C) 2006 by Edwin Olson
eolson@mit.edu

1. Solving puzzles

Type the encoded puzzle into the "Cipher Text" box. If you know any letter mappings (e.g., "A=R"), type those into the "Clues" box. Finally, click "Solve".

Hints:

The solutions are listed below, ranked according to their "score". The best solutions will be on top, and only the best 200 solutions will be displayed. The score for solutions is computed by considering the (log) probability of the solution according to a table of digram probabilities.

The standard English dictionary is good for a wide variety of puzzles, however there are occasions where a different dictionary will perform better. On very short puzzles that (probably) contain common words, smaller dictionaries will reduce the number of "false positives" while simultaneously decreasing the time required to search. On puzzles containing uncommon words (including names and acronyms), larger dictionaries are generally better.

Important: When Decrypto finds a "perfect" solution (where all words are found in the dictionary), it automatically stops the search process. When the puzzle contains non-dictionary words, Decrypto will continue to search indefinitely for better solutions. When you see a solution that is "good enough", you must click the "Stop" button yourself.

2. Creating puzzles

Type the puzzle into the "Cipher Text" box. Enter any clues that you would to provide. (Since you're providing the undeciphered puzzle in the "Cipher Text" box, you should enter clues like "RACER=RACER".)

Then click scramble. You can hit scramble as many times as you like until you get a permutation that you like.

3. Modifying the dictionary

From the Dictionary menu, select "Dictionary Editor...". This will allow you to merge dictionary files and word lists in order to create new dictionaries. Note that you can't just type in new words; you must create a word list using a separate editor (like Notepad) and load it as a word list.

Notes: A word list is just a newline-terminated list of words, which you can create in any editor. Also, do not change the "Language Class" setting unless you know what you're doing!

If you find any words which are missing from the standard dictionary, please email me them (eolson@mit.edu) and I will add those words to the next version.

Decrypto 8 supports multiple languages, at least in theory. If you would like your language supported, please send me a dictionary and a precise description of how to map "funny" characters (e.g., letters with accent marks or diacriticals). In other words, are "U" and "Ü" the same character (can they both be treated as "U"?), or are they fundamentally different characters (like "U" and "W" in English)? I'll also need a table of digram probabilities (how frequently do all combinations of two letters occur?).

Important: Creating good dictionaries is hard work. Too few words, and the solver won't find good solutions. Too many words (i.e., if you just use a spell-checking dictionary filled with acryonyms, colloquialisms, and other nonsense), and you'll get gibberish. As a general strategy, be sparing when adding words, and definitely do not indiscriminantly merge the dictionary with another large word list.

4. Examples

Cipher text: "PG XOYHLM XOYLY PZ GH TPUUYLYGRY EYXBYYG XOYHLM WGT JLWRXPRY. PG JLWRXPRY, XOYLY PZ." - MHIP EYLLW

Clues: X=T M=Y

5. Source Code

The source code for this software is available from the Decrypto homepage:

http://www.blisstonia.com/software/Decrypto>

It is distributed under the terms of the GPL version 2. I welcome patches and improvements!

Acknowledgements

Pete Wiedman did a great deal of work in preparing the excellent dictionaries which come with Decrypto 8, not to mention lots of invaluable testing. Also, thanks to John Gidusko for his part in preparing the dictionaries. Thanks!

Ken Cline made the helpful observation that--occasionally--it is more productive to search for a single letter at a time than to search for a whole word. This has made a significant performance improvement on a class of difficult puzzles.

Contributions

This program has taken a lot of time to develop. If you would like to contribute a pizza+coke for one more night of hacking, please send it to:

Edwin Olson
61 Harvey St.
Cambridge, MA 02140

Thanks to those who have already contributed!