You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

运行npx hardhat node出现0308010C:digital envelope routines报错如何解决

报错原因

该报错是Node.js 17及以上版本内置的OpenSSL 3.0移除了对旧加密算法的支持,与你当前使用的Hardhat版本的加密依赖逻辑不兼容导致的,你的Hardhat配置文件本身没有问题。

解决方案

以下方案任选其一即可:

  • 临时生效方案
    运行命令前先在终端执行对应系统的环境变量设置命令:
    • Windows cmd环境:set NODE_OPTIONS=--openssl-legacy-provider
    • Windows PowerShell环境:$env:NODE_OPTIONS="--openssl-legacy-provider"
    • Mac/Linux环境:export NODE_OPTIONS=--openssl-legacy-provider
      执行完成后再运行npx hardhat node即可正常启动,该配置仅在当前终端窗口生效,新开窗口需要重新执行。
  • 项目内永久生效方案
    修改项目的package.json文件,在scripts字段中新增启动命令:
    "scripts": {
      "node": "NODE_OPTIONS=--openssl-legacy-provider hardhat node"
    }
    
    后续直接执行npm run node即可启动节点。如果是Windows原生环境(非WSL),可以先安装cross-env适配跨平台环境变量:
    执行npm install cross-env --save-dev,再将脚本修改为:
    "node": "cross-env NODE_OPTIONS=--openssl-legacy-provider hardhat node"
  • 彻底兼容方案1:降级Node.js版本
    将本地Node.js版本切换到16.x LTS版本即可完全避免该报错,推荐使用nvm工具管理多版本Node.js,切换成本极低。
  • 彻底兼容方案2:升级Hardhat版本
    新版Hardhat已经修复了对高版本Node.js的兼容问题,直接执行npm install hardhat@latest升级到最新版即可,升级时注意同步升级@nomiclabs/hardhat-ethers等相关依赖到兼容版本,避免出现依赖冲突。

内容的提问来源于stack exchange,提问作者Clint Oka

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.28 16:36:04