diff options
author | Divy Srivastava <dj.srivastava23@gmail.com> | 2024-08-23 09:36:40 -0700 |
---|---|---|
committer | GitHub <noreply@github.com> | 2024-08-23 22:06:40 +0530 |
commit | 38bc4021e633183f33453a6557cedae4e6ee91d0 (patch) | |
tree | 071d1ecffdb6d73a1d18b146c9277a0410b14848 /ext/crypto/import_key.rs | |
parent | d9a7b30d1fa93dc742c9a3ee0fe8666be7ce1c0f (diff) |
fix(ext/crypto): throw DataError for invalid EC key import (#25181)
Fixes https://github.com/denoland/deno/issues/20931
Diffstat (limited to 'ext/crypto/import_key.rs')
-rw-r--r-- | ext/crypto/import_key.rs | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/ext/crypto/import_key.rs b/ext/crypto/import_key.rs index 7b06cae99..88265a2cd 100644 --- a/ext/crypto/import_key.rs +++ b/ext/crypto/import_key.rs @@ -689,7 +689,8 @@ fn import_key_ec( let rng = ring::rand::SystemRandom::new(); // deserialize pkcs8 using ring crate, to VALIDATE public key - let _private_key = EcdsaKeyPair::from_pkcs8(signing_alg, &data, &rng)?; + let _private_key = EcdsaKeyPair::from_pkcs8(signing_alg, &data, &rng) + .map_err(|_| data_error("invalid key"))?; // 11. if named_curve != pk_named_curve { |