Protecting Your Privacy

A few simple precautions need to be taken to assure the absolute secrecy of your data. First of all, NEVER run enigma with virtual memory on, an image of the clear-text or key could be left on your hard disk. See the memory control panel for this switch. This caution applies to the new "enhanced"virtual memory tools such as OptiMem and RamDoubler as well. If you can't live without these utilities just be sure to always run Enigma when you have plenty of free (real) RAM.

Secondly, remember that deleting a file (such as the plain-text version of a just encrypted file) does not remove the data from the disk. Use an application which overwrites deleted files with null data. I have written an application that does this. It is called Burn and should be available from the same place that you got Enigma from. Further, Enigma allows you to specify that it destroy a plain-text file after encryption (See the section on Customizing Enigma.)

Your data is not secure if your password can be guessed or contains only common words. Keys should be more than a few characters long (13 for maximum security). Do not choose obvious things like people, place or pet names, nor should every word of your key be in a standard dictionary. The more unconnected a key is from you and your life the harder it will be to guess.

Enigma has a somewhat unusual keying system that increases the security of files you protect using it. All characters typed as a key are converted to a 5 bit representation. You should always use the 26 letters of the alphabet (upper or lower case doesn't matter), the 10 digits 0-9, and the space bar for your key. Any other character are mapped into this space by using the 5 least significant bits of their ASCII value. The packing algorithm used ensures maximum data security even though a restricted character set is used. The benefit is an easy to remember password that provides maximum security.

You might be a little unsure how restricting the possible characters in a key can actually enhance security. This scheme works because even in the best case you can't realistically choose from more than about 75 characters for each character of your key. If no packing were done someone searching for a key would only need to examine those 75 characters for each 8 bits (256 characters) of the key. By using only five bits per character there are no "gaps" that can be ignored by someone searching for your key. For maximum security a key should be 13 characters. Characters beyond 13 are ignored. Another important point regarding nearly all encryption algorithms is that they are much easier to break if the cryptanalyst has access to the plaintext and ciphertext version of any document encrypted with the key he is trying to break. The lesson here is to be sure that plaintext versions of encrypted files should not be left laying around even if the particular file is not of high value; it can be used to make breaking your key easier.

Finally, because the encryption engine source code is available you can be absolutely certain that the full DES algorithm is implemented and that there are no back doors or vulnerabilities. No other DES type encryption package for the Macintosh exists which provides this certainty. Note: starting with version 2.0 complete source code is not available to protect my investment. Source for the complete Enigma 1.2 application remains available. Because of the new CBC encryption mode, Enigma 1.2 no longer produces encrypted results identical to Enigma 2.5. However, I will include with the source code an example of how to modify the DES algorithm to implement CBC mode (it is only a few lines of code).


[Next Wave Home Page ] [Enigma for Macintosh]
HTML markup by kokane@gmu.edu, tweintra@gmu.edu, jmanhan@gmu.edu
Modified and integrated into the Next Wave Software homepage by mike@thenextwave.com