{"bugs":{"url":"https://github.com/EOSIO/eosjs-ecc/issues"},"dist":{"shasum":"8f38ec8464fd6e189838285311aa80634645bc85","tarball":"https://registry.npmjs.org/eosjs-ecc/-/eosjs-ecc-3.0.2.tgz","fileCount":43,"integrity":"sha512-NHrqVs0r8BFBsBQRPHuW2OL6Jij34jOGSzGodHGrmQmaATYE962baJWSSttJ6/zu7H8WR3wGK8c896FZxj81og==","signatures":[{"sig":"MEYCIQCVLWGuYnwJ2HX6AmjKjac38RvpsHem69PP9P15aHggkgIhAMOYvXbvJd7cyPDgW3qvDY9z8kbY2BucJrGBt4kgSiwt","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":1978198},"main":"lib/index.js","name":"eosjs-ecc","babel":{"presets":["es2015"]},"readme":"[![NPM](https://img.shields.io/npm/v/eosjs-ecc.svg)](https://www.npmjs.org/package/eosjs-ecc)\n[![Build Status](https://travis-ci.org/EOSIO/eosjs-ecc.svg?branch=master)](https://travis-ci.org/EOSIO/eosjs-ecc)\n\n# Elliptic curve cryptography functions (ECC)\n\nPrivate Key, Public Key, Signature, AES, Encryption / Decryption\n\n# Import\n\n```js\nimport ecc from 'eosjs-ecc'\n// or\nconst ecc = require('eosjs-ecc')\n```\n\n# Common API\n\n<!-- Generated by documentation.js. Update this documentation by updating the source code. -->\n\n## wif\n\n[Wallet Import Format](https://en.bitcoin.it/wiki/Wallet_import_format)\n\nType: [string](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String)\n\n## ecc\n\n### initialize\n\nInitialize by running some self-checking code.  This should take a\nsecond to gather additional CPU entropy used during private key\ngeneration.\n\nInitialization happens once even if called multiple times.\n\nReturns **[Promise](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Promise)** \n\n### unsafeRandomKey\n\nDoes not pause to gather CPU entropy.\n\nReturns **[Promise](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Promise)&lt;PrivateKey>** test key\n\n### randomKey\n\n**Parameters**\n\n-   `cpuEntropyBits` **[number](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Number)** gather additional entropy\n    from a CPU mining algorithm.  This will already happen once by\n    default. (optional, default `0`)\n\n**Examples**\n\n```javascript\necc.randomKey().then(privateKey => {\nconsole.log(privateKey.toString())\n})\n```\n\nReturns **[Promise](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Promise)&lt;[wif](#wif)>** \n\n### seedPrivate\n\n**Parameters**\n\n-   `seed` **[string](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String)** any length string.  This is private.  The same\n    seed produces the same private key every time.  At least 128 random\n    bits should be used to produce a good private key.\n\n**Examples**\n\n```javascript\necc.seedPrivate('secret') === wif\n```\n\nReturns **[wif](#wif)** \n\n### privateToPublic\n\n**Parameters**\n\n-   `wif` **[wif](#wif)** \n\n**Examples**\n\n```javascript\necc.privateToPublic(wif) === pubkey\n```\n\nReturns **[pubkey](#pubkey)** \n\n### isValidPublic\n\n**Parameters**\n\n-   `pubkey` **[pubkey](#pubkey)** like EOSKey..\n\n**Examples**\n\n```javascript\necc.isValidPublic(pubkey) === true\n```\n\nReturns **[boolean](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Boolean)** valid\n\n### isValidPrivate\n\n**Parameters**\n\n-   `wif` **[wif](#wif)** \n\n**Examples**\n\n```javascript\necc.isValidPrivate(wif) === true\n```\n\nReturns **[boolean](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Boolean)** valid\n\n### sign\n\nCreate a signature using data or a hash.\n\n**Parameters**\n\n-   `data` **([string](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String) \\| [Buffer](https://nodejs.org/api/buffer.html))** \n-   `privateKey` **([wif](#wif) | PrivateKey)** \n-   `hashData` **[boolean](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Boolean)** sha256 hash data before signing (optional, default `true`)\n\n**Examples**\n\n```javascript\necc.sign('I am alive', wif)\n```\n\nReturns **[string](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String)** hex signature\n\n### verify\n\nVerify signed data.\n\n**Parameters**\n\n-   `signature` **([string](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String) \\| [Buffer](https://nodejs.org/api/buffer.html))** buffer or hex string\n-   `data` **([string](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String) \\| [Buffer](https://nodejs.org/api/buffer.html))** \n-   `pubkey` **([pubkey](#pubkey) | PublicKey)** \n-   `hashData` **[boolean](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Boolean)** sha256 hash data before verify (optional, default `true`)\n\n**Examples**\n\n```javascript\necc.verify(signature, 'I am alive', pubkey) === true\n```\n\nReturns **[boolean](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Boolean)** \n\n### recover\n\nRecover the public key used to create the signature.\n\n**Parameters**\n\n-   `signature` **[String](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String)** (hex, etc..)\n-   `data` **([String](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String) \\| [Buffer](https://nodejs.org/api/buffer.html))** \n-   `hashData` **[boolean](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Boolean)** sha256 hash data before recover (optional, default `true`)\n\n**Examples**\n\n```javascript\necc.recover(signature, 'I am alive') === pubkey\n```\n\nReturns **[pubkey](#pubkey)** \n\n### sha256\n\n**Parameters**\n\n-   `data` **([string](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String) \\| [Buffer](https://nodejs.org/api/buffer.html))** \n-   `encoding` **[string](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String)** 'hex', 'binary' or 'base64' (optional, default `'hex'`)\n\n**Examples**\n\n```javascript\necc.sha256('hashme') === '02208b..'\n```\n\nReturns **([string](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String) \\| [Buffer](https://nodejs.org/api/buffer.html))** Buffer when encoding is null, or string\n\n## pubkey\n\nEOSKey..\n\nType: [string](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String)\n\n# Usage (Object API)\n\n```js\nlet {PrivateKey, PublicKey, Signature, Aes, key_utils, config} = require('eosjs-ecc')\n\n// Create a new random private key\nlet privateWif\nPrivateKey.randomKey().then(privateKey => privateWif = privateKey.toWif())\n\n// Convert to a public key\npubkey = PrivateKey.fromWif(privateWif).toPublic().toString()\n```\n\n-   [PrivateKey](./src/key_private.js)\n-   [PublicKey](./src/key_public.js)\n-   [Signature](./src/signature.js)\n-   [Aes](./src/aes.js)\n-   [key_utils](./src/key_utils.js)\n-   [config](./src/config.js)\n\n# Browser\n\n```bash\ngit clone https://github.com/EOSIO/eosjs-ecc.git\ncd eosjs-ecc\nnpm install\nnpm run build\n# builds: ./dist/eosjs-ecc.js\n# Verify release hash\n```\n\n```html\n<script src=eosjs-ecc.js></script>\n```\n\n```js\nvar ecc = eosjs_ecc\n\necc.randomKey().then(privateWif =>  {\n  var pubkey = ecc.privateToPublic(privateWif)\n  console.log(pubkey)\n})\n```\n\n# Configure\n\n```js\nconst {config} = require('eosjs-ecc')\n\n// Change the public key address prefix\n// config.address_prefix = 'XXX'\n```\n\nSee [Config](./src/config.js)\n","gitHead":"d38396c4ea70f07aa32155390e152f33418352eb","license":"MIT","scripts":{"docs":"npm run documentation -- readme src/api_common.js --section \"Common API\" --shallow","test":"mocha --use_strict src/*.test.js","build":"npm run docs && npm run build_lib && npm run build_browser","coverage":"istanbul cover _mocha -- -R spec src/*.test.js","build_lib":"node_modules/babel-cli/bin/babel.js src --out-dir lib","coveralls":"npm run coverage && cat ./coverage/lcov.info | ./node_modules/.bin/coveralls","prepublish":"npm run build_lib && npm run docs","build_browser":"mkdir -p dist && browserify -o dist/eosjs-ecc.js -s eosjs_ecc src/index.js && sha256sum dist/eosjs-ecc.js","documentation":"node_modules/documentation/bin/documentation.js","build_browser_test":"mkdir -p dist && browserify -o dist/eosjs-ecc-test.js src/*.test.js"},"_npmUser":{"name":"jamesc","email":"jslim180@gmail.com"},"homepage":"https://github.com/EOSIO/eosjs-ecc#readme","keywords":["ECC","Private Key","Public Key","Signature","AES","Encryption","Decryption"],"repository":{"url":"git://github.com/EOSIO/eosjs-ecc.git","type":"git"},"_npmVersion":"5.3.0","description":"Elliptic curve cryptography functions","directories":{},"maintainers":[{"name":"jamesc","email":"jslim180@gmail.com"},{"name":"smetelin","email":"serg.metelin@gmail.com"}],"_nodeVersion":"8.4.0","dependencies":{"bigi":"^1.4.2","bs58":"^4.0.1","ecurve":"^1.0.5","bytebuffer":"^5.0.1","create-hash":"^1.1.3","create-hmac":"^1.1.6","randombytes":"^2.0.5","browserify-aes":"^1.0.6"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"mocha":"^3.5.3","istanbul":"^0.4.5","babel-cli":"^6.26.0","babel-core":"^6.26.0","browserify":"^14.4.0","documentation":"^5.3.2","babel-preset-es2015":"^6.24.1"},"_npmOperationalInternal":{"tmp":"tmp/eosjs-ecc_3.0.2_1521813037082_0.9568817665644163","host":"s3://npm-registry-packages"},"_id":"eosjs-ecc@3.0.2","version":"3.0.2"}