Cypher User Manual


Getting Started

User-assisted Cipher Decryption of a Simple Monoalphabetic Cipher

After starting up the program, you should see a window similar to the following on your screen:

The layout is fairly simple - there are four windows and a toolbar. The two text windows and the key palette(at the bottom of the screen) are action windows, where the user can perform text manipulations or substitutions. The top left window is a reference tool to allow the user to compare statistical results of a message to that of the English langugage. Finally, the bottom left window is a display window for the results of any analysis performed on the encrypted message.

In the course of decryption, the user may modify any of the action windows and affect the decryption or partial decryption of the message in the decryption window:

Our first task is to input the encrypted message.This can be done in two ways, either by manually inputting the encrypted message by hand, or by loading the message from a text file by choosing "Open" from the File menu in the cipher window. At any point when the message is displayed on the cipher window, it can be saved to disk by choosing "Save" or "Save As" from the File menu on the cipher window. (Similarly, a message in the decryption window can be saved as plain text at any time by using the File menu on that window.) Once the message has been inputted, choose "Begin Decryption" from theOption menu in the cipher window, and the encoded message will becopied to the decryption window:

At this point we probably want to run a frequency analysis on the encrypted message. To do this, click on the icon on the toolbar on the right of the screen. When the analysis is run, statistics are computed automatically for single character frequencies, digram frequencies, and trigram frequencies, but by default only the single character frequencies are displayed. In order to view the other results,or to view any results in histogram format, choose the appropriate display option from the applications View menu. The results for the message will automatically be displayed in the message frequency window on the bottom left of the screen:

With this information we can start guessing at the substitutions. All of M, J, and X have high frequencies in the encrypted message, so one of them is probably "e" in plaintext. We might try some combinations of these by inputting the corresponding plain text letters in the key palette at the bottom of the screen. Assuming we guess correctly, here are the results of those substitutions and the corresponding display on the screen (well assume correct guesses until a little farther in this manual) :

At this point, we might assume that "TNE" represents "the" and so "N" is "h" in plaintext. Using these intuitive observations along with the frequency tables for single characters, digrams, and trigrams, one might arrive at this partial decryption:

By now, several potential words have been completed. As strings of plaintext characters lengthen, and if the dictionary auto-lookup is enabled, plaintext character substrings are checked against a standard dictionary file and are underlined green if there is a match;if there is a partial match or seemingly misspelled word, the character substring will be underlined red. In the example above, there are no misspellings.

Considering the substring "Yall", we might guess that "Y" represents "b" since "ball" is a valid word. However,making this substitution produces the following display (Note the underlined red words that are misspelled as a result of this substitution):

We can see that weve made a mistake;s owe delete "b" from below "Y" in the key palette, and reassess, this time coming up with "w" as a possible match. The dictionary auto-lookup recalculates the matches and this time there are no misspelled words:


Entering keys for the remaining few cipher text letters produces a completely deciphered message, with no errors(Note thata proper name or other uncommon words may not be recognized by the dictionary auto-lookup, and so a message that is completely deciphered may have "error" markings. Here the dictionary auto-lookup has been disabled.):