LibWeb::Crypt - Encryption for libweb applications
Crypt::CBC
Crypt::Blowfish (recommended), Crypt::DES or Crypt::IDEA
LibWeb::Class
use LibWeb::Crypt; my $c = new LibWeb::Crypt(); my $cipher = $c->encrypt_cipher( -data => $plain_text, -key => $key, -algorithm => 'Crypt::Blowfish', -format => 'hex' ); my $plain_text = $c->decrypt_cipher( -cipher => $cipher, -key => $key, -algorithm => 'Crypt::Blowfish', -format => 'hex' ); my $encrypted_pass = $c->encrypt_password('password_in_plain_text');
This class provides methods to
encrypt data of arbitrary length into cipher (binary or hex) by using the algorithm provided by Crypt::Blowfish, Crypt::DES or Crypt::IDEA, and chained by using Crypt::CBC,
decrypt ciphers generated by this class,
encrypt plain text password by using the perl's crypt() routine with randomly chosen salt.
The current version of LibWeb::Crypt is available at
http://libweb.sourceforge.net
Several LibWeb applications (LEAPs) have be written, released and are available at
http://leaps.sourceforge.net
encrypt_cipher()
Params:
-data=>, -key=>, -algorithm=>, -format=>
Pre:
-data is the data to be encrypted as cipher,
-data
-key is the private key such the same key is needed to decrypt the cipher (sorry, I do not have a rigorous definition for that right now),
-key
-algorithm must be 'Crypt::Blowfish', 'Crypt::DES' or 'Crypt::IDEA',
-algorithm
-format is the format of the cipher, which must be either 'binary' or 'hex'.
-format
Post:
Encrypt -data and return the cipher.
Note: this makes use of the Crypt::CBC module and therefore can accept data of arbitrary length.
decrypt_cipher()
-cipher=>, -key=>, -algorithm=>, -format=>
-cipher is the cipher to be decrypted,
-cipher
-key is the private key such that it is the same key used to encrypt the original data of -cipher (sorry, I do not have a rigorous definition for that right now),
-algorithm must be 'Crypt::Blowfish', 'Crypt::DES' or 'Crypt::IDEA' and it must match the algorithm used when preparing the cipher,
Decrypt -cipher and return the original data.
encrypt_password()
Usage:
my $encrypted_password = $crypt->encrypt_password($password_in_plain_text);
Encrypts the parameter (usually a password) and returns a 13-character long string using the perl's crypt() routine and randomly chosen salt.
Digest::HMAC, Digest::SHA1, Digest::MD5, Crypt::CBC, Crypt::Blowfish, Crypt::DES, Crypt::IDEA, LibWeb::Admin, LibWeb::Digest, LibWeb::Session.
To install LibWeb::CGI, copy and paste the appropriate command in to your terminal.
cpanm
cpanm LibWeb::CGI
CPAN shell
perl -MCPAN -e shell install LibWeb::CGI
For more information on module installation, please visit the detailed CPAN module installation guide.