Repository navigation
Conversation
Honor requested primality check counts with provider-backed OpenSSL. Support empty passphrases for encrypted SEC1 PEM output. Assisted-by: Codex Signed-off-by: Brad Anderson <brad@sankatygroup.com>
Collaborator
|
Review requested:
|
Contributor
|
Welcome to Node.js, and thank you for your first contribution! Before review, please take a moment to read:
Please make sure every commit is signed off. For a first pull request, GitHub Actions require collaborator approval and Jenkins CI must be started by a collaborator or triager, so an initial wait is normal. |
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## main #67039 +/- ##
==========================================
- Coverage 92.96% 90.65% -2.32%
==========================================
Files 428 797 +369
Lines 195232 278268 +83036
Branches 30197 53514 +23317
==========================================
+ Hits 181500 252253 +70753
- Misses 13405 16391 +2986
- Partials 327 9624 +9297 🚀 New features to boost your workflow:
|
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Fix two provider-backed ncrypto behaviors:
BN_check_prime()call. Preserve cancellation and error propagation, and handle allocation failure.Adds a public API regression for empty/binary SEC1 passphrases and missing/incorrect passwords, plus cctests for requested prime-check counts and cancellation during a repeated check. The new empty-passphrase, count, and repeated-check cancellation assertions fail on the unpatched implementation.
Validation at
f1c2aab89cbd0005c928f838390b5844aef1e6ccon macOS with the built Node v27.0.0-pre and bundled OpenSSL 4.1.0:make -j8 node cctest: 298/298 cctests pass.out/Release/cctest --gtest_filter='NodeCrypto.BignumPrime*': 2/2 pass.test-crypto-key-export-sec1-passphraseand existingtest-crypto-keygen-missing-oidJavaScript tests: 2/2 pass.git diff --checkpass.Proposed here first at the request of the ncrypto maintainers in nodejs/ncrypto#54. Explicit EC parameter handling already works on current Node and is excluded from this port.