CREATE-ECDH · CVE-2026-129319 · Package
NO FIX YET · SEE WHAT TO DO
create-ecdh's JavaScript fallback for Diffie-Hellman key exchange does not check peer public keys before using them. An attacker who can send keys to a party reusing a static private key can recover that key over repeated attempts, or force a predictable shared secret on ed25519 and curve25519.
first public Nov 14, 2026 · 1 source
Check it with your coding agent
It reads this page and tells you if your code or app is affected.
Projects that bundle create-ecdh for browsers, or run it on old Node.js versions without a working native crypto.createECDH, and that reuse a static private key while accepting public keys from others. Modern Node.js re-exports the native implementation, which is not affected, so apps relying only on that path can skip it.
Not affected if native-node-crypto, no-static-keys, no-untrusted-peers
Who cares browser, crypto, javascript, npm
npm ls create-ecdh; versions 4.0.4 and below are affected.4.0.5.create-ecdh is a browserifiable implementation of Node.js crypto.createECDH. In versions 4.0.4 and below, the JavaScript implementation (browser.js, used by browser bundlers and on Node.js versions without a working native crypto.createECDH) did not validate peer public keys in ECDH.prototype.computeSecret or ECDH.prototype.setPublicKey. The peer point was multiplied by the local private key without checking that it was on the configured curve or in its prime-order subgroup. An attacker who can submit public keys to a party that reuses a static private key can perform an invalid-curve or small-subgroup attack and recover the private key modulo small factors, eventually recovering the full key via the Chinese Remainder Theorem. For the ed25519 and curve25519 curves, low-order points were also accepted, which could force a predictable shared secret. On modern Node.js, create-ecdh re-exports the native implementation, which is not affected. This issue is fixed in version 4.0.5.
Are you affected?
Ask from here. InfraStack checks the affected versions against your stack and answers in your inbox.
InfraStack checks the affected versions against your stack and answers in Slack, with the evidence and the fix.
InfraStack checks it against your stack and answers on your report, with the evidence and the fix.
This page as .md · .json · CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:N/VC:H/VI:N/VA:N/SC:N/SI:N/SA:N/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X
NVD data is provided by NIST and is public domain. Posts quoted belong to their authors.