密钥 pem?"/>
如何使用节点中的加密 ECDH 模块从文件加载 EC 密钥 pem?
当我用加密模块加载 ECDH 私钥时,出现以下错误:
node:internal/crypto/diffiehellman:231
this[kHandle].setPrivateKey(key);
^
RangeError: Private key is not valid for specified curve.
at ECDH.setPrivateKey (node:internal/crypto/diffiehellman:231:17)
......
code: 'ERR_CRYPTO_INVALID_KEYTYPE'
}
私钥创建执行
openssl ecparam -name prime256v1 -genkey -noout -out "private_key.pem"
我试过以下方法:
// private_key.pem
-----BEGIN EC PRIVATE KEY-----
MHcCAQEEIDuwn+0qX7ZDCOjQPxBNNn9nr/OLWptW+kwlJcb60q4EoAoGCCqGSM49
AwEHoUQDQgAEV8swcnlrvUuuQ1M9iyLiGfSuAkC2xJa6gK3wQyemV3LsiflS5bDw
ce4oSTzRtVfyFElm3jv0pKxMj7uK7/YCMA==
-----END EC PRIVATE KEY-----
// index.js
const ecdh = new crypto.createECDH('prime256v1')
ecdh.setPrivateKey(fs.readFileSync('./private_key.pem'), 'utf8')
回答如下:
更多推荐
如何使用节点中的加密 ECDH 模块从文件加载 EC 密钥 pem?
发布评论