Apache-AppSamurai
view release on metacpan or search on metacpan
lib/Apache/AppSamurai/Session/Serialize/CryptBase64.pm view on Meta::CPAN
# Build the full key by concatenating server and auth key.
my $k = $session->{args}->{ServerKey} . $session->{args}->{key};
if (!defined($session->{args}->{SerializeCipher})) {
# Currently, a pre-configured crypt module is required.
# find_crypt() could just as easily do it here, but making the
# extenal code calling this module define it seems more appropriate.
die "No session SerializeCipher defined! Configure one of: " . join(',', @allowedciphers);
# Check passed in cipher against list of supported ciphers.
# (No, I will not allow you to use Crypt::DES. So sorry.)
} elsif (!exists($allowedcl{$session->{args}->{SerializeCipher}})) {
die "Bad session SerializeCipher defined: \"" . $session->{args}->{SerializeCipher} . "\". CryptBase64 requires one of: " . join(',', @allowedciphers);
}
# Only allow a specific set of
# Try to setup the encryptor. (Note - key and block sizes are NOT
# hardcoded below. The default IV generator from Crypt::CBC is used.)
my $c = Crypt::CBC->new(
-key => $k,
-cipher => $session->{args}->{SerializeCipher},
( run in 0.265 second using v1.01-cache-2.11-cpan-9a3d99fc6dc )