Crypt-Passphrase-Bcrypt-AES
view release on metacpan or search on metacpan
lib/Crypt/Passphrase/Bcrypt/AES.pm view on Meta::CPAN
use Crypt::Passphrase 0.019 -encoder;
use Carp 'croak';
use Crypt::Rijndael 1.16;
my %mode = (
'aes-cfb' => Crypt::Rijndael::MODE_CFB,
'aes-ofb' => Crypt::Rijndael::MODE_OFB,
'aes-ctr' => Crypt::Rijndael::MODE_CTR,
'aes-ecb-pad' => Crypt::Rijndael::MODE_ECB,
'aes-cbc-pad' => Crypt::Rijndael::MODE_CBC,
);
sub new {
my ($class, %args) = @_;
my $peppers = $args{peppers} or croak('No peppers given');
$args{active} //= (sort {; no warnings 'numeric'; $b <=> $a || $b cmp $a } keys %{ $peppers })[0];
my $mode = delete $args{mode} // 'ctr';
my $cipher = "aes-$mode";
croak("No such mode $mode") if not exists $mode{$cipher};
my $self = $class->SUPER::new(%args, cipher => $cipher);
( run in 0.784 second using v1.01-cache-2.11-cpan-e1769b4cff6 )