{"_id":"@arisencore/ecc","_rev":"2-35ae49d1b8a84334f5ae0fea1861582f","name":"@arisencore/ecc","dist-tags":{"latest":"1.0.1"},"versions":{"1.0.0":{"name":"@arisencore/ecc","version":"1.0.0","description":"Elliptic curve cryptography functions","keywords":["ECC","Private Key","Public Key","Signature","AES","Encryption","Decryption"],"main":"lib/index.js","scripts":{"test":"mocha --use_strict src/*.test.js","test_lib":"mocha --use_strict lib/*.test.js","coverage":"nyc --reporter=html npm test","coveralls":"npm run coverage && cat ./coverage/lcov.info | ./node_modules/.bin/coveralls","build":"npm run build_lib && npm run build_browser","build_lib":"rm -f lib/* && babel src --out-dir lib","build_browser":"mkdir -p lib && browserify -o lib/arisenjs-ecc.js -s arisenjs_ecc lib/index.js","build_browser_test":"npm run build && browserify -o dist/test.js lib/*.test.js","documentation":"node_modules/documentation/bin/documentation.js","minimize":"uglifyjs lib/arisenjs-ecc.js -o lib/arisenjs-ecc.min.js --source-map --compress --mangle","docs":"npm run documentation -- readme src/api_common.js --section \"Common API\" --shallow","srisum":"npx srisum lib/arisenjs-ecc.*","prepublishOnly":"npm run build && npm run test_lib && npm run minimize && npm run docs && npm run srisum"},"repository":{"type":"git","url":"git://github.com/arisenio/arisenjs-ecc.git"},"dependencies":{"bigi":"^1.4.2","browserify-aes":"^1.0.6","bs58":"^4.0.1","bytebuffer":"^5.0.1","create-hash":"^1.1.3","create-hmac":"^1.1.6","ecurve":"^1.0.5","randombytes":"^2.0.5"},"license":"MIT","devDependencies":{"babel-cli":"6.26.0","babel-core":"^6.26.3","babel-preset-es2015":"6.24.1","browserify":"14.4.0","coveralls":"^3.0.0","documentation":"^8.1.1","istanbul":"^0.4.5","mocha":"^5.2.0","nyc":"^13.0.1","uglify-js":"3.4.2"},"babel":{"presets":["es2015"]},"gitHead":"807fc28f12d947519fd1ac61240d5d68194a97b7","bugs":{"url":"https://github.com/arisenio/arisenjs-ecc/issues"},"homepage":"https://github.com/arisenio/arisenjs-ecc#readme","_id":"@arisencore/ecc@1.0.0","_nodeVersion":"8.9.4","_npmVersion":"6.13.6","dist":{"integrity":"sha512-eRmW60VP4jbGsNJ/YABYzPDtaIrDnTZts6wx0PyHyBPW7KE2cA+409E7NZmBaLqfrDUmLcM/fCmucWfwC50seA==","shasum":"7293b968b8cff0a973e6a673135516a1cdddaafc","tarball":"https://registry.npmjs.org/@arisencore/ecc/-/ecc-1.0.0.tgz","fileCount":20,"unpackedSize":1235920,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJep/+BCRA9TVsSAnZWagAAS+sP/1itWVh5Gs5u+Je/ltWq\nCR6ZyNqZcnIlk/IZp/UM2TSe346gGLJkijL0JfhIgZlR2e47r1hk4J1nyrnU\nfzQEo5CBRC+JHPSoI8K6dNJldslY34Ubwt4upXmt3V2Z3fDb5CEYmxtl9Aoa\noyRSpY5+Nwk69HHfxbezwPOcRQE1hMpZPLnnmfz3VMu8mEcNWmjk/0dJ56D9\ndqlgCukBBqg3ASekdvUrde9CfQxWyZ7NPTPwXSHmjlAZcJCdrS1z7+Z3Ee3j\nH2Q4X9W6h2JrIa+4MOOiz5IM03WNx9H9RAUvUZPeqYjo1nxUFkuJ24JAfNYz\naM6QR9zv/7BRcZTP7aGE8BbTeR3uZaDI5fUiAaGoeYovlZetCsLMsYfXkvD8\nymEGKWH3Brm2X8dIFqMJKv7At63nXGlH+VNEX2CGBKjaWqmrjiktFtiSp7Ab\nHCePwJud2vwv5cGAJNlRzXAg1Jwz7b0veNJYCxjordwgTlwlVZFlmU4/6zny\nDxD9F1NxQorTjMu/9My/sdrDvSI0VbLyEGCYPh3sC5KtZu1S+b3tsuvSF4IL\nHb8eX3JN5zCXOjJQAWhfHEY+SHxQuoc9AgrVcSqNnjM+LxyfH0HjJt/SMJJl\nLU2nOO4Occr9Ji5TVITI6l7cjx26zb91Ow/0HVxdGp/SukKoWWOUdAmIOMT2\nbef9\r\n=0K1T\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDCBBvjPdamOeDC0AOcncFSfJ+/JHMFabZ/UISPc9BqRQIgNqq/cAL/bxyTKeTxsCDza9tHpFvEIWMHHD9BwngNqro="}]},"maintainers":[{"name":"arisenx","email":"arisenserverless@gmail.com"}],"_npmUser":{"name":"arisenx","email":"arisenserverless@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/ecc_1.0.0_1588068224711_0.6442588492932566"},"_hasShrinkwrap":false},"1.0.1":{"name":"@arisencore/ecc","version":"1.0.1","description":"Elliptic curve cryptography functions","keywords":["ECC","Private Key","Public Key","Signature","AES","Encryption","Decryption"],"main":"lib/index.js","scripts":{"test":"mocha --use_strict src/*.test.js","test_lib":"mocha --use_strict lib/*.test.js","coverage":"nyc --reporter=html npm test","coveralls":"npm run coverage && cat ./coverage/lcov.info | ./node_modules/.bin/coveralls","build":"npm run build_lib && npm run build_browser","build_lib":"rm -f lib/* && babel src --out-dir lib","build_browser":"mkdir -p lib && browserify -o lib/arisenjs-ecc.js -s arisenjs_ecc lib/index.js","build_browser_test":"npm run build && browserify -o dist/test.js lib/*.test.js","documentation":"node_modules/documentation/bin/documentation.js","minimize":"uglifyjs lib/arisenjs-ecc.js -o lib/arisenjs-ecc.min.js --source-map --compress --mangle","docs":"npm run documentation -- readme src/api_common.js --section \"Common API\" --shallow","srisum":"npx srisum lib/arisenjs-ecc.*","prepublishOnly":"npm run build && npm run test_lib && npm run minimize && npm run docs && npm run srisum"},"repository":{"type":"git","url":"git://github.com/arisenio/arisenjs-ecc.git"},"dependencies":{"bigi":"^1.4.2","browserify-aes":"^1.0.6","bs58":"^4.0.1","bytebuffer":"^5.0.1","create-hash":"^1.1.3","create-hmac":"^1.1.6","ecurve":"^1.0.5","randombytes":"^2.0.5"},"license":"MIT","devDependencies":{"babel-cli":"6.26.0","babel-core":"^6.26.3","babel-preset-es2015":"6.24.1","browserify":"14.4.0","coveralls":"^3.0.0","documentation":"^8.1.1","istanbul":"^0.4.5","mocha":"^5.2.0","nyc":"^13.0.1","uglify-js":"3.4.2"},"babel":{"presets":["es2015"]},"gitHead":"807fc28f12d947519fd1ac61240d5d68194a97b7","bugs":{"url":"https://github.com/arisenio/arisenjs-ecc/issues"},"homepage":"https://github.com/arisenio/arisenjs-ecc#readme","_id":"@arisencore/ecc@1.0.1","_nodeVersion":"8.9.4","_npmVersion":"6.13.6","dist":{"integrity":"sha512-21Tn6z56q7NlZ4N7td9zXbrHbljejwWfZbHdX3XbIz7353fQ4XUUxXJtwFwQk6pCls71ZT/ZTu7yy7HvHKx+ng==","shasum":"77297e86ee61db4dbc275bc7908509487cda99a8","tarball":"https://registry.npmjs.org/@arisencore/ecc/-/ecc-1.0.1.tgz","fileCount":20,"unpackedSize":1235944,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeqBg6CRA9TVsSAnZWagAAzugQAJOXMhROgLtjLfv399vD\n1KWPHIcecp/fVBcCrDAFkS61pHrbB0u+C3zzwdAz1RohO0nJACgNjZeAtJNH\nNywwfvM7S/nt/I0DldrxefvrAdB3kxJHOlGhPK1HRyvzg381JdThAZCeAP5B\nnapPL0TD1bCoaBw/PEYiUCZLWi55/vlW7BaNXX1JORh8ze2LfIlrmGMvvnEo\nvCIhrbq2k7UFmzjXk2mzGJolRHEhvLzxcwg1O9H2+AWJ1DjMelS+4L4MU0ZA\nbJLT10ffb+FC6g98yGI04CTcOKmzgm7Wlx/CKMadi5i5sjfuRZe/GLRTY1AX\nzIhmICRfZfwMC3uMnLSulJpBECQP+tXrSjz+xXoJsIv/SoDCEItl4rXNavbn\nbMk8z9SH5U0qM0i8/kDUthCHv4J2a5ZtepMM9gL+3RyWlcR8JxMEJtnATidr\nKTw6iQ6bYVPKhL2KPpHx9mqWruRMHvgTCNNI7nSpsCR4/dSLGTPSpfo2RjaA\nPmDIsW2c7r79856jnx2QsD6cVSUGs/iTvYHDYfPrfEDUudfrDsJp5jPVRIAl\nq5XI9/Xt7xAQtyxbmFnD+RajLYxyqusxB0iOQzHs3W0ZwPOAGFaWoifx7Pjr\nOkd92IpOEmXPS5JNlSXNy2msrhqfGMNW0H+FbcyTVul9EOWxY5ZGavCEdTrS\nosqc\r\n=xpLY\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCX5Dh55VpGbq0IBYQMU9QW4WiulAhsXmS9pKA9zMh8mQIhAP05roDyAmGPUwbgRPm8jNYtNI1Jr216PEs4q5SO5PoU"}]},"maintainers":[{"name":"arisenx","email":"arisenserverless@gmail.com"}],"_npmUser":{"name":"arisenx","email":"arisenserverless@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/ecc_1.0.1_1588074554282_0.8919868932849946"},"_hasShrinkwrap":false}},"time":{"created":"2020-04-28T10:03:44.461Z","1.0.0":"2020-04-28T10:03:45.000Z","modified":"2022-04-04T15:27:48.355Z","1.0.1":"2020-04-28T11:49:14.484Z"},"maintainers":[{"name":"arisenx","email":"arisenserverless@gmail.com"}],"description":"Elliptic curve cryptography functions","homepage":"https://github.com/arisenio/arisenjs-ecc#readme","keywords":["ECC","Private Key","Public Key","Signature","AES","Encryption","Decryption"],"repository":{"type":"git","url":"git://github.com/arisenio/arisenjs-ecc.git"},"bugs":{"url":"https://github.com/arisenio/arisenjs-ecc/issues"},"license":"MIT","readme":"<p align=\"center\">\n  <img src=\"https://raw.githubusercontent.com/ArisenIO/arisen-media/master/repo-headers/arisenjs-ecc.png\"/>\n</p>\n\nPrivate Key, Public Key, Signature, AES, Encryption / Decryption\n\n# Import\n\n```js\nimport ecc from '@arisencore/ecc'\n// or\nconst ecc = require('@arisencore/ecc')\n```\n\n# Include\n\n-   Install with: `npm install @arisencore/ecc`\n-   Html script tag, see [releases](https://github.com/ARISENIO/@arisencore/ecc/releases) for the correct **version** and its matching script **integrity** hash.\n\n```html\n<html>\n<head>\n  <meta charset=\"utf-8\">\n  <!--\n  sha512-cL+IQQaQ586s9DrXfGtDheRpj5iDKh2M+xlpfwbhNjRIp4BGQ1fkM/vB4Ta8mc+f51YBW9sJiPcyMDIreJe6gQ== lib/@arisencore/ecc.js\n  sha512-dYFDmK/d9r3/NCp6toLtfkwOjSMRBaEzaGAx1tfRItC0nsI0hVLERk05iNBQR7uDNI7ludYhcBI4vUiFHdjsTQ== lib/@arisencore/ecc.min.js\n  sha512-eq1SCoSe38uR1UVuQMwR73VgY8qKTBDc87n2nIiC5WLhn1o2y1U6c5wY8lrigVX7INM8fM0PxDlMX5WvpghKig== lib/@arisencore/ecc.min.js.map\n  -->\n  <script src=\"https://cdn.jsdelivr.net/npm/@arisencore/ecc@4.0.4/lib/arisenjs-ecc.min.js\"\n    integrity=\"sha512-dYFDmK/d9r3/NCp6toLtfkwOjSMRBaEzaGAx1tfRItC0nsI0hVLERk05iNBQR7uDNI7ludYhcBI4vUiFHdjsTQ==\"\n    crossorigin=\"anonymous\"></script>\n\n</head>\n<body>\n  See console object: arisenjs_ecc\n</body>\n</html>\n```\n\n# Common API\n\n<!-- Generated by documentation.js. Update this documentation by updating the source code. -->\n\n### Table of Contents\n\n-   [wif](#wif)\n-   [ecc](#ecc)\n    -   [initialize](#initialize)\n    -   [unsafeRandomKey](#unsaferandomkey)\n    -   [randomKey](#randomkey)\n        -   [Parameters](#parameters)\n        -   [Examples](#examples)\n    -   [seedPrivate](#seedprivate)\n        -   [Parameters](#parameters-1)\n        -   [Examples](#examples-1)\n    -   [privateToPublic](#privatetopublic)\n        -   [Parameters](#parameters-2)\n        -   [Examples](#examples-2)\n    -   [isValidPublic](#isvalidpublic)\n        -   [Parameters](#parameters-3)\n        -   [Examples](#examples-3)\n    -   [isValidPrivate](#isvalidprivate)\n        -   [Parameters](#parameters-4)\n        -   [Examples](#examples-4)\n    -   [sign](#sign)\n        -   [Parameters](#parameters-5)\n        -   [Examples](#examples-5)\n    -   [signHash](#signhash)\n        -   [Parameters](#parameters-6)\n    -   [verify](#verify)\n        -   [Parameters](#parameters-7)\n        -   [Examples](#examples-6)\n    -   [recover](#recover)\n        -   [Parameters](#parameters-8)\n        -   [Examples](#examples-7)\n    -   [recoverHash](#recoverhash)\n        -   [Parameters](#parameters-9)\n    -   [sha256](#sha256)\n        -   [Parameters](#parameters-10)\n        -   [Examples](#examples-8)\n-   [pubkey](#pubkey)\n\n## wif\n\n[Wallet Import Format](https://en.bitcoin.it/wiki/Wallet_import_format)\n\nType: [string](https://developer.mozilla.org/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/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/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/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('Private Key:\\t', privateKey) // wif\nconsole.log('Public Key:\\t', ecc.privateToPublic(privateKey)) // RSNkey...\n})\n```\n\nReturns **[Promise](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Promise)&lt;[wif](#wif)>** \n\n### seedPrivate\n\n#### Parameters\n\n-   `seed` **[string](https://developer.mozilla.org/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-   `pubkey_prefix` **[string](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String)** public key prefix (optional, default `'RSN'`)\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 RSNKey..\n-   `pubkey_prefix` **[string](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String)**  (optional, default `'RSN'`)\n\n#### Examples\n\n```javascript\necc.isValidPublic(pubkey) === true\n```\n\nReturns **[boolean](https://developer.mozilla.org/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/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/docs/Web/JavaScript/Reference/Global_Objects/String) \\| [Buffer](https://nodejs.org/api/buffer.html))** \n-   `privateKey` **([wif](#wif) | PrivateKey)** \n-   `encoding` **[String](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String)** data encoding (if string) (optional, default `'utf8'`)\n\n#### Examples\n\n```javascript\necc.sign('I am alive', wif)\n```\n\nReturns **[string](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String)** string signature\n\n### signHash\n\n#### Parameters\n\n-   `dataSha256` **([String](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String) \\| [Buffer](https://nodejs.org/api/buffer.html))** sha256 hash 32 byte buffer or string\n-   `privateKey` **([wif](#wif) | PrivateKey)** \n-   `encoding` **[String](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String)** dataSha256 encoding (if string) (optional, default `'hex'`)\n\nReturns **[string](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String)** string signature\n\n### verify\n\nVerify signed data.\n\n#### Parameters\n\n-   `signature` **([string](https://developer.mozilla.org/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/docs/Web/JavaScript/Reference/Global_Objects/String) \\| [Buffer](https://nodejs.org/api/buffer.html))** \n-   `pubkey` **([pubkey](#pubkey) | PublicKey)** \n-   `encoding`   (optional, default `'utf8'`)\n-   `hashData` **[boolean](https://developer.mozilla.org/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/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/docs/Web/JavaScript/Reference/Global_Objects/String) \\| [Buffer](https://nodejs.org/api/buffer.html))** (RSNbase58sig.., Hex, Buffer)\n-   `data` **([String](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String) \\| [Buffer](https://nodejs.org/api/buffer.html))** full data\n-   `encoding` **[String](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String)** data encoding (if data is a string) (optional, default `'utf8'`)\n\n#### Examples\n\n```javascript\necc.recover(signature, 'I am alive') === pubkey\n```\n\nReturns **[pubkey](#pubkey)** \n\n### recoverHash\n\n#### Parameters\n\n-   `signature` **([String](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String) \\| [Buffer](https://nodejs.org/api/buffer.html))** (RSNbase58sig.., Hex, Buffer)\n-   `dataSha256` **([String](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String) \\| [Buffer](https://nodejs.org/api/buffer.html))** sha256 hash 32 byte buffer or hex string\n-   `encoding` **[String](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String)** dataSha256 encoding (if dataSha256 is a string) (optional, default `'hex'`)\n\nReturns **PublicKey** \n\n### sha256\n\n#### Parameters\n\n-   `data` **([string](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String) \\| [Buffer](https://nodejs.org/api/buffer.html))** always binary, you may need Buffer.from(data, 'hex')\n-   `resultEncoding`   (optional, default `'hex'`)\n-   `encoding` **[string](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String)** result encoding 'hex', 'binary' or 'base64' (optional, default `'hex'`)\n\n#### Examples\n\n```javascript\necc.sha256('hashme') === '02208b..'\n```\n\n```javascript\necc.sha256(Buffer.from('02208b', 'hex')) === '29a23..'\n```\n\nReturns **([string](https://developer.mozilla.org/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\nRSNKey..\n\nType: [string](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String)\n\n# Usage (Object API)\n\n```js\nlet {PrivateKey, PublicKey, Signature, Aes, key_utils, config} = require('arisenjs-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.fromString(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/ARISENIO/arisenjs-ecc.git\ncd arisenjs-ecc\nnpm install\nnpm run build_browser\n# builds: ./dist/arisenjs-ecc.js\n# Verify release hash\n```\n\n```html\n<script src=arisenjs-ecc.js></script>\n```\n\n```js\nvar ecc = arisenjs_ecc\n\necc.randomKey().then(privateWif =>  {\n  var pubkey = ecc.privateToPublic(privateWif)\n  console.log(pubkey)\n})\n```\n","readmeFilename":"README.md"}