我的项目使用电子3.1.13,并且下面的代码运行良好。
class MessageEncryption {
private ec = crypto.createECDH('secp256k1');
private key = this.ec.generateKeys();
private shared;
getPublicKey() {
return this.key;
}
setSharedKey(key) {
this.shared = this.ec.computeSecret(key);
}
}
但是,当我将电子版升级到4.0.0+时,会出现错误。
Uncaught Error: Failed to create EC_KEY using curve name
所以我运行了crypto.getCurves()
,结果显示如下。
Array(4)
0: "prime256v1"
1: "secp224r1"
2: "secp384r1"
3: "secp521r1"
'secp256k1'不在列表中。 :(
我想同时使用高版本的电子和'secp256k1',有解决方案吗?
谢谢!
crypto
模块是Node.js的一部分,而不是Electron。如果该模块没有您需要的模块,则只需导入另一个模块即可。
[尝试一些加密模块来确定它们是否具有secp256k1
:
https://www.npmjs.com/search?q=crypt
或直接搜索secp256k1
: