DOC HOME SITE MAP MAN PAGES GNU INFO SEARCH PRINT BOOK
 

IDEA(3)





NAME

       IDEA - Perl interface to IDEA block cipher


SYNOPSIS

           use Crypt::IDEA;


DESCRIPTION

       This perl extension is an implementation of the IDEA block cipher algo-
       rithm.  The module implements the Crypt::BlockCipher interface, which
       has the following methods

       blocksize =item keysize =item encrypt =item decrypt


FUNCTIONS

       blocksize
           Returns the size (in bytes) of the block cipher.

       keysize
           Returns the size (in bytes) of the key.

       new
                   my $cipher = new IDEA $key;

           This creates a new IDEA BlockCipher object, using $key, where $key
           is a key of "keysize()" bytes.

       encrypt
                   my $cipher = new IDEA $key;
                   my $ciphertext = $cipher->encrypt($plaintext);

           This function encrypts $plaintext and returns the $ciphertext where
           $plaintext and $ciphertext should be of "blocksize()" bytes.

       decrypt
                   my $cipher = new IDEA $key;
                   my $plaintext = $cipher->decrypt($ciphertext);

           This function decrypts $ciphertext and returns the $plaintext where
           $plaintext and $ciphertext should be of "blocksize()" bytes.


EXAMPLE

               my $key = pack("H32", "0123456789ABCDEF0123456789ABCDEF");
               my $cipher = new IDEA $key;
               my $ciphertext = $cipher->encrypt("plaintex");  # NB - 8 bytes
               print unpack("H16", $ciphertext), "\n";


SEE ALSO

       Crypt::DES

       Bruce Schneier, Applied Cryptography, 1995, Second Edition, published
       by John Wiley & Sons, Inc.


COPYRIGHT

       This implementation is copyright Systemics Ltd ( http://www.sys-
       temics.com/ ).

       The IDEA algorithm is patented in Europe and the United States by
       Ascom-Tech AG.

       Module altered on 22 May 1999 to allow functionality with perl -MCPAN,
       Changes by Dave Paris  (edited lib paths).

perl v5.8.6                       1999-06-07                           IDEA(3)

Man(1) output converted with man2html