All Packages  Class Hierarchy  This Package  Previous  Next  Index

Class Acme.Crypto.IdeaCipher

java.lang.Object
   |
   +----Acme.Crypto.CryptoUtils
           |
           +----Acme.Crypto.Cipher
                   |
                   +----Acme.Crypto.BlockCipher
                           |
                           +----Acme.Crypto.IdeaCipher

public class IdeaCipher
extends BlockCipher
The IDEA encryption method.

The basic algorithm came from "Applied Cryptography", Bruce Schneier, ISBN 0-471-59756-2.

This is surprisingly fast, for pure Java. On a SPARC 20, wrapped in Acme.Crypto.EncryptedOutputStream or Acme.Crypto.EncryptedInputStream, it does around 7500 bytes/second, slightly faster than Acme.Crypto.DesCipher.

The IDEA(tm) block cipher is covered by patents held by ETH and a Swiss company called Ascom-Tech AG. The Swiss patent number is PCT/CH91/00117, the European patent number is EP 0 482 154 B1, and the U.S. patent number is US005214703. IDEA(tm) is a trademark of Ascom-Tech AG. There is no license fee required for noncommercial use. Commercial users may obtain licensing details from Dieter Profos, Ascom Tech AG, Solothurn Lab, Postfach 151, 4502 Solothurn, Switzerland, Tel +41 65 242885, Fax +41 65 235761.

Fetch the software.
Fetch the entire Acme package.

See Also:
EncryptedOutputStream, EncryptedInputStream

Constructor Index

 o IdeaCipher(byte[])
 o IdeaCipher(String)

Method Index

 o decrypt(byte[], int, byte[], int)
Decrypt a block of eight bytes.
 o encrypt(byte[], int, byte[], int)
Encrypt a block of eight bytes.
 o main(String[])
Test routine.
 o setKey(byte[])
Set the key.

Constructors

 o IdeaCipher
 public IdeaCipher(String keyStr)
 o IdeaCipher
 public IdeaCipher(byte key[])

Methods

 o setKey
 public void setKey(byte key[])
Set the key.

Overrides:
setKey in class Cipher
 o encrypt
 public void encrypt(byte clearText[],
                     int clearOff,
                     byte cipherText[],
                     int cipherOff)
Encrypt a block of eight bytes.

Overrides:
encrypt in class BlockCipher
 o decrypt
 public void decrypt(byte cipherText[],
                     int cipherOff,
                     byte clearText[],
                     int clearOff)
Decrypt a block of eight bytes.

Overrides:
decrypt in class BlockCipher
 o main
 public static void main(String args[])
Test routine.


All Packages  Class Hierarchy  This Package  Previous  Next  Index

ACME Java  ACME Labs