Error: error:0308010C:digital envelope routines::unsupported
An old build tool (webpack 4, old react-scripts) uses a hash algorithm that OpenSSL 3 in Node 17+ disables.
Seen on:
Node.js
Meaning
Node 17 switched to OpenSSL 3, which removes MD4 by default. Webpack 4 uses MD4 for hashing, so builds crash.
Common causes
- webpack 4 / react-scripts 4 on Node 17+
- Other tools hashing with legacy algorithms
⚡ Quick fix
- Upgrade to webpack 5 / react-scripts 5+ / Vite
- Temporary: NODE_OPTIONS=--openssl-legacy-provider
- Or use Node 16 for that legacy project
Detailed fix by platform
Node.js
NODE_OPTIONS=--openssl-legacy-provider npm run build
How to diagnose
- Tool — Which bundler version?
- Node — Version 17+?
🧠 Still stuck? Analyze your error
Paste the full message, response headers or stack trace — we'll detect the platform and point to the most likely cause.
Was this page helpful?
Report a correction or suggest an improvement
Last updated 2 Oct 2026