2017-04-21 44 views
0

我试图使用ecdsa模块使用加密ecdh私钥签署某些数据。我的代码如下:无法使用节点js中的ecdsa模块进行签名

shaMsg = crypto.createHash('sha256').update(myData).digest(); 
signed = ecdsa.sign(shaMsg, myECDHKey); 

我面临着以下问题:

ERROR: Server - Caught exception: Error: Expected property "1" of type BigInteger, got Buffer

谁能帮助我?

回答

1

由于我没有收到任何回答,我想与其他模块,并得到我想要的东西与elliptic模块:

var EC = require("elliptic").ec; 
var ec = new EC("secp256k1"); 

var shaMsg = crypto.createHash("sha256").update(myData.toString()).digest(); 
var mySign = ec.sign(shaMsg, privateKey, {canonical: true}); 

我希望它可以帮助别人。

0

我得到了它的工作:

var BigInteger = require('bigi'); 
var signature = ecdsa.sign(shaMsg, BigInteger.fromBuffer(privateKey)); 

但couldn't型缓冲的公钥验证,预计点。