home *** CD-ROM | disk | FTP | other *** search
-
-
-
-
-
-
- F A S T E N C R Y P T
-
- Version 1.0
- Copyright (c) 1993 by Michael J. Harris
-
-
-
-
- OVERVIEW:
-
- Fast Encrypt is a state-of-the-art Encryption/Decryption
- program. It is significantly more secure than DES, very fast,
- can use any 16 byte string as a key, and is very simple to use.
- It was written entirely in 386 Assembler (for speed) and makes
- full use of the 386's capabilities. It won't run on XT/PC/AT
- (8088/8086/80286) systems.
-
-
- SHAREWARE NOTICE:
-
- Fast Encrypt is SHAREWARE: This means that if you want to
- continue to use product, you are expected to support the author
- for all his time spent developing/writing/debugging the program.
- To register the program, simply print the file ORDER.FRM and
- send it in, or just write out the information by hand if you
- don't have a printer. Fast Encrypt is not "cripple-ware".
- There are no features disabled and the program will not
- "self-destruct" after a certain period of time. I ask that you
- register it after 14 days of use. This should be more than
- enough time to test it and see it's capabilities. Registration
- is only $15. Site licenses are also available; write for
- information.
-
- Pass it around!
- ~~~~ ~~ ~~~~~~~
-
- Because of the way Shareware works, you are encouraged to give
- copies of this program to all of your friends, for them to try
- out. You may distribute this program in any form, however no
- fee may be charged (except for minimal disk copying fees). You
- also may upload this program to any BBS system that you call.
-
-
- HOW TO USE IT
-
-
- The Key:
- ~~~ ~~~
-
- When you first run Fast Encrypt you will be asked for a 16
- character key. You then must enter 16 characters of your
- choice. You may use symbols or any other ASCII character,
- remember that it is CASE SENSITIVE. DO NOT FORGET YOUR KEY!
- You will not be able to unencrypt your file without the key.
- There are no "backdoors" or "magic-keys", so if you to forget
- your key I won't be able to help you.
-
- Examples of valid keys are:
-
- BarbersAre Neat!
- $#)'[p0p9ovm,d.a
-
- Anything will work, but remember you must type EXACTLY the same
- thing when you want to decrypt. That means:
-
- BarbersAre Neat! and
- Barbersare neat! are *NOT* the same
-
-
- Tips for key selection:
- ~~~~ ~~~ ~~~ ~~~~~~~~~
-
- Use keys that are totally unrelated to anything (don't use phone
- numbers, Social Securtity number, etc). Include both upper AND
- lower case letters. You should also have at least one symbol in
- your key (!@#$%^&*)_=+-/.,;' and the like. Using weird
- characters increases the difficulty of a brute force cracking
- your key since more character combinations have to be tried
- instead of just the alphabet.
-
-
- The Substitution Boxes:
- ~~~ ~~~~~~~~~~~~ ~~~~~
-
- After you type in your key, it will fill the substitution boxes.
- This may take several seconds (on slower 386s). This is the
- main way that Fast Encrypt encrypts your data (see below for a
- more technical explanation). After it fills the substitution
- boxes it will ask you if you want to save the substitution boxes
- to disk. Saving the substitution boxes to disk will allow you
- to encrypt/decrypt as much as you want with the same Key,
- without having to build the substitution boxes every time you
- run the program (it can save LOTS of time). HOWEVER - anyone
- that has access to the substitution boxes saved to your disk can
- decrypt your data. So never save the substitution box on a
- computer or diskette that somebody can get access to. Fast
- Encrypt will automatically find your saved substitution boxes
- and ask you if you want to use them. If you answer no you will
- be prompted to enter a new key. The substitution boxes are
- stored on disk in a file called: EXTERNAL.KEY
-
-
- Encrypt/Decrypt:
- ~~~~~~~~~~~~~~~
-
- After the subsitution boxes have been created/loaded from disk,
- it will ask you if you want to Encrypt or Decrypt. Encrypt
- scrambles up your files; Decrypt unscrambles them.
-
-
- The Files:
- ~~~ ~~~~~
-
- You must then enter two file names. The first one is the file
- that will be processed (encrypted or decrypted) the second file
- is where the output will be placed.
-
- Example:
-
- Encrypt or Decrypt E/D: e
- Enter the name of the file: WHATEVER.XXX
-
- Enter the name of the output file; it
- MUST be different than the input file: WHATEVER.CPT
-
-
- In the above example, WHATEVER.XXX is being encrypted, and the
- encrypted version of it is placed in WHATEVER.CPT. Any valid
- DOS names/extentions are valid. Use of paths is also OK, so
- C:\DOS\WHATEVER.XXX is allowed for either input or output.
-
- Encryption/Decryption:
- ~~~~~~~~~~~~~~~~~~~~~
-
- After all of the above is entered, the data is encrypted or
- decrypted. This goes very quickly (except for really big files,
- of course). You may find that your encrypted files are slightly
- larger than the originals; they are never more than 16 bytes
- larger, so it shouldn't matter much. When the files are
- decrypted the files return to their original size (the reason
- why is discussed in the technical section at the end of the
- documentation).
-
-
- CONTACTING THE AUTHOR:
-
-
- If you still have problems getting the program to work or have
- suggestions/comments, you may feel free to contact the author
- (even if you haven't registered yet). There are no known bugs
- in Fast Encrypt, but I'd be very greatfull if you would let me
- know if you do find one. E-Mail/U.S. Mail is the perfered
- method of contact, and phone service will be provided for
- registered users. Be sure to include ALL necessary details in
- any mail sent to me. Fast Encrypt has been tested under DOS,
- OS/2 2.0, OS/2 2.1 (in fact, it was developed mostly under
- OS/2-DOS), OS/2 HPFS drives, and on several 386 and 486 systems
- running various DOS and OS/2 configurations. No problems were
- encountered.
-
-
- INTERNET: mharris@clovis.felton.ca.us
-
- U.S. Mail: Michael Harris
- 125 Blueberry Dr.
- Scotts Valley, CA 95066
-
-
- TECHNICAL INFO:
-
- The Encryption Method:
- ~~~ ~~~~~~~~~~ ~~~~~~
-
- The method that Fast Encrypt uses to encrypt data is basically a
- much improved version of DES. While there is nothing known to
- be wrong with the DES algorithm itself, many (including the
- author) feel that the key size that DES uses (56 bits) is too
- small to adequetly protect data. The key size that Fast Encrypt
- uses is 128 bits. (16 characters at 8 bits each make up the 128
- bits). The total number of possible keys if some massive number
- with over 40 digits.
-
-
- There are two methods that Fast Encrypt uses to encrypt:
- Substitution and Permutation. Substitution does what the name
- implies: it takes a group of bytes out and places a different
- group of bytes in its place. You can think of it like one of
- those puzzles where each letter has been switched with a
- different letter and you have to figure out what it says. This
- is essentially what Fast Encrypt is doing, but on a much larger
- scale. It is substituting 16 byte blocks (2^128 (2 to the 128th
- power) possible values) where in the puzzle example there are
- only 26 letters in the alphabet. Fast Encrypt goes through this
- substitution process 10 times, each time with a different
- substitution box. The substitution boxes are functionally
- dependant on the key. In between each substitution is a
- permutation. The permutations switch the order in which the
- bits occur. The combination of these makes it virtually
- impossible to break the encryption even with multiple array
- supercomputers working for literally hundreds (if not thousands)
- of years.
-
-
- Of course, there is no practical encryption program that is 100%
- secure (Fast-Encrypt isn't 100% secure, and doesn't claim to be.
- No other methods can truthfully claim to be totally safe either,
- because they aren't). The only encryption method that can be
- mathmatically proven un-crackable is the "one-time-tape" method.
- However, this method requires that the key is longer than what
- is being encrypted and the key must contain totally random
- numbers and the key must never be repeated. For example, if you
- wanted to encrypt a 1 megabyte file, you would have to have a
- key that was greater than 1 megabyte in size. This makes it
- totally useless for daily use.
-
-
- Why files grow slightly when encrypted:
- ~~~ ~~~~~ ~~~~ ~~~~~~~~ ~~~~ ~~~~~~~~~
-
- As stated above, Fast Encrypt works on blocks of 16 bytes. This
- means that it is impossible for it to encrypt a group of bytes
- that is smaller than 16 bytes. However, not all files in this
- world will divide evenly into 16 byte blocks. This means that
- Fast Encrypt must "fill in" the needed bytes before encrypting
- the last block. It also must save a byte that indicates how
- many bytes in the last block are "original" ones so that when it
- decrypts the file it can return it to the correct size.
-
-
- About the program:
- ~~~~~ ~~~ ~~~~~~~
-
- Fast Encrypt was written entirely in 386 assembler. This was
- done because most good encryption programs are painfully slow.
- It makes full use of the 386's 32-bit processing abilities. In
- a lot of areas the programming was easier and the program ran
- much faster because of the larger registers. It was built with
- Borland(tm) Turbo Assembler Version 2.0 on a 386-40 with 8 megs
- of RAM running OS/2 version 2.1 (HPFS on one drive, FAT on the
- other one. Fast Encrypt ran fine on both drives).
-
-
- DISCLAIMER:
-
- Use of this software and/or documentation for any purpose
- whatsoever constitutes your unqualified acceptance of the
- following statements.
-
- No encryption program is totally secure. The author makes no
- warranty that this software will protect your data in any way
- whatsoever.
-
- The author makes no warranty that this software/documentation
- will be error free. The author disclaims any warranties, either
- express or implied, including but not limited to any implied
- warranty of merchantability or fitness for any particular
- purpose.
-
- The user agrees to take full responsibility for any selection of
- and any use whatsoever made of the software and documentation.
-
- In no event will the author be liable for any damages whatsoever
- (including without limitation damages for loss of business
- profits, business interruption, loss of business information or
- the like) arising out of the use, interruption in the use of, or
- inability to use this software, even if the author has been
- advised of any possibility or likelihood of such damages.
-
- END OF DOCUMENTATION 8-31-93
-