mirror of
https://github.com/strongswan/strongswan.git
synced 2025-10-15 00:00:16 -04:00
openssl: Report correct key length for EC keys when not using NIST curves
Fixes #688.
This commit is contained in:
parent
8d80528a60
commit
5818467639
@ -181,17 +181,7 @@ METHOD(private_key_t, decrypt, bool,
|
|||||||
METHOD(private_key_t, get_keysize, int,
|
METHOD(private_key_t, get_keysize, int,
|
||||||
private_openssl_ec_private_key_t *this)
|
private_openssl_ec_private_key_t *this)
|
||||||
{
|
{
|
||||||
switch (EC_GROUP_get_curve_name(EC_KEY_get0_group(this->ec)))
|
return EC_GROUP_get_degree(EC_KEY_get0_group(this->ec));
|
||||||
{
|
|
||||||
case NID_X9_62_prime256v1:
|
|
||||||
return 256;
|
|
||||||
case NID_secp384r1:
|
|
||||||
return 384;
|
|
||||||
case NID_secp521r1:
|
|
||||||
return 521;
|
|
||||||
default:
|
|
||||||
return 0;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
METHOD(private_key_t, get_type, key_type_t,
|
METHOD(private_key_t, get_type, key_type_t,
|
||||||
|
@ -179,17 +179,7 @@ METHOD(public_key_t, encrypt, bool,
|
|||||||
METHOD(public_key_t, get_keysize, int,
|
METHOD(public_key_t, get_keysize, int,
|
||||||
private_openssl_ec_public_key_t *this)
|
private_openssl_ec_public_key_t *this)
|
||||||
{
|
{
|
||||||
switch (EC_GROUP_get_curve_name(EC_KEY_get0_group(this->ec)))
|
return EC_GROUP_get_degree(EC_KEY_get0_group(this->ec));
|
||||||
{
|
|
||||||
case NID_X9_62_prime256v1:
|
|
||||||
return 256;
|
|
||||||
case NID_secp384r1:
|
|
||||||
return 384;
|
|
||||||
case NID_secp521r1:
|
|
||||||
return 521;
|
|
||||||
default:
|
|
||||||
return 0;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
Loading…
x
Reference in New Issue
Block a user