GSP
Quick Navigator

Search Site

Unix VPS
A - Starter
B - Basic
C - Preferred
D - Commercial
MPS - Dedicated
Previous VPSs
* Sign Up! *

Support
Contact Us
Online Help
Handbooks
Domain Status
Man Pages

FAQ
Virtual Servers
Pricing
Billing
Technical

Network
Facilities
Connectivity
Topology Map

Miscellaneous
Server Agreement
Year 2038
Credits
 

USA Flag

 

 

Man Pages
IDEA(1) FreeBSD General Commands Manual IDEA(1)

idea - encrypt and decrypt using IDEA

idea
[ -e | -d ] [ -r ] [ -ecb | -cbcN | -cfbN | -ofbN ]
( -k keyString | -K keyHexString )
[ inputFile [ ouputFile ] ]
idea
[ -h | -H ] [ -tan | -abr ]
[ -k keyString | -K keyHexString ]
[ inputFile [ [ ouputFile ] hashvalFile ]

Idea reads inputFile and writes the en/decrypted data to outputFile or writes the hash value to hashvalFile. If file name is not given in command line, idea uses standard input or output. If the input file name is given as '-', idea reads from the standard input.

IDEA (International Data Encryption Algorithm) is a block cipher developed by Dr. Xuejia Lai and Prof. Dr. J. L. Massey at the Swiss Federal Institute of Technology.

-e
Encrypt data. (default)
-d
Decrypt data.
-r
InputFile is a raster-file.
-k
Key is specified with keyString.
-K
Key and initial values are specified with keyHexString.
-h
Compute a 128 bit hash value from the input data. The hash value is written to hashvalFile (or standard output).
-H
Compute a 128 bit hash value from the input data. The input is copied to outputFile (or standard output) and the hash value is written to hashvalFile (or standard error).
Notation:

N = interleave factor (1 is default)
z = 128 bit key
x[i] = 64 bit plaintext block
y[i] = 64 bit ciphertext block
x[1]..x[L] = plaintext (last block is filled with zeros)
x[L+1] = length of plaintext in bits
y[1]..y[L+1]= ciphertext
IDEA(z, .) = encryption function
IIDEA(z, .) = decryption function
x = IIDEA(z, IDEA(z ,x))
Encryption / Decrypion Modes:
-ecb
electronic code book mode
y[i] = IDEA(z, x[i])
x[i] = IIDEA(z, y[i])
-cbc
cipher block chaining mode (cbc1 is default)
y[i] = IDEA(z, x[i] ^ y[i-N])
x[i] = IIDEA(z, y[i]) ^ y[i-N]
-cfb
ciphertext feedback mode
y[i] = x[i] ^ IDEA(z, y[i-N])
x[i] = y[i] ^ IDEA(z, y[i-N])
-ofb
output feedback mode
h[i] = IDEA(z, h[i-N])
y[i] = x[i] ^ h[i]
x[i] = y[i] ^ h[i]
Hash Functions:

If no key is given, idea uses the all zero key.
hash value = h[L+1] * 2**64 + g[L+1]
h[0] = z / 2**64
g[0] = z % 2**64
-tan
tandem DM-scheme (default)
w = IDEA(g[i-1] * 2**64 + x[i], h[i-1])
h[i] = h[i-1] ^ w
g[i] = g[i-1] ^ IDEA(x[i] * 2**64 + w, g[i-1])
-abr
abreast DM-scheme
h[i] = h[i-1] ^ IDEA(g[i-1] * 2**64 + x[i], h[i-1])
g[i] = g[i-1] ^ IDEA(x[i] * 2**64 + h[i-1], ~ g[i-1])
Key Formats:

keyHexString = { '0'..'9' | 'a'..'f' | 'A'..'F' | ':' }
keyHexString = z:y[1-N]:y[2-N]:y[3-N]..
keyString = { '!'..'~' } = z

To encrypt and decrypt a file in cipher block chaining mode with an interleave factor of 8:

idea -e -cbc8 -K 12345:67:89::ab:cDEf data data.cr
idea -d -cbc8 -K 12345:67:89::ab:cDef data.cr data.ori
data and data.ori are identical

To compute the hash value with tandem DM-scheme:

idea -h data

To compute the hash value and encrypt the data in one step:

idea -Hk "k e y" data | idea -K 123:9a::eF - data.cr

IDEA is registered as the international patent WO 91/18459 "Device for Converting a Digital Block and the Use thereof". For commercial use of IDEA, one should contact

ASCOM TECH AG
Freiburgstrasse 370
CH-3018 Bern, Switzerland

Richard De Moliner (demoliner@isi.ee.ethz.ch)
Signal and Information Processing Laboratory
Swiss Federal Institute of Technology
CH-8092 Zurich, Switzerland

This program is at most as strong as IDEA itself. So, we urge the user to use this program only after he has assured himself that IDEA is strong enough AND he has read the source code of this program and its libraries AND he has compiled the program himself with a troyan-free compiler. WE DO NOT GUARANTEE THAT THIS PROGRAM IS A DECENT ENCRYPTION PROGRAM.
November 16, 1993

Search for    or go to Top of page |  Section 1 |  Main Index

Powered by GSP Visit the GSP FreeBSD Man Page Interface.
Output converted with ManDoc.