Crypto-Utils

 view release on metacpan or  search on metacpan

lib/Crypto/Utils/OpenSSL.pm  view on Meta::CPAN

=head2 pkcs

=head3 pkcs12_key_gen

RFC7292 : PKCS12_key_gen

see also openssl/crypto/pkcs12/p12_key.c

    pkcs12_key_gen($password, $salt, $id, $iteration, $digest_name)

    my $macdata_key = pkcs12_key_gen('123456', pack("H*", 'e241f01650dbeae4'), 3, 2048, 'sha256');
    print unpack("H*", $macdata_key), "\n";

=head3 pkcs5_pbkdf2_hmac

RFC2898 : PBKDF2

see also openssl/crypto/evp/p5_crpt2.c 

    my $k = pkcs5_pbkdf2_hmac($password, $salt, $iteration, $digest_name)

    my $pbkdf2_key = pkcs5_pbkdf2_hmac('123456', pack("H*", 'b698314b0d68bcbd'), 2048, 'sha256');

t/23.openssl-pkcs12_key_gen.t  view on Meta::CPAN

#!/usr/bin/perl
use utf8;
use Test::More;
use Crypto::Utils::OpenSSL;

my $macdata_key = pkcs12_key_gen( '123456', pack( "H*", 'e241f01650dbeae4' ),
    3, 2048, 'sha256' );
is(
    $macdata_key,
    pack( "H*",
        '721259F14AAD70B58839F71566B433DA1B8AD08F650F4D02FAAA0B9B095BB51D' ),
    'pkcs12_key_gen'
);

done_testing();



( run in 0.662 second using v1.01-cache-2.11-cpan-6aa56a78535 )