Contents

Puffer ™  2.1

Copyright © 1995, 1996 Kent Briggs

Briggs Softworks

Introduction

Puffer™ is a general purpose encryption tool for Windows that protects your personal and business data as well as your e-mail correspondence.  Use Puffer to securely exchange data over insecure channels.  Puffer uses state-of-the-art encryption algorithms for maximum security.

License

Puffer is copyrighted software distributed as shareware.  You are granted a temporary 30-day license to try Puffer to see if it will meet your needs.  If you wish to use the program past the 30-day evaluation period, you must purchase the fully-licensed, registered version from the author or an authorized dealer.  Failure to comply with the license agreement is a violation of federal and international copyright laws.  Click the Register button on Puffer's main page for more information.

Author Contact and Technical Support Information

Kent Briggs

109A Romana Circle

Hewitt, TX  76643

E-mail:

Compuserve: 72124,3234

Internet: kbriggs@execpc.com

World Wide Web Home Page:

http://execpc.com/~kbriggs

Disclaimer

Read the accompanying manual before using Puffer on "live" data.  This program contains powerful encryption technology and data wiping features that can destroy data if used improperly.  This software is provided as is and without warranty.  The author assumes no liability for damages, either direct or consequential, which may result from the use of this product.

Interface

Puffer's functions are divided into five "tabbed-notebook" pages for convenience.  The Main page is a title page used for program entry and exit.  Clicking the tab on the top of a page will make that page active.  All of Puffer's functions are also available from the keyboard.  Press the Tab key to move to the next component on a page.  When a page's tab has the focus, you can press the left/right cursor keys to activate a different page.  Click on any of the following topics to get more information about Puffer's features:

Encrypt

Decrypt

Wipe

Editor


Encrypt

The Encrypt page is used to encrypt data with Puffer.  It consists of a file list box on the left, a group of options on the right, and command buttons on the bottom.

You encrypt data in Puffer by supplying a password.  Encrypting with a password is called symmetric encryption.  The same password must be supplied later for decrypting.

Step 1

Set the "Source" option.  This specifies the location of the plaintext (the data that is to be encrypted).  The three source types are: File list, Editor, and Clipboard.  If you select the file list as the source, then the disk files you place in the file list will be encrypted.  You can encrypt up to 1000 files at once.  Click the Add button to specify the files.  If you select the editor as the source, then the contents of Puffer's built-in editor will be encrypted.  Selecting the clipboard as the source means that the contents of the Windows clipboard will be encrypted.

Step 2

Set the "Target" option.  This specifies the location of the ciphertext (the encrypted output).  The five target types are: Binary PUF file, ASCII PUF file, Self-Extracting EXE file, Editor, and Clipboard.  The Binary PUF file is the default option.  It is an archive file (similar to a ZIP file) with an extension of ".PUF" that can hold up to 1000 plaintext files.  ASCII PUF files are similar to Binary PUF files except they are specially coded with 7-bit text characters so that they can be mailed as text files across the Internet and other systems that do not support 8-bit binary transfers.  Also, ASCII PUF files can be split into smaller sections if needed to facilitate e-mail systems.  Self-Extracting EXE files are similar to Binary PUF files except they will prompt the user for a password and decrypt themselves when run from the Windows Program Manager, File Manager or the DOS command line.  Puffer is not needed to decrypt the Self-Extracting files.  Registered users have a royalty-free license to distribute these Self-Extracting files.  The Editor and Clipboard can also be set as the target.  The output with these targets will be the same 7-bit text encoding used in the ASCII PUF files.  If you select the Editor (or the Clipboard) as both the source and the target, then the original source plaintext will be overwritten by the ciphertext.

Step 3

Set the "Algorithm" option.  The 40-bit PC1 algorithm is a very fast stream cipher.  The 160-bit Blowfish algorithm is a much more secure block cipher.  Due to export restrictions, the 160-bit Blowfish option is not available in the shareware and international versions of Puffer.

Step 4

Set the "Compression" option if you want Puffer to compress the plaintext data before it is encrypted.  Puffer uses the LZ77 compression algorithm.  If a file cannot be compressed, it will automatically be re-encrypted and stored without compression.

Step 5

Set the "Encrypted Headers" option if you want to encrypt the file attributes in addition to their contents.  When this option is not set, anyone can open a PUF file and see the names of the plaintext files inside, along with the file size and timestamp.  Setting this option means that the password must be supplied before this data is displayed.

Step 6

If you have selected the "File list" as the encryption source, click the Add button to place the desired files in the list box.  Otherwise, proceed to Step 7.  You may add files from multiple directories, up to 1000 files total.  The Remove button will remove selected files from the list.  Clicking on a file selects it.  Click and drag to select a range of files.  Hold the Ctrl key down while clicking to select multiple files that are not in a continuous range.  The Clear button removes all the files from the list.

Step 7

