Setting a group to an existing EVP_PKEY in OpenSSL 3
    amartin at xtec.com 
    amartin at xtec.com
       
    Mon Oct 24 23:35:15 UTC 2022
    
    
  
Kory,
 
Thanks for your response. I want to preserve the rest of the EC public key params. I did this. I haven’t test yet.
 
OSSL_PARAM* extracted_params = NULL;
char curve_name[64];
OSSL_PARAM* param_ecgroup = NULL;
 
// sigkey is the EVP_PKEY ECDSA public key
 
 
if (EVP_PKEY_todata(sigkey, EVP_PKEY_PUBLIC_KEY, &extracted_params) == 0)
{
       // error 
}
curve_name = OSSL_EC_curve_nid2name(nid));
if (curve_name == NULL)
{
// error
}
if ((param_ecgroup = OSSL_PARAM_locate(params, "group")) != NULL)
{
       OSSL_PARAM_set_utf8_string(param_ecgroup, curve_name);
}
else
{
       // error
}
 
Martin
 
From: Kory Hamzeh <kory at avatarci.com> 
Sent: Monday, October 24, 2022 7:22 PM
To: amartin at xtec.com
Cc: openssl-users at openssl.org
Subject: Re: Setting a group to an existing EVP_PKEY in OpenSSL 3
 
I haven’t done exactly what you are trying, but something similar.
 
 See EVP_PKEY_set_params:
 
https://www.openssl.org/docs/man3.0/man3/EVP_PKEY_set_params.html
 
The specific parm to set the group could be set like this:
 
 OSSL_PARAM_BLD_push_utf8_string(param_bld, "group",                      
                                            curve, 0;
 
 
 
Please note that that I have not tested the above code as my code uses key-from-data. But I think it should work.
 
On Oct 24, 2022, at 2:31 PM, Martin via openssl-users <openssl-users at openssl.org <mailto:openssl-users at openssl.org> > wrote:
 
Hi,
 
How can I set a GROUP to an existing EC type EVP_PKEY in OpenSSL 3?
 
In 1.0.2 I was using this code having the EC_KEY:
 
EC_KEY_set_group(eckey, EC_GROUP_new_by_curve_name(nid));
 
In OpenSSL 3 still EC_GROUP_new_by_curve_name(nid) can be used, but I don’t know how to go from that to set it on the existing key.
 
 
Thanks,
 
Martin
 
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://mta.openssl.org/pipermail/openssl-users/attachments/20221024/00f72e0a/attachment.htm>
    
    
More information about the openssl-users
mailing list