Conversation
Use one owning KDF interface for HKDF expansion, PBKDF2 and scrypt, sharing provider setup with Argon2. Signed-off-by: Filip Skokan <panva.ip@gmail.com> Assisted-by: Codex
Import RSA public keys through OSSL_DECODER on OpenSSL 3 so the resulting keys stay provider-backed. Preserve the PKCS#1 input structure and the ASN.1 encodings accepted by the legacy decoder. Signed-off-by: Filip Skokan <panva.ip@gmail.com> Assisted-by: Codex
Resolve provider ciphers before serializing private keys and retain the fetched implementation across encoding configuration copies and async key generation. Keep format-specific restrictions in the serializers. Signed-off-by: Filip Skokan <panva.ip@gmail.com> Assisted-by: Codex
Pass group names through EC key generation and report provider names in key details without requiring an OpenSSL NID. Preserve established curve aliases and synchronous invalid-curve errors. Filter built-in curves through EC parameter generation and refresh getCurves() results when FIPS properties change. Signed-off-by: Filip Skokan <panva.ip@gmail.com> Assisted-by: Codex
Retrieving asymmetricKeyDetails only needs the modulus, public exponent, and RSA-PSS restrictions. Add a public-only Rsa view so provider-backed keys do not also extract private components or probe additional primes. Signed-off-by: Filip Skokan <panva.ip@gmail.com> Assisted-by: Codex
|
Review requested:
|
|
Benchmark GHA (crypto / hkdf.js): https://github.com/nodejs/node/actions/runs/35355635938 Results
Benchmark results:
|
|
Benchmark GHA (crypto / key-details): https://github.com/nodejs/node/actions/runs/35355599035 Results
Benchmark results:
|
Codecov Report❌ Patch coverage is
Additional details and impacted files@@ Coverage Diff @@
## main #66108 +/- ##
==========================================
- Coverage 92.75% 90.28% -2.47%
==========================================
Files 421 790 +369
Lines 190416 271883 +81467
Branches 29161 51909 +22748
==========================================
+ Hits 176627 245482 +68855
- Misses 13461 16912 +3451
- Partials 328 9489 +9161
🚀 New features to boost your workflow:
|
Query salt length and digest restrictions instead of serializing the key to SPKI and parsing its algorithm identifier. A readable salt length distinguishes restricted keys, including empty parameter sequences, from unrestricted keys. Signed-off-by: Filip Skokan <panva.ip@gmail.com> Assisted-by: Codex
Exercise getCiphers(), getHashes(), getMacs() and getCurves() through one shared cache/FIPS driver and one snapshot fixture. Keep defensive copies, generation changes, rejected and idempotent toggles, and cross-worker invalidation consistent across the lists. Signed-off-by: Filip Skokan <panva.ip@gmail.com> Assisted-by: Codex
46845b9 to
6515be8
Compare
This comment was marked as outdated.
This comment was marked as outdated.
This comment was marked as outdated.
This comment was marked as outdated.
This comment was marked as outdated.
This comment was marked as outdated.
Signed-off-by: Filip Skokan <panva.ip@gmail.com> Assisted-by: Codex
Use
EVP_KDFfor HKDF expansion, PBKDF2 and scrypt, sharing the wrapper with Argon2. Use provider APIs for PKCS#1 public-key decoding, private-key cipher lookup and EC group names.Read RSA key details without fetching private components or serializing RSA-PSS keys. Filter built-in curves by provider availability and consolidate cache/FIPS coverage across the algorithm-list getters.