JSPM

  • Created
  • Published
  • Downloads 1928802
  • Score
    100M100P100Q217067F
  • License GPL

This module provides native bindings to ecdsa secp256k1 functions

Package Exports

  • secp256k1
  • secp256k1/build/Release/secp256k1.node

This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (secp256k1) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.

Readme

secp256k1

This module provides native bindings to ecdsa secp256k1 functions

secp256k1.verifySecetKey(sercetKey)

Verify an ECDSA secret key.

Parameters

sercetKey: Buffer, the sercet Key to verify

Returns: Boolean, true if sercet key is valid, false sercet key is invalid

secp256k1.verifyPublicKey(publicKey)

Verify an ECDSA public key.

Parameters

publicKey: Buffer, the public Key to verify

Returns: Boolean, true if public key is valid, false sercet key is invalid

secp256k1.sign(secretkey, msg, cb)

Create an ECDSA signature.

Parameters

secretkey: Buffer, a 32-byte secret key (assumed to be valid)

msg: Buffer, he message being signed

cb: function, the callback given. The callback is given the signature

Returns: Buffer, if no callback is given a 72-byte signature is returned

secp256k1.signCompact(sercetKey, msg, cb)

Create a compact ECDSA signature (64 byte + recovery id). Runs asynchronously if given a callback

Parameters

sercetKey: Buffer, a 32-byte secret key (assumed to be valid)

msg: Buffer, the message being signed

cb: function, the callback which is give err, sig the

  • param {Buffer} sig a 64-byte buffer repersenting the signature
  • param {Number} recid an int which is the recovery id.

Returns: Object, result only if no callback is given will the result be returned

  • result.sigature
  • result.r
  • result.s
  • result.recoveryID

secp256k1.verify(pubKey, mgs, sig)

Verify an ECDSA signature. Runs asynchronously if given a callback

Parameters

pubKey: Buffer, the public key

mgs: Buffer, the message

sig: Buffer, the signature

Returns: Integer,

  • 1: correct signature
  • 0: incorrect signature
  • -1: invalid public key
  • -2: invalid signature

secp256k1.recoverCompact(msg, sig, compressed, recid, cb)

Recover an ECDSA public key from a compact signature in the process also verifing it. Runs asynchronously if given a callback

Parameters

msg: Buffer, the message assumed to be signed

sig: Buffer, the signature as 64 byte buffer

compressed: Boolean, whether to recover a compressed or uncompressed pubkey

recid: Integer, the recovery id (as returned by ecdsa_sign_compact)

cb: function, Recover an ECDSA public key from a compact signature. In the process also verifing it.

Returns: Buffer, the pubkey, a 33 or 65 byte buffer

secp256k1.createPubKey(secKey, compressed)

Compute the public key for a secret key.

Parameters

secKey: Buffer, a 32-byte private key.

compressed: Boolean, whether the computed public key should be compressed

Returns: Buffer, a 33-byte (if compressed) or 65-byte (if uncompressed) area to store the public key.

secp256k1.exportPrivateKey(secertKey, compressed)

Parameters

secertKey: Buffer

compressed: Boolean

Returns: Buffer, privateKey

secp256k1.importPrivateKey(privateKey)

Parameters

privateKey: Buffer, This module provides native bindings to ecdsa secp256k1 functions

Returns: Buffer, secertKey

secp256k1.decompressPublickey(secretKey)

Parameters

secretKey: Buffer, This module provides native bindings to ecdsa secp256k1 functions

Returns: Buffer, This module provides native bindings to ecdsa secp256k1 functions