New Case Study:See how Anthropic automated 95% of dependency reviews with Socket.Learn More
Socket
Sign inDemoInstall
Socket

eosjs-ecc

Package Overview
Dependencies
Maintainers
2
Versions
32
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

eosjs-ecc - npm Package Compare versions

Comparing version 3.0.3 to 3.1.0

.nyc_output/1be35a07cb59b66004803674415b3b36.json

84

lib/api_common.js

@@ -48,3 +48,4 @@ "use strict";

ecc.randomKey().then(privateKey => {
console.log(privateKey.toString())
console.log('Private Key:\t', privateKey) // wif
console.log('Public Key:\t', ecc.privateToPublic(privateKey)) // EOSkey...
})

@@ -100,12 +101,32 @@ */

@arg {wif|PrivateKey} privateKey
@arg {boolean} [hashData = true] - sha256 hash data before signing
@return {string} string signature
@arg {String} [encoding = 'utf8'] - data encoding (if string)
@return {string} string signature
@example ecc.sign('I am alive', wif)
*/
sign: function sign(data, privateKey) {
var hashData = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : true;
return Signature[hashData ? 'sign' : 'signHash'](data, privateKey).toString();
var encoding = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 'utf8';
if (encoding === true) {
throw new TypeError('API changed, use signHash(..) instead');
} else {
if (encoding === false) {
console.log('Warning: ecc.sign hashData parameter was removed');
}
}
return Signature.sign(data, privateKey, encoding).toString();
},
/**
@arg {String|Buffer} dataSha256 - sha256 hash 32 byte buffer or string
@arg {wif|PrivateKey} privateKey
@arg {String} [encoding = 'hex'] - dataSha256 encoding (if string)
@return {string} string signature
*/
signHash: function signHash(dataSha256, privateKey) {
var encoding = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 'hex';
return Signature.signHash(dataSha256, privateKey, encoding).toString();
},
/**
Verify signed data.

@@ -120,25 +141,58 @@ @arg {string|Buffer} signature - buffer or hex string

verify: function verify(signature, data, pubkey) {
var hashData = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : true;
var encoding = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : 'utf8';
if (encoding === true) {
throw new TypeError('API changed, use verifyHash(..) instead');
} else {
if (encoding === false) {
console.log('Warning: ecc.verify hashData parameter was removed');
}
}
signature = Signature.from(signature);
var verify = signature[hashData ? 'verify' : 'verifyHash'];
return verify(data, pubkey);
return signature.verify(data, pubkey, encoding);
},
verifyHash: function verifyHash(signature, dataSha256, pubkey) {
var encoding = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : 'hex';
signature = Signature.from(signature);
return signature.verifyHash(dataSha256, pubkey, encoding);
},
/**
Recover the public key used to create the signature.
@arg {String} signature (hex, etc..)
@arg {String|Buffer} data
@arg {boolean} [hashData = true] - sha256 hash data before recover
@return {pubkey}
@arg {String|Buffer} signature (EOSbase58sig.., Hex, Buffer)
@arg {String|Buffer} data - full data
@arg {String} [encoding = 'utf8'] - data encoding (if data is a string)
@return {pubkey}
@example ecc.recover(signature, 'I am alive') === pubkey
*/
recover: function recover(signature, data) {
var hashData = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : true;
var encoding = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 'utf8';
if (encoding === true) {
throw new TypeError('API changed, use recoverHash(signature, data) instead');
} else {
if (encoding === false) {
console.log('Warning: ecc.recover hashData parameter was removed');
}
}
signature = Signature.from(signature);
var recover = signature[hashData ? 'recover' : 'recoverHash'];
return recover(data).toString();
return signature.recover(data, encoding).toString();
},
/**
@arg {String|Buffer} signature (EOSbase58sig.., Hex, Buffer)
@arg {String|Buffer} dataSha256 - sha256 hash 32 byte buffer or hex string
@arg {String} [encoding = 'hex'] - dataSha256 encoding (if dataSha256 is a string)
@return {PublicKey}
*/
recoverHash: function recoverHash(signature, dataSha256) {
var encoding = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 'hex';
signature = Signature.from(signature);
return signature.recoverHash(dataSha256, encoding).toString();
},
/** @arg {string|Buffer} data

@@ -145,0 +199,0 @@ @arg {string} [encoding = 'hex'] - 'hex', 'binary' or 'base64'

6

lib/common.test.js

@@ -122,3 +122,3 @@ 'use strict';

var sigs = [ecc.sign(data, wif), ecc.sign(dataSha256, wif, false)];
var sigs = [ecc.sign(data, wif), ecc.signHash(dataSha256, wif)];

@@ -134,5 +134,5 @@ var _iteratorNormalCompletion4 = true;

assert(ecc.verify(sig, data, pubkey), 'verify data');
assert(ecc.verify(sig, dataSha256, pubkey, false), 'verify hash');
assert(ecc.verifyHash(sig, dataSha256, pubkey), 'verify hash');
assert.equal(pubkey, ecc.recover(sig, data), 'recover from data');
assert.equal(pubkey, ecc.recover(sig, dataSha256, false), 'recover from hash');
assert.equal(pubkey, ecc.recoverHash(sig, dataSha256), 'recover from hash');
}

@@ -139,0 +139,0 @@ } catch (err) {

@@ -22,9 +22,12 @@ 'use strict';

Verify signed data.
@arg {String|Buffer} data - full data (non-hex)
@arg {String|Buffer} data - full data
@arg {pubkey|PublicKey} pubkey - EOSKey..
@arg {String} [encoding = 'utf8'] - data encoding (if data is a string)
@return {boolean}
*/
function verify(data, pubkey) {
var encoding = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 'utf8';
if (typeof data === 'string') {
data = Buffer.from(data);
data = Buffer.from(data, encoding);
}

@@ -38,11 +41,14 @@ assert(Buffer.isBuffer(data), 'data is a required String or Buffer');

Verify a buffer of exactally 32 bytes in size (sha256(text))
@arg {Buffer|hex} dataSha256 - 32 byte buffer or hex string
@arg {String|PublicKey} pubkey
@return {Signature}
@arg {String|Buffer} dataSha256 - 32 byte buffer or string
@arg {String|PublicKey} pubkey - EOSKey..
@arg {String} [encoding = 'hex'] - dataSha256 encoding (if string)
@return {boolean}
*/
function verifyHash(dataSha256, pubkey) {
var encoding = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 'hex';
if (typeof dataSha256 === 'string') {
dataSha256 = Buffer.from(dataSha256, 'hex');
dataSha256 = Buffer.from(dataSha256, encoding);
}
if (dataSha256.length !== 32 || !Buffer.isBuffer(dataSha256)) throw new Error("dataSha256: 32 byte buffer requred");
if (dataSha256.length !== 32 || !Buffer.isBuffer(dataSha256)) throw new Error("dataSha256: 32 bytes required");

@@ -55,6 +61,9 @@ var publicKey = PublicKey(pubkey);

/** Verify hex data by converting to a buffer then hashing.
@return {boolean}
/** @deprecated
Verify hex data by converting to a buffer then hashing.
@return {boolean}
*/
function verifyHex(hex, pubkey) {
console.log('Deprecated: use verify(data, pubkey, "hex")');
var buf = Buffer.from(hex, 'hex');

@@ -67,8 +76,11 @@ return verify(buf, pubkey);

@arg {String|Buffer} data - full data (non-hex)
@arg {String|Buffer} data - full data
@arg {String} [encoding = 'utf8'] - data encoding (if string)
@return {PublicKey}
*/
function recover(data) {
var encoding = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 'utf8';
if (typeof data === 'string') {
data = Buffer.from(data);
data = Buffer.from(data, encoding);
}

@@ -82,8 +94,11 @@ assert(Buffer.isBuffer(data), 'data is a required String or Buffer');

/**
@arg {Buffer|hex} dataSha256 - 32 byte buffer or hex string
@return {PublicKey}
@arg {String|Buffer} dataSha256 - sha256 hash 32 byte buffer or hex string
@arg {String} [encoding = 'hex'] - dataSha256 encoding (if string)
@return {PublicKey}
*/
function recoverHash(dataSha256) {
var encoding = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 'hex';
if (typeof dataSha256 === 'string') {
dataSha256 = Buffer.from(dataSha256, 'hex');
dataSha256 = Buffer.from(dataSha256, encoding);
}

@@ -135,3 +150,3 @@ if (dataSha256.length !== 32 || !Buffer.isBuffer(dataSha256)) {

verifyHash: verifyHash,
verifyHex: verifyHex,
verifyHex: verifyHex, // deprecated
recover: recover,

@@ -143,10 +158,18 @@ recoverHash: recoverHash,

/** @deprecated use verify (same arguments and return) */
verifyBuffer: verify,
verifyBuffer: function verifyBuffer() {
console.log('Deprecated: use signature.verify instead (same arguments)');
return verify.apply(undefined, arguments);
},
/** @deprecated use recover (same arguments and return) */
recoverPublicKey: recover,
recoverPublicKey: function recoverPublicKey() {
console.log('Deprecated: use signature.recover instead (same arguments)');
return recover.apply(undefined, arguments);
},
/** @deprecated use recoverHash (same arguments and return) */
recoverPublicKeyFromBuffer: recoverHash
recoverPublicKeyFromBuffer: function recoverPublicKeyFromBuffer() {
console.log('Deprecated: use signature.recoverHash instead (same arguments)');
return recoverHash.apply(undefined, arguments);
}
};

@@ -158,4 +181,5 @@ }

@arg {string|Buffer} data - non-hex data
@arg {string|Buffer} data - full data
@arg {wif|PrivateKey} privateKey
@arg {String} [encoding = 'utf8'] - data encoding (if string)

@@ -165,4 +189,6 @@ @return {Signature}

Signature.sign = function (data, privateKey) {
var encoding = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 'utf8';
if (typeof data === 'string') {
data = Buffer.from(data);
data = Buffer.from(data, encoding);
}

@@ -177,4 +203,5 @@ assert(Buffer.isBuffer(data), 'data is a required String or Buffer');

@arg {Buffer|hex} buf - 32 byte buffer or hex string
@arg {string|Buffer} dataSha256 - 32 byte buffer or string
@arg {wif|PrivateKey} privateKey
@arg {String} [encoding = 'hex'] - dataSha256 encoding (if string)

@@ -184,4 +211,6 @@ @return {Signature}

Signature.signHash = function (dataSha256, privateKey) {
var encoding = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 'hex';
if (typeof dataSha256 === 'string') {
dataSha256 = Buffer.from(dataSha256, 'hex');
dataSha256 = Buffer.from(dataSha256, encoding);
}

@@ -188,0 +217,0 @@ if (dataSha256.length !== 32 || !Buffer.isBuffer(dataSha256)) throw new Error("dataSha256: 32 byte buffer requred");

{
"name": "eosjs-ecc",
"version": "3.0.3",
"version": "3.1.0",
"description": "Elliptic curve cryptography functions",

@@ -5,0 +5,0 @@ "keywords": "ECC, Private Key, Public Key, Signature, AES, Encryption, Decryption",

@@ -56,3 +56,4 @@ [![NPM](https://img.shields.io/npm/v/eosjs-ecc.svg)](https://www.npmjs.org/package/eosjs-ecc)

ecc.randomKey().then(privateKey => {
console.log(privateKey.toString())
console.log('Private Key:\t', privateKey) // wif
console.log('Public Key:\t', ecc.privateToPublic(privateKey)) // EOSkey...
})

@@ -129,3 +130,3 @@ ```

- `privateKey` **([wif](#wif) | PrivateKey)**
- `hashData` **[boolean](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Boolean)** sha256 hash data before signing (optional, default `true`)
- `encoding` **[String](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String)** data encoding (if string) (optional, default `'utf8'`)

@@ -140,2 +141,12 @@ **Examples**

### signHash
**Parameters**
- `dataSha256` **([String](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String) \| [Buffer](https://nodejs.org/api/buffer.html))** sha256 hash 32 byte buffer or string
- `privateKey` **([wif](#wif) | PrivateKey)**
- `encoding` **[String](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String)** dataSha256 encoding (if string) (optional, default `'hex'`)
Returns **[string](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String)** string signature
### verify

@@ -150,2 +161,3 @@

- `pubkey` **([pubkey](#pubkey) | PublicKey)**
- `encoding` (optional, default `'utf8'`)
- `hashData` **[boolean](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Boolean)** sha256 hash data before verify (optional, default `true`)

@@ -167,5 +179,5 @@

- `signature` **[String](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String)** (hex, etc..)
- `data` **([String](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String) \| [Buffer](https://nodejs.org/api/buffer.html))**
- `hashData` **[boolean](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Boolean)** sha256 hash data before recover (optional, default `true`)
- `signature` **([String](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String) \| [Buffer](https://nodejs.org/api/buffer.html))** (EOSbase58sig.., Hex, Buffer)
- `data` **([String](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String) \| [Buffer](https://nodejs.org/api/buffer.html))** full data
- `encoding` **[String](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String)** data encoding (if data is a string) (optional, default `'utf8'`)

@@ -180,2 +192,12 @@ **Examples**

### recoverHash
**Parameters**
- `signature` **([String](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String) \| [Buffer](https://nodejs.org/api/buffer.html))** (EOSbase58sig.., Hex, Buffer)
- `dataSha256` **([String](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String) \| [Buffer](https://nodejs.org/api/buffer.html))** sha256 hash 32 byte buffer or hex string
- `encoding` **[String](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String)** dataSha256 encoding (if dataSha256 is a string) (optional, default `'hex'`)
Returns **PublicKey**
### sha256

@@ -182,0 +204,0 @@

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is too big to display

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc