wolfssl: Reject EC keys with explicitly encoded parameters
These are not allowed in X.509 certificates according to RFC 5480 and some newer validations apparently explicitly check for this. Note that WolfSSL rejects such keys, by default. Only when compiled with WOLFSSL_NO_ASN_STRICT are they accepted.
This commit is contained in:
1 parent
6f0cd19fd6
commit
a69184fb9d
2 files changed
+3
-2
No files matched your search
@@ -449,7 +449,8 @@ wolfssl_ec_private_key_t *wolfssl_ec_private_key_load(key_type_t type,
|
||||
}
|
||||
|
||||
idx = 0;
|
||||
if (wc_EccPrivateKeyDecode(key.ptr, &idx, &this->ec, key.len) < 0)
|
||||
if (wc_EccPrivateKeyDecode(key.ptr, &idx, &this->ec, key.len) < 0 ||
|
||||
this->ec.idx == -1)
|
||||
{
|
||||
destroy(this);
|
||||
return NULL;
|
||||
|
||||
@@ -378,7 +378,7 @@ wolfssl_ec_public_key_t *wolfssl_ec_public_key_load(key_type_t type,
|
||||
|
||||
idx = 0;
|
||||
ret = wc_EccPublicKeyDecode(blob.ptr, &idx, &this->ec, blob.len);
|
||||
if (ret < 0)
|
||||
if (ret < 0 || this->ec.idx == -1)
|
||||
{
|
||||
destroy(this);
|
||||
return NULL;
|
||||
|
||||
Reference in new issue
Block a user