The IDEA encryption algorithm in Java

The IDEA encryption algorithm has been developed in 1991 at the ETH in Zurich, Switzerland. IDEA has been patented, but the last patents expired in 2012.

This is a clean open-source Java implementation of IDEA. The file format produced by IdeaFileEncryption.cryptFile() is compatible with that of IDEA V1.1 (ETH version of 1993, written in C). This Java implementation is even a little bit faster than the C implementation when encrypting/decrypting large files.

Source code / API docs / download The main IDEA encryption module Encrypts or decrypts a file with IDEA Command-line interface for encrypting/decrypting files A test program that verifies this implementation against the test vectors published in 1999 A test program for some of the math functions used in the IDEA modules

API documentation: apidocs

Download whole package:

Examples of how to use the command line interface

To encrypt a file:

java -cp idea.jar IdeaCmd -e -k sesame plaintext.txt ciphertext.dat

To decrypt a file:

java -cp idea.jar IdeaCmd -d -k sesame ciphertext.dat plaintext.txt

Author: Christian d'Heureuse (,