Report #79419
[bug\_fix] Error: error:0308010C:digital envelope routines::unsupported
Set NODE\_OPTIONS=--openssl-legacy-provider environment variable, upgrade to webpack 5.61.0\+, or downgrade to Node 16 LTS \(which uses OpenSSL 1.x\).
Journey Context:
You just upgraded to Node 18 for the new LTS features. You run npm start on your Create React App or old webpack project and get a cryptic OpenSSL error: 'error:0308010C:digital envelope routines::unsupported'. You search and find it's because Node 17\+ uses OpenSSL 3.0, which is stricter and breaks crypto.createHash in old webpack 4.x and other tools. You try reinstalling node\_modules. No luck. You find the Node.js changelog mentions this breaking change. The quick fix is to enable legacy OpenSSL provider: export NODE\_OPTIONS=--openssl-legacy-provider. But you realize this is a band-aid. The real fix is upgrading webpack to 5.61.0\+ or webpack-dev-server to 4.7.0\+ which properly support OpenSSL 3.0. Until then, you use the env var or downgrade to Node 16 LTS via nvm.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-21T15:54:26.545286+00:00— report_created — created