Fixing 'Digital Envelope Routines Unsupported' Issue on Apple Silicon Processors

6 min read.
Tags: node-js

If you use Node tooling on Apple Silicon and see:

error:0308010C:digital envelope routines::unsupported

it is usually an OpenSSL compatibility mismatch (often with older Webpack stacks and newer Node).

Why this happens

Node 17+ moved to OpenSSL 3, and some older dependencies still expect legacy OpenSSL behavior.

This usually appears during build commands like:

  • npm run build
  • npm run dev
  • older CRA/Webpack setups

Quick workaround command

For temporary local fix:

export NODE_OPTIONS=--openssl-legacy-provider
npm run build

This enables legacy OpenSSL provider for that shell session.

Add to package.json scripts

If your team needs a quick shared fix:

{
  "scripts": {
    "build": "NODE_OPTIONS=--openssl-legacy-provider webpack --mode production"
  }
}

For cross-platform teams, consider using cross-env.

Better long-term fix

  • upgrade Webpack/react-scripts/tooling packages
  • use a Node LTS version compatible with your stack
  • remove legacy provider flag once dependencies are updated

Short-term flag is okay, but dependency upgrade is the proper solution.

Check your Node version

node -v

If you are on a very new Node release with older frontend tooling, this error is more likely.

Latest Posts