GSP
Quick Navigator

Search Site

Unix VPS
A - Starter
B - Basic
C - Preferred
D - Commercial
MPS - Dedicated
Previous VPSs
* Sign Up! *

Support
Contact Us
Online Help
Handbooks
Domain Status
Man Pages

FAQ
Virtual Servers
Pricing
Billing
Technical

Network
Facilities
Connectivity
Topology Map

Miscellaneous
Server Agreement
Year 2038
Credits
 

USA Flag

 

 

Man Pages
Crypt::OpenSSL::AES(3) User Contributed Perl Documentation Crypt::OpenSSL::AES(3)

Crypt::OpenSSL::AES - A Perl wrapper around OpenSSL's AES library

     use Crypt::OpenSSL::AES;

     my $cipher = new Crypt::OpenSSL::AES($key);

     $encrypted = $cipher->encrypt($plaintext)
     $decrypted = $cipher->decrypt($encrypted)

This module implements a wrapper around OpenSSL. Specifically, it wraps the methods related to the US Government's Advanced Encryption Standard (the Rijndael algorithm).

This module is compatible with Crypt::CBC (and likely other modules that utilize a block cipher to make a stream cipher).

This module is an alternative to the implementation provided by Crypt::Rijndael which implements AES itself. In contrast, this module is simply a wrapper around the OpenSSL library.

The Crypt::Rijndael implementation seems to produce inaccurate results on 64-bit x86 machines. By using OpenSSL, this module aims to avoid architecture specific problems, allowing the OpenSSL maintainers to overcome such issues.

$cipher->encrypt($data)
Encrypt data. The size of $data must be exactly "blocksize" in length (16 bytes), otherwise this function will croak.

You should use Crypt::CBC or something similar to encrypt/decrypt data of arbitrary lengths.

$cipher->decrypt($data)
Decrypts $data. The size of $data must be exactly "blocksize" in length (16 bytes), otherwise this function will croak.

You should use Crypt::CBC or something similar to encrypt/decrypt data of arbitrary lengths.

keysize
This method is used by Crypt::CBC to verify the key length. This module actually supports key lengths of 16, 24, and 32 bytes, but this method always returns 32 for Crypt::CBC's sake.
blocksize
This method is used by Crypt::CBC to check the block size. The blocksize for AES is always 16 bytes.

        use Crypt::CBC

        $cipher = Crypt::CBC->new(
                -key    => $key,
                -cipher => "Crypt::OpenSSL::AES"
        );             

        $encrypted = $cipher->encrypt($plaintext)
        $decrypted = $cipher->decrypt($encrypted)

Crypt::CBC

http://www.openssl.org/

http://en.wikipedia.org/wiki/Advanced_Encryption_Standard

http://www.csrc.nist.gov/encryption/aes/

Need more (and better) test cases.

Tolga Tarhan, <cpan at ttar dot org>

The US Government's Advanced Encryption Standard is the Rijndael Algorithm and was developed by Vincent Rijmen and Joan Daemen.

Copyright (C) 2006 DelTel, Inc.

This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself, either Perl version 5.8.5 or, at your option, any later version of Perl 5 you may have available.

2007-11-16 perl v5.32.1

Search for    or go to Top of page |  Section 3 |  Main Index

Powered by GSP Visit the GSP FreeBSD Man Page Interface.
Output converted with ManDoc.