{"nyc":{"all":true,"cache":false,"exclude":["**/*.d.ts","src/test.ts","src/demo.ts"],"include":["src/**/*.ts"],"require":["ts-node/register/transpile-only","source-map-support/register"],"reporter":["text","lcov"],"extension":[".ts"]},"bugs":{"url":"https://github.com/blockstack/key-encoder-js/issues"},"dist":{"shasum":"324ce6bc175f218e23b599d59e70a457de5b207a","tarball":"https://registry.npmjs.org/key-encoder/-/key-encoder-2.1.0-beta.0.tgz","fileCount":16,"integrity":"sha512-aSkevungUOFW3opGE05v89ka2DJtGyejTir8bu2r5sl0Gug/vDaiUoCIrUDX8SklZ6L5w03JMoKvfhc+nJ280A==","signatures":[{"sig":"MEYCIQCRWurYzbwxw5Su1i7pGHGIGJzX6kmna7LNM72fPBNoCQIhALTwPmerrM+f352v5OdRvvsAWSXTHcBYjmV96z/diE+4","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":39999,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgwNn3CRA9TVsSAnZWagAAf9cQAJxvHu7BkCNCo3zHEzd+\nbWbkJ3obYblyLZMCxScwrdtTg9+lVD91iXE1+zSbiEjMCWg/DvR/Rt/L4k+5\nd2NPAwwF7kfhhzrJyH0SFaBq/zlGidJnlognYHaHa2geum5TzS3UjFoujE9/\nPUeqQ0mEyzxcNB/LAt42OVHvDiBb6ctL7idED4JdFC0OYCjhHHdt3tkBZ51z\neZR+tVJz5hRnF6xmJyRuSCr/1y+xKt9nKaoGhLvV0UgM4XhSY+od93YD3o2u\ndxt5Hi84AfGCrMDmXIOWqMWSAn3P6fOd6DDLilRlk+kaLDy2Nel8FoROwl6X\nO8hdGD74cMszS9noF0eNOGrbA5z5TZizvbr83917B8Q0Iz1v/Q44Vm+uvYmy\nPWLtSQTQwuHjcm0mFuwXOobOXbr4A18WyQSHHbOzAFWthaNcjXn+FM5pECCg\ni3fNc+ebvOrJqDdvdq0YAGhwn3I8iIf/oWHoULsM7Q4E70tvx4PeKJ02RcpG\necBGLFj1YTVgZYkfOVUceEqkoh0nGeI4p0CdRHXoKjV7Tcdl7c2B0lb94wzW\nxnbu3LALjQ1Pgfox/z41rqtbCMCOpEf091S5Yae9/vz4/kCfjJqa8yTtCwwX\n0k3jFxx9UUfrQHydvUdbCUpxG/fay+6veXRLIpWy0Xo9Rq55Ki2sXh5Kld9c\nKQBr\r\n=9QX3\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","name":"key-encoder","author":{"url":"https://onename.com","name":"Halfmoon Labs, Inc.","email":"hello@onename.com"},"readme":"# Key Encoder JS\n\n[![CircleCI](https://img.shields.io/circleci/project/blockstack/key-encoder-js/master.svg)](https://circleci.com/gh/blockstack/key-encoder-js/tree/master)\n[![npm](https://img.shields.io/npm/l/key-encoder.svg)](https://www.npmjs.com/package/key-encoder)\n[![npm](https://img.shields.io/npm/v/key-encoder.svg)](https://www.npmjs.com/package/key-encoder)\n[![npm](https://img.shields.io/npm/dm/key-encoder.svg)](https://www.npmjs.com/package/key-encoder)\n[![Slack](http://slack.blockstack.org/badge.svg)](http://slack.blockstack.org/)\n\n### Installation\n\n```\n$ npm install key-encoder\n```\n\n### Getting Started\n\nTo get started, first define your key encoder and raw private/public keys.\n\n#### SECP256k1 Key Encoders\n\n```js\nvar KeyEncoder = require('key-encoder'),\n    keyEncoder = new KeyEncoder('secp256k1')\n```\n\nAs shown above, there is built in support for SECP256k1 (the curve Bitcoin uses), but you can pass in your own curve parameters for any curve you'd like.\n\n#### Key Encoders w/ Custom Curves\n\n```js\nvar EC = require('elliptic').ec\nvar encoderOptions = {\n    curveParameters: [1, 3, 132, 0, 10],\n    privatePEMOptions: {label: 'EC PRIVATE KEY'},\n    publicPEMOptions: {label: 'PUBLIC KEY'},\n    curve: new EC('secp256k1')\n}\nvar keyEncoder = new KeyEncoder(encoderOptions)\n```\n\n#### Declaring Raw Keys\n\n```js\nvar rawPrivateKey = '844055cca13efd78ce79a4c3a4c5aba5db0ebeb7ae9d56906c03d333c5668d5b',\n    rawPublicKey = '04147b79e9e1dd3324ceea115ff4037b6c877c73777131418bfb2b713effd0f502327b923861581bd5535eeae006765269f404f5f5c52214e9721b04aa7d040a75'\n```\n\n### Encoding Private Keys\n\nEncode to and from raw, PEM (encode to 'pkcs8' and 'pkcs1'), and DER formats.\n\n#### Encoding Private Keys as PEMs\n\n```js\nvar pemPrivateKey = keyEncoder.encodePrivate(rawPrivateKey, 'raw', 'pem', 'pkcs8') //default is 'pkcs1'\n```\n\nExample output:\n\n```\n-----BEGIN PRIVATE KEY-----\nMIGNAgEAMBAGByqGSM49AgEGBSuBBAAKBHYwdAIBAQQghEBVzKE+/XjOeaTDpMWr\npdsOvreunVaQbAPTM8VmjVugBwYFK4EEAAqhRANCAAQUe3np4d0zJM7qEV/0A3ts\nh3xzd3ExQYv7K3E+/9D1AjJ7kjhhWBvVU17q4AZ2Umn0BPX1xSIU6XIbBKp9BAp1\n-----END PRIVATE KEY-----\n```\n\n#### Encoding Private Keys to DER Format\n\n```js\nvar derPrivateKey = keyEncoder.encodePrivate(rawPrivateKey, 'raw', 'der')\n```\n\nExample output:\n\n```\n30740201010420844055cca13efd78ce79a4c3a4c5aba5db0ebeb7ae9d56906c03d333c5668d5ba00706052b8104000aa14403420004147b79e9e1dd3324ceea115ff4037b6c877c73777131418bfb2b713effd0f502327b923861581bd5535eeae006765269f404f5f5c52214e9721b04aa7d040a75\n```\n\n### Encoding Public Keys\n\nEncode to and from raw, PEM, and DER formats.\n\n#### Encoding Public Keys as PEMs\n\n```js\nvar pemPublicKey = keyEncoder.encodePublic(rawPublicKey, 'raw', 'pem')\n```\n\nExample output:\n\n```\n-----BEGIN PUBLIC KEY-----\nMFYwEAYHKoZIzj0CAQYFK4EEAAoDQgAEFHt56eHdMyTO6hFf9AN7bId8c3dxMUGL\n+ytxPv/Q9QIye5I4YVgb1VNe6uAGdlJp9AT19cUiFOlyGwSqfQQKdQ==\n-----END PUBLIC KEY-----\n```\n\n#### Encoding Public Keys to DER Format\n\n```js\nvar derPublicKey = keyEncoder.encodePublic(rawPublicKey, 'raw', 'der')\n```\n\nExample output:\n\n```\n3056301006072a8648ce3d020106052b8104000a03420004147b79e9e1dd3324ceea115ff4037b6c877c73777131418bfb2b713effd0f502327b923861581bd5535eeae006765269f404f5f5c52214e9721b04aa7d040a75\n```\n","gitHead":"2ff866fb5a2f79b93cc762e1efbe7d9869403905","license":"MIT","scripts":{"test":"nyc node ./src/test.ts","compile":"tsc","prepare":"npm run compile","codecovUpload":"codecov","prepublishOnly":"npm run compile"},"_npmUser":{"name":"zone117x","email":"zone117x@gmail.com"},"homepage":"https://github.com/blockstack/key-encoder-js","keywords":["elliptic","elliptic curve","asn","pem","der","ecdsa","crypto","cryptography","private","key","encode","decode","secp256k1","bitcoin","curve","private key","private keys","public key","public keys","keys","ecdsa key","ecdsa keys","key converter","convert keys","key format","key formatter","format keys","key encoder","encode keys"],"repository":{"url":"git+https://github.com/blockstack/key-encoder-js.git","type":"git"},"_npmVersion":"6.14.12","description":"Library for encoding ECDSA private keys to PEM, DER and raw hex formats","directories":{},"maintainers":[{"name":"zone117x","email":"zone117x@gmail.com"},{"name":"shea256","email":"ryan@shea.io"},{"name":"onename","email":"hello@onename.com"},{"name":"ablankstein","email":"aaron@blockstack.com"}],"_nodeVersion":"14.16.1","dependencies":{"bn.js":"^4.11.8","asn1.js":"^5.0.1","elliptic":"^6.4.1","@types/elliptic":"^6.4.9"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"nyc":"^14.1.1","tape":"^4.10.1","codecov":"^3.5.0","ts-node":"^8.2.0","istanbul":"^0.4.5","typescript":"^3.5.1","@types/node":"^10.14.6","@types/tape":"^4.2.33","source-map-support":"^0.5.12"},"_npmOperationalInternal":{"tmp":"tmp/key-encoder_2.1.0-beta.0_1623251447559_0.9040368544237696","host":"s3://npm-registry-packages"},"_id":"key-encoder@2.1.0-beta.0","version":"2.1.0-beta.0"}