home *** CD-ROM | disk | FTP | other *** search
- Super IDEA v1.0
- Freebee encypherment for the paranoid cheapos (that's me!) and other
- cool people.
-
- IDEA stands for International Data Encryption Algorithm
- It was invented by Xuejia Lai and James Massey in Switzerland
- It's a private key symmetric block algorithm, and is thought to be
- very secure, although it is still too new to have undergone the
- scrutiny that other algorithms, notably DES, have endured.
-
- This manifestation of the algorithm is adapted pretty much wholesale from
- Dr. Dobbs Journal #208 December 1993
-
-
- OVERVIEW OF IDEA
-
- The algorithm operates on 64-bit data blocks, divided into 4 16-bit
- subblocks. For DOS files, it packs two characters into a 16-bit word
- and treats 4 such words as the subblocks. Since not all files have the right
- length for this, a header is used to tell IDEA's decrypter how long the file
- will be. Thus encrypted files are a few bytes longer than they started. They
- are of course put back to normal when decrypted.
-
-
- SIMPLIFIED EXPLANATION OF PROGRAM OPERATION
-
- The key is a 128-bits. This program uses an algorithym to generate the key.
- It takes the key the user inputs and creates the following:
- (all letters herein are representations, one letter for each byte. This is
- not to say that the actual XOR of a and h is i)
- ____________________________________________________
- | usrkey | shftkey | modkey | modshftkey |
- | abcdefgh | habcdefg | (see below) | (see below)<-+- final key
- +----------+----------+-------------+--------------+
-
- MODKEY MAKEUP: MODSHFTKEY MAKEUP:
- a ^ h = i The eight bits in each character
- b ^ a = j Hence, modkey are shifted such that, if the bitcode
- c ^ b = k is equal to was 01011011 (random example--not an actual piece of code)
- d ^ c = l ijklmnop it would be shifted to 10101101. This yields
- e ^ d = m qrstuvwx (an identifier for the new pw, not what it actually
- f ^ e = n would be).
- g ^ f = o
- h ^ g = p
-
- usrkey : the key the user put in. Written as abcdefgh because all are 8 chars.
- if the user's key is shorter than eight chars, zeros are used to pad it.
- this does not make the user need to change the key--it is automatically padded.
- if a key is too long, it is truncated in the same way. You can encrypt a file with
- abcdefghijk, but only abcdefgh will be used. You can even enter abcdefghijk when
- decrypting it, because it is also truncated then.
-
- shftkey: the key after it is shifted to the right
-
- modkey : found by XORing the shftkey and the usrkey together.
-
- modshftkey : the modkey is shifted again to the right.
-
-
- OTHER INFORMATION
-
- I have also included the source code in the file called source.zip. Please feel free to
- make your own modifications of this and distribute it if you desire. Remember--trying to
- keey the algorithm you use secret is worse for you in the long run--the more people that
- see it, the faster it will be analyzed and errors that you overlooked will be found.
-
-
- USAGE
-
- usage is "idea <filename.ext> <e|d[w]> <key>"
- <e|d[w]> stands for either an "e" or a "d", instructing whether to
- e-ncypher or d-ecypher, plus an optional "w", which tells
- IDEA to overwrite the original file with the encyphered
- data. Leaving "w" off creates a new file called "filename.enc" or
- "filename.dec" (if decyphering) where "filename" is the same as the
- input file. Overwriting is more secure--it destroys old data--but may
- not be what you want.
- key is a word up to 8 characters BUT NOT MORE!!! extra characters
- will be truncated off of the key, and a warning will be displayed.
- Note that the truncated key will be used, and you can enter the long
- key when the time comes to decrypt the file. It will just be truncated
- again.
-
- Its not my code so don't send me money. This is freeware. (The IDEA algorithm is in
- fact patented, but it can be freely used and distributed for non-commercial
- use. The patent is held by Ascom-Tech AG in switzerland, tel: +41 65 242-885)
- If you need to contact me, I can be found at <kwantam@mailhost.net>.
-
- Please note that use of this program is done with no insurance from me that
- it will work or anything----use it at your own risk. I've bug checked it
- and everything and it looks good, and the algorithm is straight out of
- Dr Dobbs Journal (#208), but I'm not gonna be responsible for failure. If
- you have a real and serious need for cryptography, please at the very least
- look over the source code---you'd be better advised to get a professional
- program. While we're on this topic, please do not forget your key!!! a
- brute-force attack on this algorithm "requires 2^128 encryptions to recover
- the key.....a billion chips testing a billion keys a second would take 10^13
- years (the universe has only existed for 1/100th of that time) to break IDEA,"
- according to Dr. Dobbs Journal #208 p.54. For even greater security compress
- the file(s) you are encrypting with PKZIP (NO PASSWORD) and then use this program
- to encrypt the zip file. This limits a cryptanalyst's ability to look for
- repetition in the cyphertext.
-
-
- Thanks for choosing Super IDEA v1.0
- Regards,
- KwAnTAM_PoZeEtroN
- <kwantam@mailhost.net>
- 01/19/96