Cryptix Library for Perl (v1.1)



Description

This library contains a suite of cryptographic and mathematical modules for Perl. Many 
of the more CPU intensive algorithms have
been implemented in C as Perl extensions. 

Features

Perl extensions

All of the following have been implemented as Perl extensions in C: 

      Crypt::Blowfish module (Blowfish implementation by A.M. Kuchling). 
      Crypt::DES module (DES implementation by Eric Young). 
      Crypt::IDEA module. 
      Crypt::MD5 module (based on an implementation by Neil Winton and Data Security, Inc.) 
      Crypt::SHA module (based on an implementation by Uwe Hollerbach and based on code from NIST and Peter C. Gutmann) 
      Math::BigInteger module (based on code from Eric Young). 
      This module implements arbitrary length integers and some associated mathematical functions. 
      Math::PRSG - Pseudo random sequence generator 
      This module implements a 160 bit LFSR for use in generating pseudo random sequences. 
      Math::TrulyRandom module, based on code from Don Mitchell and Matt Blaze (AT&T). 
      This module generates "truly random" numbers, based on interrupt timing discrepancies. 

Perl modules

All of the following have been implemented in Perl: 

      Crypt::CBC module 
      This module implements CBC block cipher mode. 
      Crypt::CFB module 
      This module implements CFB block cipher mode. 
      Crypt::CSRandomStream module 
      This module implements a cryptographically secure random stream. It implements the Stream::DataInput interface. 
      Crypt::DES3EDE module 
      This module implements triple DES (EDE mode). 
      Crypt::HashMD5 
      This module implements an MD5 hash, which derives from Crypt::MessageDigest. 
      Crypt::HashSHA 
      This module implements an SHA hash, which derives from Crypt::MessageDigest. 
      Crypt::MessageDigest 
      This module implements the Crypt::MessageDigest base class. 
      Crypt::RSAKey 
      This module implements the RSA key base class. 
      Crypt::RSAKeyGen 
      This module is used for the generation of RSA key pairs. 
      Crypt::RSAPublicKey 
      This module implements an RSA public key, which derives from Crypt::RSAKey. 
      Crypt::RSASecretKeyPair 
      This module implements an RSA public/secret key pair, which derives from Crypt::RSAKey. 
      Math::MPI module 
      This module implements the reading and writing of Philip Zimmermans MPI format large integers. 
      Math::PseudoRandomStream module 
      This module implements a pseudo random data stream. It implements the Stream::DataInput interface. 
      Math::Random module 
      This module contains a collection of various random number routines. 
      Math::TestPrime module 
      This module is used to test the primality of an instance of Math::BigInteger. 
      Stream::DataEncoding 
      Stream::DataInput 
      Stream::DataOutput 
      Stream::FileInput 
      Stream::FileOutput 
      Stream::Streamable 
      Stream::StringInput 
      Stream::StringOutput 

Copyright

This library includes (or is derived from) software developed by (and owned by) the 
following: 

      Peter C. Gutmann 
      Uwe Hollerbach <uh@alumni.caltech.edu> 
      A.M. Kuchling 
      Don Mitchell and Matt Blaze (AT&T) 
      NIST 
      RSA Data Security, Inc. 
      Neil Winton <N.Winton@axion.bt.co.uk> 
      Eric Young <eay@mincom.oz.au> 


Other parts of the library are covered by the following licence: 

Copyright � 1995, 1996 Systemics Ltd (http://www.systemics.com/) All rights reserved.