Click the Encrypt button to begin the encryption process.  If the target is set to a PUF or Self-extracting file, you will be prompted for a file name.  An extension of ".PUF" (or ".EXE") will automatically be placed on the file name.  If the file already exists, you will be prompted to overwrite it.  You can not add to or update an existing file.

A password form will appear.  There are three password options.  The Case Sensitive option determines whether the case of the password must match when decrypting.  For example, if a password of "abcdefgh" is used to encrypt with case sensitivity turned off, then any of the following variations could be used to decrypt: "ABCDEFGH", "AbCdEfGh", "abcdEFGH", etc. If case sensitivity was set, then only "abcdefgh" will decrypt.  The 8-Character Minimum option serves as a reminder that short passwords are insecure and should be avoided.  This option can be turned off if you have a good reason to do so.  The Echo Asterisks option will cause "*" characters to display as you are typing in a password.  If you are in a secure room with no one looking over your shoulder, you can turn this option off.

Now enter a password.  The term "password" should really be "pass-phrase".  You are not limited to single words.  In fact, you should avoid using single words as passwords to prevent a dictionary attack.  You can use any character available to you on the keyboard including spaces, numbers, and symbols, up to 50 characters in length.  A poorly chosen password will negate all the security features built into Puffer.  See the user manual for instructions on choosing secure passwords.  Enter the password again into the second box for confirmation and click the OK button.   The source data will now be encrypted.  A progress meter will show the completion percentage during the encryption process.

Split Files

If the encryption target is an ASCII PUF file, a prompt will appear after encryption displaying the number of data bytes in the PUF file.  You then have the option of splitting the PUF into smaller files to facilitate e-mail delivery.   A dialog box will be presented so that you can tell Puffer how many split files to make.  The original PUF file will remain intact while files with extensions of .P01, .P02, .P03, etc. are created.


Decrypt

The Decrypt page is used to decrypt data that was previously encrypted with Puffer.  It consists of a list box on the left, option and information groups on the right, and command buttons on the bottom.

Step 1

Set the "Source" option.  This specifies the location of the ciphertext (the encrypted data).  The three source types are: PUF file, Editor, and Clipboard.  A PUF file can be a binary or ASCII PUF file or the first split file (.P01) in a group of split ASCII PUF files.

Step 2

Click the Open button.  If the source is a PUF file, you will be prompted to select the file from your disk drive.  If a valid PUF file is found, Puffer will open it and list its contents by displaying the file headers in the list box.  Each line will show the file name, original file size, compression percentage, timestamp, and 32-bit CRC value.  General format information is displayed in the lower-right information box.  If the file was encrypted with the Encrypted Headers option, then you will have to supply the password before the contents are displayed (see Step 5).

Step 3

Set the "Target" option.  This tells Puffer where to place the plaintext files after decrypting.  The three target types are: Disk file(s), Editor, and Clipboard.  The editor and clipboard can only hold text data, so you should not attempt to decrypt binary files into the editor or clipboard.  If the target is set to Disk file(s), a dialog box will be presented allowing you to select the destination directory.  You will be prompted to overwrite existing files if found.

Step 4

Select the files from the list that you want to decrypt.  Click the Select All button to highlight all the files listed.  Click and drag the mouse to select a range of files.  Hold the Ctrl key down while clicking to select multiple files that are not in a continuous range.

Step 5

Click the Decrypt button to start the decryption process.  You only have to enter a password once for each PUF file.  If the file headers were encrypted, then you will have already entered the password in Step 2.  Otherwise, you will be prompted for the password the first time you attempt to decrypt a file.

You will be prompted to enter the password.  A message indicating if the case sensitivity option was used will be displayed.  For example, if case sensitivity is on and the password used was "abcdefgh" then you must enter the password the same way.  Entering "ABCDEFGH" will fail.

If the correct password was entered, the file(s) will be decrypted.  A progress meter will show the completion percentage during the decryption process.  Click the Close button to close the PUF file.


Wipe

The Wipe page is used to permanently erase data on your disk drive.  It consists of a file list box on the left, a group of options on the right, and command buttons on the bottom.  The type of data that can be wiped includes disk files, file slack, and free drive space.

Normally, when you delete files from the DOS command line or with Windows File Manager, your files are not really erased.  Their directory entries are modified so that they no longer show up in a file listing and their clusters are reallocated by the operating system.  Unerase programs can restore these "erased" files if their clusters have not yet been overwritten.  Puffer's wipe feature prevents files from being unerased.

Files are allocated clusters by the operating system to store their data.  The size of a cluster depends on the size of a drive partition.  Since files are always allocated a whole number of clusters, there will be some unused space in the last cluster allocated to a file (unless the size of the file happens to be a even multiple of the cluster size).  This unused space is called file slack.  The file slack can contain data from files previously occupying the cluster or from the drive's sector write buffer.

