Mcrypt man page on OpenSuSE

Man page or keyword search:  
man Server   25941 pages
apropos Keyword Search (all sections)
Output format
OpenSuSE logo
[printable version]

Mcrypt(3)	      User Contributed Perl Documentation	     Mcrypt(3)

NAME
       Mcrypt - Perl extension for the Mcrypt cryptography library

SYNOPSIS
	 use Mcrypt;

	 # Procedural routines

	 $td = Mcrypt::mcrypt_load($algorithm, $algorithm_dir,
				   $mode, $mode_dir);

	 Mcrypt::mcrypt_get_key_size($td);   # in bytes
	 Mcrypt::mcrypt_get_iv_size($td);    # in bytes
	 Mcrypt::mcrypt_get_block_size($td); # in bytes

	 Mcrypt::mcrypt_init($td, $key, $iv);

	 $encryptedstr = Mcrypt::mcrypt_encrypt($td, $decryptedstr);
	 $decryptedstr = Mcrypt::mcrypt_decrypt($td, $encryptedstr);

	 Mcrypt::mcrypt_end($td);

	 # Object-oriented methods

	 $td = Mcrypt->new( algorithm => $algorithm,
			    mode => $mode );

	 $keysize = $td->{KEY_SIZE};
	 $ivsize  = $td->{IV_SIZE};
	 $blksize = $td->{BLOCK_SIZE};

	 $td->init($key, $iv);

	 $encryptedstr = $td->encrypt($decryptedstr);
	 $decryptedstr = $td->decrypt($encryptedstr);

	 # If the $td goes out of context,
	 # the destructor will do this for you
	 $td->end();

DESCRIPTION
       This module wraps the libmcrypt encryption library for easy and
       convenient use from within perl.	 Encryption and decryption using a
       variety of algorithms is as easy as a few simple lines of perl.

Exported constants
       The predefined groups of exports in the use statements are as follows:

       use Mcrypt qw(:ALGORITHMS);

       Exports the BLOWFISH DES 3DES GOST CAST_128 XTEA RC2 TWOFISH CAST_256
       SAFERPLUS LOKI97 SERPENT RIJNDAEL_128 RIJNDAEL_192 RIJNDAEL_256 ENIGMA
       ARCFOUR WAKE libmcrypt algorithms.  See the mcrypt(3) man page for more
       details.

       use Mcrypt qw(:MODES);

       Exports the CBC ECB CFB OFB bOFB STREAM modes of encryption.  See the
       mcrypt(3) man page for more details.

       use Mcrypt qw(:FUNCS);

       Exports the following functions: mcrypt_load, mcrypt_unload,
       mcrypt_init, mcrypt_end, mcrypt_encrypt, mcrypt_decrypt,
       mcrypt_get_block_size, mcrypt_get_iv_size, mcrypt_get_key_size.

EXAMPLES
	 # Procedural approach:
	 # create an ecryption descriptor:
	 #   ALGORITHM: blowfish (256 bit key + 16 byte IV)
	 #   MODE:	cfb
	 # The user application has set:
	 #   $method to either "encrypt" or "decrypt"
	 #   $infile to the input filename
	 #   $outfile to the output filename
	 my($td) = Mcrypt::mcrypt_load( Mcrypt::BLOWFISH, '',
					Mcrypt::CFB, '' );
	 my($key) = "32 bytes of your apps secret key";	 # secret key
	 my($iv) = "16 bytes of rand"; # shared initialization vector
	 Mcrypt::mcrypt_init($td, $key, $iv) || die "Could not initialize td";
	 print Mcrypt::mcrypt_encrypt($td, $_) while(<>);
	 Mcrypt::mcrypt_end($td);

	 # OO approach of the above except decrypting
	 my($td) = Mcrypt->new( algorithm => Mcrypt::BLOWFISH,
				mode => Mcrypt::CFB,
				verbose => 0 );
	 my($key) = "k" x $td->{KEY_SIZE};
	 my($iv) = "i" x $td->{IV_SIZE};
	 $td->init($key, $iv);
	 print $td->decrypt($_) while (<>);
	 $td->end();

AUTHOR
       Theo Schlossnagle <jesus@omniti.com>

SEE ALSO
       The libmcrypt man page: mcrypt(3).  Other libmcrypt information is
       available at http://mcrypt.hellug.gr/.

perl v5.18.1			  2013-09-27			     Mcrypt(3)
[top]

List of man pages available for OpenSuSE

Copyright (c) for man pages and the logo by the respective OS vendor.

For those who want to learn more, the polarhome community provides shell access and support.

[legal] [privacy] [GNU] [policy] [cookies] [netiquette] [sponsors] [FAQ]
Tweet
Polarhome, production since 1999.
Member of Polarhome portal.
Based on Fawad Halim's script.
....................................................................
Vote for polarhome
Free Shell Accounts :: the biggest list on the net