Crypto-Utils
view release on metacpan or search on metacpan
ffi/openssl-func.c view on Meta::CPAN
BF_EXPORT unsigned char *read_key(EVP_PKEY *pkey) {
BIGNUM *priv_bn = NULL;
char *priv_hex = NULL;
char *priv = NULL;
size_t priv_len = 0;
EVP_PKEY_get_bn_param(pkey, OSSL_PKEY_PARAM_PRIV_KEY, &priv_bn);
if (priv_bn == NULL) {
EVP_PKEY_get_raw_private_key(pkey, NULL, &priv_len);
priv = OPENSSL_malloc(priv_len);
EVP_PKEY_get_raw_private_key(pkey, priv, &priv_len);
priv_bn = BN_bin2bn(priv, priv_len, NULL);
OPENSSL_free(priv);
}
priv_hex = BN_bn2hex(priv_bn);
BN_free(priv_bn);
return priv_hex;
ffi/openssl-func.c view on Meta::CPAN
unsigned char *priv = NULL;
size_t priv_len;
BIGNUM *priv_bn = NULL;
nid = OBJ_sn2nid(group_name);
priv = OPENSSL_hexstr2buf(priv_hex, &priv_len);
if (priv) {
pkey = EVP_PKEY_new_raw_private_key(nid, NULL, priv, priv_len);
} else {
ctx = EVP_PKEY_CTX_new_id(nid, NULL);
if (ctx) {
EVP_PKEY_keygen_init(ctx);
EVP_PKEY_keygen(ctx, &pkey);
}
}
if (pkey) {
EVP_PKEY_CTX_free(ctx);
t/12.opaque-derive_key_pair.t view on Meta::CPAN
my $seed = pack( "H*",
'5496a9d861b51d9e797e836a130fee901dab7c96eea77f6e65bf1b9e5a44b136' );
my $info = 'OPAQUE-DeriveAuthKeyPair';
my $hash_name = 'SHA256';
my $expand_message_func = \&expand_message_xmd;
my $ec_key_r =
derive_key_pair( $group_name, $seed, $info, "DeriveKeyPair" . $context_string,
$hash_name, $expand_message_func );
#my $skS_bn = $skS->get0_private_key();
is(
BN_bn2hex( $ec_key_r->{priv_bn} ),
'E7DB44B7F7495298770AF98417FDEEC6C8299562325E9330A79EEBF3D2A1A765',
'derive_key_pair'
);
done_testing;
t/16.oprf-derive_key_pair.t view on Meta::CPAN
my $seed = pack( "H*",
'a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3' );
my $info = pack( "H*", '74657374206b6579' );
my $hash_name = 'SHA256';
my $expand_message_func = \&expand_message_xmd;
my $ec_key_r =
derive_key_pair( $group_name, $seed, $info, "DeriveKeyPair" . $context_string,
$hash_name, $expand_message_func );
#my $skS_bn = $skS->get0_private_key();
is(
uc( BN_bn2hex( $ec_key_r->{priv_bn} ) ),
'88A91851D93AB3E4F2636BABC60D6CE9D1AEE2B86DECE13FA8590D955A08D987',
'derive_key_pair'
);
done_testing;
( run in 3.399 seconds using v1.01-cache-2.11-cpan-6aa56a78535 )