CryptoTool README

Overview.
CryptoTool is a Macintosh application program that enables you to encrypt and decrypt text files using a variety of simple and historically interesting ciphers. Encrypting operations require that the user create an appropriate key, and decrypting operations require the user supply the correct key. The following ciphers are implemented. Clicking on their links gets you additional information about the cipher method itself.


CIPHER			Description of the Key
Caesar an integer by which each letter is shifted Simple Substitution a permutation of A,B,C,...Z Transposition blocksize, starting character, stepsize Vigenere a keyword Gronsfeld a keyword Beaufort a keyword Autoclave a keyword Playfair a keyword

CryptoTool provides a dialog boxes to assist with creating and using keys. CryptoTool also provides a number of Helpers -- cryptanalysis tools that may be helpful in "cracking" encrypted files.

Downloading CryptoTool. The latest version of CryptoTool (vb06) supports encryption and decryption of Vigenere, Beaufort, Gronsfeld, Autoclave, Playfair and transposition ciphers. It also supports cryptanalysis of both Vigenere type and simple substitution ciphers.

Two executable versions of CryptoTool are available, a Macintosh 68K version and a Macintosh Power PC version. Just click on either of these links to FTP a copy of this program. Both are compressed and stored in self extracting archives. They can decompressed using Aladdin System's Stuffit Expander software, which is available free.

Using CryptoTool. There are four basic steps to follow in encrypting and decrypting a file.

1. Open the file (using New or Open in the File menu)
2. Select a particular cipher (using the Cipher menu)
3. Encrypt or Decrypt the file (using the Encrypt/Decrypt menu)
4. Save the file (using Save or SaveAs in the File menu)

One important constraint on these steps is that once you have embarked on step 3 (Encrypt/Decrypt) you cannot change the cipher unless you close all files and go back to step 1.

File Menu. CryptoTool can be used in one of two modes. If you open a new or existing plaintext file, CryptoTool will go into encryption mode. In this mode you can translate a plaintext file into a ciphertext (or encrypted) file. If you open a new or existing ciphertext file, CryptoTool will go into decryption mode. In this mode you can translate a ciphertext file into a plaintext (or unencrypted) file. When you open a new or existing file, its text is displayed in a scrollable, editable text window. The Save, SaveAs and Print apply to the selected text widow -- i.e., the front text window.

Edit Menu. In addition to the standard editing options, the Edit menu provides a number of useful file processing operations all of which apply to the text in the currently selected (i.e., front) text window.

Remove whitespace -- removes all blanks, tabs, etc.
Remove punctuation -- removes periods, commas, etc.
Convert to lowercase -- converts all letters to lowercase
Convert to uppercase -- converts all letters to uppercase
Block by 5 -- groups the letters into blocks of length five.
Normalize -- removes all whitespace and punctuation from the file, converts all its letters to lowercase and groups them into blocks of length five. This operation produces text that mimics in WWII vintage telegraphic cryptograms.

Cipher Menu. This menu enables you to select a cipher (default = simple substitution) and an alphabet (default = A..Z). The alphabet options apply only to substitution ciphers; at this point, only the Caesar cipher supports the printable ascii alphabet. Note: Once you begin a Decrypt/Encrypt operation, you are not allowed to change the cipher or the alphabet.

Encrypt/Decrypt Menu. This menu is not enabled until either a plaintext (encrypt mode) or ciphertext (decrypt mode) file has been opened. This is considered the source text. Depending on the type of cipher selected (Cipher menu) only one of the four possible Key dialogs will be enabled. When you select the key, CryptoTool will open a destination text window (to display the translated file) and the key dialog box. Each of the key dialogs has an Apply key. Assuming you have entered a valid key, the key will be applied to the source text and the result will be displayed in the destination window. If you are satisfied with the result, you can close the key and save the destination and/or source files. NOTE: In order to change from one cipher to another, you must close both the source and the destination windows.

Helpers. The Helpers menu provides a number of useful cryptanalysis tools and resources.

Frequency Graph provides a frequency histogram (bar chart) for the currently selected text window.

Doublets provides a list of the most common English doublets, e.g., ee, ll, etc.

Bigrams provides a list of the most common English bigrams -- i.e., two letter combinations such as th, to, he, and so on.

Words provides a list of the most common 2 and 3 letter English words.

Frequency groups provides a sorted list of the most frequent letters in the currently selected text window and compares these with a sorted list of English letters. The lists are further divided into groups ranging from frequent to rare.

Contact Chart provides a two-dimensional chart that counts the number of times one letter preceded and followed another. This is used for analyzing substitution cryptograms.

Kasiski Chart provides, for the currently selected text window, a list of the most frequently recurring bigrams together with factored measures of the intervals between one occurrence and another. This is the most powerful analysis tool. For files encrypted polyalphabetic ciphers, such as Vigenere and related ciphers, it can frequently identify the length and identity of the keyword that was used to encrypt the file. Note that if you enter a length in the Keyword field and select Find Keyword, it will try to identify a keyword of that length.

Problems. CryptoTool is a work in progress. If you run into bugs or have suggestions for improvements send me email at ralph.morelli@mail.trincoll.edu.

For further study and enjoyment.

Check out some other resources created by our cryptography study group by clicking here.