You cannot use the wipe function on network drives.  Most network operating systems such as Novell Netware make backup copies of files every time a file is edited.

A separate DOS utility called SFWIPE.EXE is included with the 16-bit version of Puffer to wipe the Windows 3.1 permanent swap file.  Since the swap file is active while Windows is running, you must exit Windows (not just shell to DOS) to run it.  SFWIPE overwrites the swap file with one random stream pass.  The swap file is not erased, however.  It will be active again the next time Windows is started.  Note: Window 95 does not use a permanent swap file.

Step 1

Set the "Source to Wipe" option.  The four source types are: Files in List, Slack in List, Slack on Drive, and Free Drive Space.

Step 2

If you set the source to Slack on Drive or Free Drive Space then skip to Step 3.  If the source is set to Files in List or Slack in List then you must specify which files to wipe by placing them in the file list box.  Click the Add button to add files to the list.  Clicking the Copy button will copy the files from the Encrypt page to the Wipe page.  This is handy if you wish to wipe plaintext files that were just encrypted into a PUF file.  The Remove button removes selected files from the list and the Clear button removes all the files from the list.  Skip ahead to Step 4.

Step 3

Set the Drive option to the desired drive when wiping the slack on a drive or the free drive space.  The drive option has no effect when wiping the files in the list or the slack in the list.

Step 4

Set the Passes option.  The number of passes tells Puffer how many times to overwrite the wipe source.  Passes can be from 1 to 10.  One pass is sufficient to stop software recovery tools.  Several passes might be needed to stop hardware recovery tools such as electron-tunneling microscopes.  These tools can recover faint magnetic residue from previous writes.  Some other programs that claim to securely wipe data overwrite files with fixed byte patterns, ignoring the effects of compression programs like DoubleSpace and Stacker.  Puffer overwrites data with a random data stream from the PC1 encryption engine.  Random data cannot be compressed, therefore you are assured that the entire file is overwritten.  The "Zeros on Last Pass" option will use zeros on the last pass instead of the random number stream.  This option should only be set if there are two or more passes so that at least one random stream pass is written first.

Step 5

Click the Wipe button to start the wipe process.  A confirmation message will be displayed.  Click OK to proceed or Cancel to quit.  What happens next depends on the wipe source.

Files in List

All the files in the list are permanently erased.  The slack in these files is also erased.  Use this feature with caution!  You can never recover these files.  After a file is wiped, it is truncated to zero bytes, renamed to PWIPED$$.TMP, and then erased.  Before wiping plaintext files that you have encrypted, be sure that you have the ability to decrypt these files if necessary.

Slack in List

The slack at the end of all the files in the list is wiped.  The files themselves are not modified.

Slack on Drive

The slack at the end of every file (except hidden or read-only files) on the selected drive is wiped.  The files themselves are not modified.

Free Drive Space

A temporary file is created in the root directory of the specified drive and filled with random data until the drive has no space left.  The file is then deleted.  This has the effect of wiping all the unused clusters on the drive.  This does not wipe the file slack on the drive nor does it modify any existing files.


Editor

The Editor page contains a text editor that you can use as a buffer between your e-mail software, the Windows clipboard, and Puffer.  The editor is similar to the Windows Notepad editor but can use all of your free memory to hold text, up to 16 Mb.  Notepad is limited to 32 Kb of text.

File and clipboard I/O functions are controlled by the buttons on the toolbar above the editor window.  Placing the mouse pointer over an icon and waiting a second or two will cause a yellow hint balloon to appear, describing the icon's function.  Clicking the right mouse button or pressing the F10 key when the cursor is in the editor will activate a pop-up menu.  This menu has a corresponding function for each icon.

The Editor can be both the source and the target for encrypting and decrypting e-mail messages or text files.  Word wrap is set to 80 characters in the editor.  A status line below the editor displays information about the contents of the editor including file name (if any), a modified flag, an insert/overwrite flag, and the current line and column number.

Clear Editor

This function will remove all text from the editor.  If unsaved changes have been made (the modified flag is on), you will be asked if you want to save the changes in a file.

Open a File

This function will open a text file and load it into the editor.  If unsaved changes have been made (the modified flag is on), you will be asked if you want to save the changes in a file before loading another one.

Save File

This function will save the text in the editor to a file.  Puffer will prompt you for the file name.

Setup Printer

This function brings up the standard Windows Print Setup dialog.  Use it to select the desired printer, paper size, and other options.

Print File

This function will print the contents of the editor to the current print device.

Cut Text

This function will cut selected text from the editor and place it on the Windows clipboard.

Copy Text

This function copies selected text from the editor and places it on the Windows clipboard.

Paste Text

This function will paste text from the Windows clipboard into the editor starting at the current cursor position.

Delete Text

This function will delete selected text from the editor.

Select All Text

This function causes all the text in the editor to be selected.

Help

This function displays this help file.