{"_id":"proof-of-work","_rev":"29-caed85a2e23a71fb8ae42ed58d0a5362","name":"proof-of-work","description":"SHA256 + Bloom filter proof of work","dist-tags":{"latest":"3.3.2"},"versions":{"1.0.0":{"name":"proof-of-work","version":"1.0.0","description":"SHA256 + Bloom filter proof of work","main":"lib/pow.js","bin":{"proof-of-work":"bin/proof-of-work"},"scripts":{"test":"mocha --reporter=spec test/*-test.js"},"repository":{"type":"git","url":"git://github.com/indutny/proof-of-work.git"},"keywords":["proof","of","work","sha256","bloom"],"author":{"name":"Fedor Indutny","email":"fedor@indutny.com"},"license":"MIT","bugs":{"url":"https://github.com/indutny/proof-of-work/issues"},"homepage":"https://github.com/indutny/proof-of-work#readme","devDependencies":{"mocha":"^2.4.5"},"dependencies":{},"gitHead":"76ef4fe53fec2a391199dbe72100d6efaa679496","_id":"proof-of-work@1.0.0","_shasum":"fc833308ef5f05a21d40760d467d6035d0d071f3","_from":".","_npmVersion":"3.8.6","_nodeVersion":"6.0.0","_npmUser":{"name":"indutny","email":"fedor@indutny.com"},"dist":{"shasum":"fc833308ef5f05a21d40760d467d6035d0d071f3","tarball":"https://registry.npmjs.org/proof-of-work/-/proof-of-work-1.0.0.tgz","integrity":"sha512-GLVsXD/1YZC6ASFvKLDf8iIHvW2RtSbiCFaqAlk7STOrd6WY7B/RBW4lMKt43ZmQb5Z8H2KDrMlapu1XrQQVpQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDKTc94J6ZuxNeMQeA9oWQenNcgeR4pAPWzxOU193zargIhAIQ8UVuRWQuNyOzewAOJdrIKn8xEfEMKvsL3FIYy1Owr"}]},"maintainers":[{"name":"indutny","email":"fedor@indutny.com"}],"_npmOperationalInternal":{"host":"packages-12-west.internal.npmjs.com","tmp":"tmp/proof-of-work-1.0.0.tgz_1462604974686_0.03744846465997398"},"directories":{}},"1.0.1":{"name":"proof-of-work","version":"1.0.1","description":"SHA256 + Bloom filter proof of work","main":"lib/pow.js","bin":{"proof-of-work":"bin/proof-of-work"},"scripts":{"test":"mocha --reporter=spec test/*-test.js"},"repository":{"type":"git","url":"git://github.com/indutny/proof-of-work.git"},"keywords":["proof","of","work","sha256","bloom"],"author":{"name":"Fedor Indutny","email":"fedor@indutny.com"},"license":"MIT","bugs":{"url":"https://github.com/indutny/proof-of-work/issues"},"homepage":"https://github.com/indutny/proof-of-work#readme","devDependencies":{"mocha":"^2.4.5"},"dependencies":{},"gitHead":"789504492a34cb4112b1eba1b8cb7864f4f8fe83","_id":"proof-of-work@1.0.1","_shasum":"a403b19127e82e9579264d09ba4d65ee5fb9d48f","_from":".","_npmVersion":"3.8.6","_nodeVersion":"6.0.0","_npmUser":{"name":"indutny","email":"fedor@indutny.com"},"dist":{"shasum":"a403b19127e82e9579264d09ba4d65ee5fb9d48f","tarball":"https://registry.npmjs.org/proof-of-work/-/proof-of-work-1.0.1.tgz","integrity":"sha512-B26/TR2k4SJgqnGB0crbH09zZXzABk1q97abmXDjAvqWqrpBkpKv3Pmhr0Iwrm82TYi941QxnNnEgUdcZlruwQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCID7/7PeMZqF5sSM9b4iQ4RLjN28iRMO782kP+toNQRauAiEAzFQ1gP3UAGAXYwBPnqVIW/AjEIb/+46Ak6XjMtLa8OY="}]},"maintainers":[{"name":"indutny","email":"fedor@indutny.com"}],"_npmOperationalInternal":{"host":"packages-12-west.internal.npmjs.com","tmp":"tmp/proof-of-work-1.0.1.tgz_1462605196791_0.24437560932710767"},"directories":{}},"1.0.2":{"name":"proof-of-work","version":"1.0.2","description":"SHA256 + Bloom filter proof of work","main":"lib/pow.js","bin":{"proof-of-work":"bin/proof-of-work"},"scripts":{"test":"mocha --reporter=spec test/*-test.js"},"repository":{"type":"git","url":"git://github.com/indutny/proof-of-work.git"},"keywords":["proof","of","work","sha256","bloom"],"author":{"name":"Fedor Indutny","email":"fedor@indutny.com"},"license":"MIT","bugs":{"url":"https://github.com/indutny/proof-of-work/issues"},"homepage":"https://github.com/indutny/proof-of-work#readme","devDependencies":{"mocha":"^2.4.5"},"dependencies":{},"gitHead":"ba395d6b7564c3b5aa20d085f8049545e9008e30","_id":"proof-of-work@1.0.2","_shasum":"900f612f75cf1e9a54f3240939dd5e744170b6b7","_from":".","_npmVersion":"3.8.6","_nodeVersion":"6.0.0","_npmUser":{"name":"indutny","email":"fedor@indutny.com"},"dist":{"shasum":"900f612f75cf1e9a54f3240939dd5e744170b6b7","tarball":"https://registry.npmjs.org/proof-of-work/-/proof-of-work-1.0.2.tgz","integrity":"sha512-7Mw9Lv4mhgNH6TjZZSr3ZNcrsaR9NfjD6pxk/vuRy31hNwz2H11D13rH5X9XpaPO3T+Xq/0+uupr48WBSY6Qtg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIEGC4uYvMraiK/FYgCZwOUdYkBWVL+U+ejdz6k25nghMAiEAgZPB78fObjMOSmqOijsuwA6xccqL7XxmR6tDtNjAnwo="}]},"maintainers":[{"name":"indutny","email":"fedor@indutny.com"}],"_npmOperationalInternal":{"host":"packages-12-west.internal.npmjs.com","tmp":"tmp/proof-of-work-1.0.2.tgz_1462641746815_0.5605330404359847"},"directories":{}},"1.0.3":{"name":"proof-of-work","version":"1.0.3","description":"SHA256 + Bloom filter proof of work","main":"lib/pow.js","bin":{"proof-of-work":"bin/proof-of-work"},"scripts":{"test":"mocha --reporter=spec test/*-test.js"},"repository":{"type":"git","url":"git://github.com/indutny/proof-of-work.git"},"keywords":["proof","of","work","sha256","bloom"],"author":{"name":"Fedor Indutny","email":"fedor@indutny.com"},"license":"MIT","bugs":{"url":"https://github.com/indutny/proof-of-work/issues"},"homepage":"https://github.com/indutny/proof-of-work#readme","devDependencies":{"mocha":"^2.4.5"},"dependencies":{},"gitHead":"23a665d235227f1d41d4afd5bd37a27d7109743a","_id":"proof-of-work@1.0.3","_shasum":"d44add530a5c29dd3dc783fb1fc695ed7dbeb490","_from":".","_npmVersion":"3.8.6","_nodeVersion":"6.0.0","_npmUser":{"name":"indutny","email":"fedor@indutny.com"},"dist":{"shasum":"d44add530a5c29dd3dc783fb1fc695ed7dbeb490","tarball":"https://registry.npmjs.org/proof-of-work/-/proof-of-work-1.0.3.tgz","integrity":"sha512-o1xv0HTkqxXSjd95OhxNIq4IP0+Fu8KThck4tPBzIJRbE2KyT07fLA7/iTHjd3cjqcszIEIviUqtMK1nBbxL9A==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQC50Vw+owWTJfd+L1ELqAQJt8fu13tOU/fqXEm2NL2zOwIgQYb19y5v+lZXBGtyVtcyla9ZmkW5t6f+cKYhNUFKd4I="}]},"maintainers":[{"name":"indutny","email":"fedor@indutny.com"}],"_npmOperationalInternal":{"host":"packages-12-west.internal.npmjs.com","tmp":"tmp/proof-of-work-1.0.3.tgz_1462642096465_0.16496289963833988"},"directories":{}},"2.0.0-alpha0":{"name":"proof-of-work","version":"2.0.0-alpha0","description":"SHA256 + Bloom filter proof of work","main":"lib/pow.js","bin":{"proof-of-work":"bin/proof-of-work"},"scripts":{"test":"mocha --reporter=spec test/*-test.js"},"repository":{"type":"git","url":"git://github.com/indutny/proof-of-work.git"},"keywords":["proof","of","work","sha256","bloom"],"author":{"name":"Fedor Indutny","email":"fedor@indutny.com"},"license":"MIT","bugs":{"url":"https://github.com/indutny/proof-of-work/issues"},"homepage":"https://github.com/indutny/proof-of-work#readme","devDependencies":{"mocha":"^2.4.5"},"dependencies":{},"gitHead":"7f25c11f69859281b07e033f2cacd25a77511731","_id":"proof-of-work@2.0.0-alpha0","_npmVersion":"5.0.3","_nodeVersion":"8.0.0","_npmUser":{"name":"indutny","email":"fedor@indutny.com"},"dist":{"integrity":"sha512-KHgrB5yb2AJwvALeqg8OX0CeclhF8Javz09qx6XrqsySWNEZWVYluBb1cNUw/UXZLTCcd+608RQ/gm3p71fZQA==","shasum":"8eca7ddb83077b2a42ff9b4b6b5bcb73891351e5","tarball":"https://registry.npmjs.org/proof-of-work/-/proof-of-work-2.0.0-alpha0.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCICoV33kmBCw3cShzxbfz0mbu9YrIMNISvavQ8Zc84YQVAiEAnLzPaHvkzatM1wQchRC0EL1C9ecjimhdn7aYgHMvGag="}]},"maintainers":[{"name":"indutny","email":"fedor@indutny.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/proof-of-work-2.0.0-alpha0.tgz_1497726142131_0.35341390618123114"},"directories":{}},"2.0.0-alpha1":{"name":"proof-of-work","version":"2.0.0-alpha1","description":"SHA256 + Bloom filter proof of work","main":"lib/pow.js","bin":{"proof-of-work":"bin/proof-of-work"},"scripts":{"test":"mocha --reporter=spec test/*-test.js"},"repository":{"type":"git","url":"git://github.com/indutny/proof-of-work.git"},"keywords":["proof","of","work","sha256","bloom"],"author":{"name":"Fedor Indutny","email":"fedor@indutny.com"},"license":"MIT","bugs":{"url":"https://github.com/indutny/proof-of-work/issues"},"homepage":"https://github.com/indutny/proof-of-work#readme","devDependencies":{"mocha":"^2.4.5"},"dependencies":{},"gitHead":"bec372d9f227b14d3189a1a0b7b1a02a31fef489","_id":"proof-of-work@2.0.0-alpha1","_npmVersion":"5.0.3","_nodeVersion":"8.0.0","_npmUser":{"name":"indutny","email":"fedor@indutny.com"},"dist":{"integrity":"sha512-BH+W0MO82yQ1GNjMeQnQHmGaTBHypDi3HZUlSlDuzL716K4jVBfRF4x60dfcAbMAqTniVdiTJm5ZKSfxULgWdw==","shasum":"825007b24c5bd8a3bf97f7f8fbf6fceb84c0dab9","tarball":"https://registry.npmjs.org/proof-of-work/-/proof-of-work-2.0.0-alpha1.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDdTtYtBae+YDZF4/30p/w/a7Kaqa0wligD3BYUooEv5gIgW6dsz5vbV8pADb9gzXaRooylB5WcXT6+VdexmXZ44c0="}]},"maintainers":[{"name":"indutny","email":"fedor@indutny.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/proof-of-work-2.0.0-alpha1.tgz_1497726603020_0.47246537427417934"},"directories":{}},"2.0.0-alpha2":{"name":"proof-of-work","version":"2.0.0-alpha2","description":"SHA256 + Bloom filter proof of work","main":"lib/pow.js","bin":{"proof-of-work":"bin/proof-of-work"},"scripts":{"test":"mocha --reporter=spec test/*-test.js"},"repository":{"type":"git","url":"git://github.com/indutny/proof-of-work.git"},"keywords":["proof","of","work","sha256","bloom"],"author":{"name":"Fedor Indutny","email":"fedor@indutny.com"},"license":"MIT","bugs":{"url":"https://github.com/indutny/proof-of-work/issues"},"homepage":"https://github.com/indutny/proof-of-work#readme","devDependencies":{"mocha":"^2.4.5"},"dependencies":{},"gitHead":"455cca7e1e5037d358742586ad72b52c2cd49ba7","_id":"proof-of-work@2.0.0-alpha2","_npmVersion":"5.0.3","_nodeVersion":"8.0.0","_npmUser":{"name":"indutny","email":"fedor@indutny.com"},"dist":{"integrity":"sha512-vwt6iu1qqby+ZXUiHWv4AiSxmzL9DsKqpk2jhddTxbZq9S0qUuo8d+bu9R7yOVBFPSlKc4jD7cNGnDZtfP+nSA==","shasum":"115a4012d0b63934e166fd04fbd8b615b6528c51","tarball":"https://registry.npmjs.org/proof-of-work/-/proof-of-work-2.0.0-alpha2.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQD/6l0ZJxfAt49kwBpP8RJuIpGgQnYQjbvr03ClhlscvwIhAJGYSDWzss/o1aUnw6RW4ZOQ2x7hYq1a6JJuu+yANLc/"}]},"maintainers":[{"name":"indutny","email":"fedor@indutny.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/proof-of-work-2.0.0-alpha2.tgz_1497728694851_0.03320436365902424"},"directories":{}},"2.0.0":{"name":"proof-of-work","version":"2.0.0","description":"SHA256 + Bloom filter proof of work","main":"lib/pow.js","bin":{"proof-of-work":"bin/proof-of-work"},"scripts":{"test":"mocha --reporter=spec test/*-test.js"},"repository":{"type":"git","url":"git://github.com/indutny/proof-of-work.git"},"keywords":["proof","of","work","sha256","bloom"],"author":{"name":"Fedor Indutny","email":"fedor@indutny.com"},"license":"MIT","bugs":{"url":"https://github.com/indutny/proof-of-work/issues"},"homepage":"https://github.com/indutny/proof-of-work#readme","devDependencies":{"mocha":"^2.4.5"},"dependencies":{},"gitHead":"05097cfa4a4ab8b0bbcf2de7699146fdf2316319","_id":"proof-of-work@2.0.0","_npmVersion":"5.0.3","_nodeVersion":"8.0.0","_npmUser":{"name":"indutny","email":"fedor@indutny.com"},"dist":{"integrity":"sha512-nnC9nLxEBVoRXZI7hvTpkV7zmZ5ZSrJfZ3KBt9zt4vsfHQ/adOP1U0Dbc5GaJ6wnSAV2lAWTQzQbps2ZdZMabw==","shasum":"23afb7321fa19d97c4a936ad51e7769426a348d7","tarball":"https://registry.npmjs.org/proof-of-work/-/proof-of-work-2.0.0.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDRbj6uyBIGDiLXI3Wx8LN9WMuqeL0AioLot9agdcK8wwIgMfG5s5zyLZB7uJ1kyOjJYck/S2magm+jNBCFQuIGydI="}]},"maintainers":[{"name":"indutny","email":"fedor@indutny.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/proof-of-work-2.0.0.tgz_1497738333929_0.11851970059797168"},"directories":{}},"2.0.1-alpha0":{"name":"proof-of-work","version":"2.0.1-alpha0","description":"SHA256 + Bloom filter proof of work","main":"lib/pow.js","bin":{"proof-of-work":"bin/proof-of-work"},"scripts":{"test":"mocha --reporter=spec test/*-test.js"},"repository":{"type":"git","url":"git://github.com/indutny/proof-of-work.git"},"keywords":["proof","of","work","sha256","bloom"],"author":{"name":"Fedor Indutny","email":"fedor@indutny.com"},"license":"MIT","bugs":{"url":"https://github.com/indutny/proof-of-work/issues"},"homepage":"https://github.com/indutny/proof-of-work#readme","devDependencies":{"mocha":"^2.4.5"},"dependencies":{"hash.js":"^1.0.3"},"browser":{"crypto":false},"gitHead":"4d037d1b5264f0de46d10ffaaf8c54715cf7b0b1","_id":"proof-of-work@2.0.1-alpha0","_npmVersion":"5.0.3","_nodeVersion":"8.0.0","_npmUser":{"name":"indutny","email":"fedor@indutny.com"},"dist":{"integrity":"sha512-cSP5v+ulqfn51Zn+11Hp6Ly04KlEeLw5euSKp8oAkaWIF7fzB3pOESaelYAPatiKNl5CN2Wr9ThJOtC3FyMgCg==","shasum":"321d4f8a92d4519fe81f8b0c40971a39b626b85f","tarball":"https://registry.npmjs.org/proof-of-work/-/proof-of-work-2.0.1-alpha0.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCICNCsIsvRTHdua9Cns92sLQIZ4kPCo9PG0CdQfiRch8fAiB7fdDzGtIGIrqtqgyw12XXhdRTiFFxrxnLUNF7dO0r8Q=="}]},"maintainers":[{"name":"indutny","email":"fedor@indutny.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/proof-of-work-2.0.1-alpha0.tgz_1497739798855_0.2896864525973797"},"directories":{}},"2.0.1-alpha1":{"name":"proof-of-work","version":"2.0.1-alpha1","description":"SHA256 + Bloom filter proof of work","main":"lib/pow.js","bin":{"proof-of-work":"bin/proof-of-work"},"scripts":{"test":"mocha --reporter=spec test/*-test.js"},"repository":{"type":"git","url":"git://github.com/indutny/proof-of-work.git"},"keywords":["proof","of","work","sha256","bloom"],"author":{"name":"Fedor Indutny","email":"fedor@indutny.com"},"license":"MIT","bugs":{"url":"https://github.com/indutny/proof-of-work/issues"},"homepage":"https://github.com/indutny/proof-of-work#readme","devDependencies":{"mocha":"^2.4.5"},"dependencies":{"hash.js":"^1.0.3"},"browser":{"crypto":false},"gitHead":"da11a1418c03f107994b2e2fb495d87d834624e6","_id":"proof-of-work@2.0.1-alpha1","_npmVersion":"5.0.3","_nodeVersion":"8.0.0","_npmUser":{"name":"indutny","email":"fedor@indutny.com"},"dist":{"integrity":"sha512-Xbbxk932IKQnxqacwyU1/M4GskuvySG1HaTqB54X6JhcOmHTZEoaJYSLA0XAweM9zOhYaSaQrJ5y3gClmPr/iA==","shasum":"94fb5a1f00a82ab66a00b02136de53dfea6111b9","tarball":"https://registry.npmjs.org/proof-of-work/-/proof-of-work-2.0.1-alpha1.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDEbWVOP3S00UcWjfRtx8a4MJrW5v/X1xexczXJhvrVQQIgFcsL0qVgffC4YKshU5HMK2ZnZSbL7dZLeSWaIEl02es="}]},"maintainers":[{"name":"indutny","email":"fedor@indutny.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/proof-of-work-2.0.1-alpha1.tgz_1497741464878_0.5573316374793649"},"directories":{}},"2.0.1-alpha2":{"name":"proof-of-work","version":"2.0.1-alpha2","description":"SHA256 + Bloom filter proof of work","main":"lib/pow.js","bin":{"proof-of-work":"bin/proof-of-work"},"scripts":{"test":"mocha --reporter=spec test/*-test.js"},"repository":{"type":"git","url":"git://github.com/indutny/proof-of-work.git"},"keywords":["proof","of","work","sha256","bloom"],"author":{"name":"Fedor Indutny","email":"fedor@indutny.com"},"license":"MIT","bugs":{"url":"https://github.com/indutny/proof-of-work/issues"},"homepage":"https://github.com/indutny/proof-of-work#readme","devDependencies":{"mocha":"^2.4.5"},"dependencies":{"hash.js":"^1.0.3"},"browser":{"crypto":false},"gitHead":"e7815b98240ea6b686b6c43cdf0cfedd43c12e94","_id":"proof-of-work@2.0.1-alpha2","_npmVersion":"5.0.3","_nodeVersion":"8.0.0","_npmUser":{"name":"indutny","email":"fedor@indutny.com"},"dist":{"integrity":"sha512-QpVwtQX0uCZz26Nq0OfkPB1oZDmXfAB5iCmLrYHL8sMvI4GUn9RhlUm4jLw5V9dTETZ1L54BROvAaEYzu7hG3A==","shasum":"c593991a31e628af8b98054720a43b4625a55342","tarball":"https://registry.npmjs.org/proof-of-work/-/proof-of-work-2.0.1-alpha2.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIAVlIlIng62pefPSutANegsM/05YZlp4cxmhKQXycW7IAiAztRcVTb1Ee0vNmAic1FRHhqAxSdSolmn7BnPaDBSueg=="}]},"maintainers":[{"name":"indutny","email":"fedor@indutny.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/proof-of-work-2.0.1-alpha2.tgz_1497741544794_0.16694028698839247"},"directories":{}},"2.0.1-alpha3":{"name":"proof-of-work","version":"2.0.1-alpha3","description":"SHA256 + Bloom filter proof of work","main":"lib/pow.js","bin":{"proof-of-work":"bin/proof-of-work"},"scripts":{"test":"mocha --reporter=spec test/*-test.js"},"repository":{"type":"git","url":"git://github.com/indutny/proof-of-work.git"},"keywords":["proof","of","work","sha256","bloom"],"author":{"name":"Fedor Indutny","email":"fedor@indutny.com"},"license":"MIT","bugs":{"url":"https://github.com/indutny/proof-of-work/issues"},"homepage":"https://github.com/indutny/proof-of-work#readme","devDependencies":{"mocha":"^2.4.5"},"dependencies":{"hash.js":"^1.0.3"},"browser":{"crypto":false},"gitHead":"64657773ea1ccfe511c70d7f5aab6bc617f65f45","_id":"proof-of-work@2.0.1-alpha3","_npmVersion":"5.0.3","_nodeVersion":"8.0.0","_npmUser":{"name":"indutny","email":"fedor@indutny.com"},"dist":{"integrity":"sha512-CRNbJXP8c6V6i1r5k5PjLlslSBDbZHKo9IAPlNjuSlppd0Fc/3NnZ2CqkQpNlYzgog4npbUz5v/F+6bJ0EZKZQ==","shasum":"a38d5badd6b6e20e81a05b342d7f13dac428a4eb","tarball":"https://registry.npmjs.org/proof-of-work/-/proof-of-work-2.0.1-alpha3.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDJt0zNxPQIekeuLUxbK8ZFpz72OGbcoT2OGrqNEsTKygIhAMhfSm8+rjoMy52r/aYw31FgKLa8VyeMbJqAVFcVRAqi"}]},"maintainers":[{"name":"indutny","email":"fedor@indutny.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/proof-of-work-2.0.1-alpha3.tgz_1497741602546_0.9810863819438964"},"directories":{}},"2.0.1-alpha4":{"name":"proof-of-work","version":"2.0.1-alpha4","description":"SHA256 + Bloom filter proof of work","main":"lib/pow.js","bin":{"proof-of-work":"bin/proof-of-work"},"scripts":{"test":"mocha --reporter=spec test/*-test.js"},"repository":{"type":"git","url":"git://github.com/indutny/proof-of-work.git"},"keywords":["proof","of","work","sha256","bloom"],"author":{"name":"Fedor Indutny","email":"fedor@indutny.com"},"license":"MIT","bugs":{"url":"https://github.com/indutny/proof-of-work/issues"},"homepage":"https://github.com/indutny/proof-of-work#readme","devDependencies":{"mocha":"^2.4.5"},"dependencies":{"hash.js":"^1.0.3"},"browser":{"crypto":false},"gitHead":"0621a9cf8461558e414c662e4631ec5f13b09c5d","_id":"proof-of-work@2.0.1-alpha4","_npmVersion":"5.0.3","_nodeVersion":"8.0.0","_npmUser":{"name":"indutny","email":"fedor@indutny.com"},"dist":{"integrity":"sha512-PgrtYVrvC3baufjNCsG7sbvUhvcMM57CigxMuOlT9eEkFwt6C1eZjrRRpB2kKa2VrV50E2qFO1I5rcSj79MUSg==","shasum":"151a58084ef6d069d6d98f5a8bef25d03308e8f5","tarball":"https://registry.npmjs.org/proof-of-work/-/proof-of-work-2.0.1-alpha4.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDoKqnSurouKaAnX+d/yKmWwxh7t6DwFMbW0LdPDLa1AwIgCdMlYGZtnHPheHucIDqbwX9/0qhK7+JA1ELtZIxY5MU="}]},"maintainers":[{"name":"indutny","email":"fedor@indutny.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/proof-of-work-2.0.1-alpha4.tgz_1497741691497_0.4846266738604754"},"directories":{}},"2.0.1":{"name":"proof-of-work","version":"2.0.1","description":"SHA256 + Bloom filter proof of work","main":"lib/pow.js","bin":{"proof-of-work":"bin/proof-of-work"},"scripts":{"test":"mocha --reporter=spec test/*-test.js"},"repository":{"type":"git","url":"git://github.com/indutny/proof-of-work.git"},"keywords":["proof","of","work","sha256","bloom"],"author":{"name":"Fedor Indutny","email":"fedor@indutny.com"},"license":"MIT","bugs":{"url":"https://github.com/indutny/proof-of-work/issues"},"homepage":"https://github.com/indutny/proof-of-work#readme","devDependencies":{"mocha":"^2.4.5"},"dependencies":{"hash.js":"^1.0.3"},"browser":{"crypto":false},"gitHead":"4bcf68208c13a711fba23b5e440a47fb3fce311a","_id":"proof-of-work@2.0.1","_npmVersion":"5.0.3","_nodeVersion":"8.0.0","_npmUser":{"name":"indutny","email":"fedor@indutny.com"},"dist":{"integrity":"sha512-XKEhmpLq1rO1q6WI0oxe3s+NOdNNDa5SH3spOgGek34FUJmljvIvOZuxjwRp2jFbCAZ4ybtzZNzVa/y0TLcY8Q==","shasum":"acf61e52ee94a5d612458fcf3bb9d9d0aa0aa8da","tarball":"https://registry.npmjs.org/proof-of-work/-/proof-of-work-2.0.1.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCICEmnbc8Y/6g7RV6JDifNIzO74RizNnLSYb75TyEyZmtAiEA9x9zNu4TgaOfdDtunPLgiLZViHlLtaIecWCUA2Hn5iA="}]},"maintainers":[{"name":"indutny","email":"fedor@indutny.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/proof-of-work-2.0.1.tgz_1497743901135_0.5149319267366081"},"directories":{}},"3.0.0":{"name":"proof-of-work","version":"3.0.0","description":"SHA256 + Bloom filter proof of work","main":"lib/pow.js","bin":{"proof-of-work":"bin/proof-of-work"},"scripts":{"test":"mocha --reporter=spec test/*-test.js"},"repository":{"type":"git","url":"git://github.com/indutny/proof-of-work.git"},"keywords":["proof","of","work","sha256","bloom"],"author":{"name":"Fedor Indutny","email":"fedor@indutny.com"},"license":"MIT","bugs":{"url":"https://github.com/indutny/proof-of-work/issues"},"homepage":"https://github.com/indutny/proof-of-work#readme","devDependencies":{"mocha":"^2.4.5"},"dependencies":{"hash.js":"^1.0.3"},"browser":{"crypto":false},"gitHead":"7515fdc9d1ed9857a0d2bc409f57b6a0b084192d","_id":"proof-of-work@3.0.0","_npmVersion":"5.0.3","_nodeVersion":"8.0.0","_npmUser":{"name":"indutny","email":"fedor@indutny.com"},"dist":{"integrity":"sha512-KbA345/ATiQr44NlAIITSOsiJbO1P1CwwKdZEuyGCAFWOSUI+51G6qnKnAbJsbNnBhnoFCs/3kQZhdjPTwKKaw==","shasum":"b7051833bb4d3c350a3862a2d713d0becda13e3f","tarball":"https://registry.npmjs.org/proof-of-work/-/proof-of-work-3.0.0.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQC5AlYEiA+dJBvcSVQBTVXILbVF2Q1+e30hWB91GoZfAAIhAO5bN6FCwFFTsz8YL2qurSw4dGA6Y3xgNlo4tMTOPgkK"}]},"maintainers":[{"name":"indutny","email":"fedor@indutny.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/proof-of-work-3.0.0.tgz_1497746060556_0.4854642297141254"},"directories":{}},"3.0.1":{"name":"proof-of-work","version":"3.0.1","description":"SHA256 + Bloom filter proof of work","main":"lib/pow.js","bin":{"proof-of-work":"bin/proof-of-work"},"scripts":{"test":"mocha --reporter=spec test/*-test.js"},"repository":{"type":"git","url":"git://github.com/indutny/proof-of-work.git"},"keywords":["proof","of","work","sha256","bloom"],"author":{"name":"Fedor Indutny","email":"fedor@indutny.com"},"license":"MIT","bugs":{"url":"https://github.com/indutny/proof-of-work/issues"},"homepage":"https://github.com/indutny/proof-of-work#readme","devDependencies":{"mocha":"^2.4.5"},"dependencies":{"hash.js":"^1.0.3"},"browser":{"crypto":false},"gitHead":"4c6f0da3241ee409de8c653cb5b7524b0db2b344","_id":"proof-of-work@3.0.1","_npmVersion":"5.0.3","_nodeVersion":"8.0.0","_npmUser":{"name":"indutny","email":"fedor@indutny.com"},"dist":{"integrity":"sha512-WOtdwqFoboovbGmHgDajHaC/aTXJM7zTMN0++XcInzOi1U26N51yIr1i+yWjWsFXNk4Tcb9jvc+OCMSwhnymlA==","shasum":"f65f044dc3b57df1fe1cad3a26552584643fee69","tarball":"https://registry.npmjs.org/proof-of-work/-/proof-of-work-3.0.1.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCICeMoRdaSUeJFCILN2myXCcitqMOr8ZK1y8KJiRHAzXWAiEA99k132Ocyz5CHyN0QrtMBKM1Vcnpzx2SaFnSFnVe/io="}]},"maintainers":[{"name":"indutny","email":"fedor@indutny.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/proof-of-work-3.0.1.tgz_1497747882529_0.668978912057355"},"directories":{}},"3.0.2":{"name":"proof-of-work","version":"3.0.2","description":"SHA256 + Bloom filter proof of work","main":"lib/pow.js","bin":{"proof-of-work":"bin/proof-of-work"},"files":["lib","bin"],"scripts":{"test":"mocha --reporter=spec test/*-test.js"},"repository":{"type":"git","url":"git://github.com/indutny/proof-of-work.git"},"keywords":["proof","of","work","sha256","bloom"],"author":{"name":"Fedor Indutny","email":"fedor@indutny.com"},"license":"MIT","bugs":{"url":"https://github.com/indutny/proof-of-work/issues"},"homepage":"https://github.com/indutny/proof-of-work#readme","devDependencies":{"mocha":"^2.4.5"},"dependencies":{"hash.js":"^1.0.3"},"browser":{"crypto":false},"gitHead":"4c8ab7288820971fcd27b67f320b65193cce3e1e","_id":"proof-of-work@3.0.2","_npmVersion":"5.0.3","_nodeVersion":"8.0.0","_npmUser":{"name":"indutny","email":"fedor@indutny.com"},"dist":{"integrity":"sha512-tyqOp4PIl9k18QgQlG69GIWg++fhzNJTBbxTmkPLj38c+NvxZkLq/Mb27thg/gC0UHE6Z5M/7n2kozQs4O+9Yg==","shasum":"41643f16042a91caf2e32808ab9b4288ae8b8a5a","tarball":"https://registry.npmjs.org/proof-of-work/-/proof-of-work-3.0.2.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDmBscrHmOoz3j14aXYe5BQb2MMDjq1jqlaYeBqtAkkEAIgB5gbp65xnDHsdEnYfIaiT6kX9qssxBJRU3NruH4Fswk="}]},"maintainers":[{"name":"indutny","email":"fedor@indutny.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/proof-of-work-3.0.2.tgz_1497850058556_0.566224125912413"},"directories":{}},"3.0.3-alpha0":{"name":"proof-of-work","version":"3.0.3-alpha0","description":"SHA256 + Bloom filter proof of work","main":"lib/pow.js","bin":{"proof-of-work":"bin/proof-of-work"},"files":["lib","bin"],"scripts":{"test":"mocha --reporter=spec test/*-test.js"},"repository":{"type":"git","url":"git://github.com/indutny/proof-of-work.git"},"keywords":["proof","of","work","sha256","bloom"],"author":{"name":"Fedor Indutny","email":"fedor@indutny.com"},"license":"MIT","bugs":{"url":"https://github.com/indutny/proof-of-work/issues"},"homepage":"https://github.com/indutny/proof-of-work#readme","devDependencies":{"mocha":"^2.4.5"},"dependencies":{"hash.js":"^1.0.3","minimalistic-assert":"^1.0.0"},"browser":{"crypto":false,"buffer":false},"gitHead":"11c9edbb2917de300f42e098225b01e9cfc6c2c5","_id":"proof-of-work@3.0.3-alpha0","_npmVersion":"5.0.3","_nodeVersion":"8.0.0","_npmUser":{"name":"indutny","email":"fedor@indutny.com"},"dist":{"integrity":"sha512-eUO+RUqZdlnXRY2EGHao8yI3NOHUG7IszDeAbNHaE7V8NwCcPFFiiW5EQvIoBnFKo0oL894QPuSYpbkHZQx1Nw==","shasum":"e7916c393d29500b62cab70165164fa761496e4b","tarball":"https://registry.npmjs.org/proof-of-work/-/proof-of-work-3.0.3-alpha0.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIEqHUzfxR2/IvNtx3c3mMrjT5g1WiKhtPSO4/g902f2cAiAkqjY6XfwrH+HnF5zyD2Mx45Z8fpr2S+H/qa9NhX4ZSA=="}]},"maintainers":[{"name":"indutny","email":"fedor@indutny.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/proof-of-work-3.0.3-alpha0.tgz_1497917689230_0.030656113987788558"},"directories":{}},"3.0.3":{"name":"proof-of-work","version":"3.0.3","description":"SHA256 + Bloom filter proof of work","main":"lib/pow.js","bin":{"proof-of-work":"bin/proof-of-work"},"files":["lib","bin"],"scripts":{"test":"mocha --reporter=spec test/*-test.js"},"repository":{"type":"git","url":"git://github.com/indutny/proof-of-work.git"},"keywords":["proof","of","work","sha256","bloom"],"author":{"name":"Fedor Indutny","email":"fedor@indutny.com"},"license":"MIT","bugs":{"url":"https://github.com/indutny/proof-of-work/issues"},"homepage":"https://github.com/indutny/proof-of-work#readme","devDependencies":{"mocha":"^2.4.5"},"dependencies":{"hash.js":"^1.0.3","minimalistic-assert":"^1.0.0"},"browser":{"crypto":false,"buffer":false},"gitHead":"106bff7fcd10e50d2d6cccd3bf1cc118fd72a65b","_id":"proof-of-work@3.0.3","_npmVersion":"5.0.3","_nodeVersion":"8.0.0","_npmUser":{"name":"indutny","email":"fedor@indutny.com"},"dist":{"integrity":"sha512-grUkn+gWx4aEmZS9k1SgbVLEJ1yuZSu+oKtBEn/PaRPdfwU5XMUYOo0T5mL+R0tlG7eox1yLEQPmPEn31iu6zw==","shasum":"2fe241bac4d5669d69c91cfb436231e44e7632dc","tarball":"https://registry.npmjs.org/proof-of-work/-/proof-of-work-3.0.3.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIB13Pps9CxW7HflTzDR5NWqvFxhB8oMGWG02Gnr8SZLNAiBeB9Wxh1+YjNt4MaH7FKmFk+MHgKUajgE2p7FbLhd6Ng=="}]},"maintainers":[{"name":"indutny","email":"fedor@indutny.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/proof-of-work-3.0.3.tgz_1497918598387_0.6002524916548282"},"directories":{}},"3.0.4-rc0":{"name":"proof-of-work","version":"3.0.4-rc0","description":"SHA256 + Bloom filter proof of work","main":"lib/pow.js","bin":{"proof-of-work":"bin/proof-of-work"},"files":["lib","bin"],"scripts":{"test":"npm run test-node && npm run test-browser && npm run lint","test-node":"mocha --reporter=spec test/*-test.js","test-browser":"TEST_ENV=browser mocha --reporter=spec test/*-test.js","lint":"eslint lib/*.js lib/**/*.js lib/**/**/*.js test/*.js"},"repository":{"type":"git","url":"git://github.com/indutny/proof-of-work.git"},"keywords":["proof","of","work","sha256","bloom"],"author":{"name":"Fedor Indutny","email":"fedor@indutny.com"},"license":"MIT","bugs":{"url":"https://github.com/indutny/proof-of-work/issues"},"homepage":"https://github.com/indutny/proof-of-work#readme","devDependencies":{"benchmark":"^2.1.4","eslint":"^4.0.0","mocha":"^2.4.5"},"dependencies":{"hash.js":"^1.0.3","minimalistic-assert":"^1.0.0"},"browser":{"./lib/pow/utils/index.js":"./lib/pow/utils/browser.js"},"gitHead":"e26ab2775197d0ee23b481e1f46dcb07405d608f","_id":"proof-of-work@3.0.4-rc0","_npmVersion":"5.0.3","_nodeVersion":"8.0.0","_npmUser":{"name":"indutny","email":"fedor@indutny.com"},"dist":{"integrity":"sha512-+xFpcMeNCAM+ab5sEgzsxEYiJ0DngJ2I8WOEjxKPC2AphpAPXxgwF8CYp2dXlupJK2tqkPchIZISm8BlKW7KNA==","shasum":"19a98f60c1b2adee69c0ae1a429129fdccdbb497","tarball":"https://registry.npmjs.org/proof-of-work/-/proof-of-work-3.0.4-rc0.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQD/Zv3tKNFltgMzCDS9K9A5cKvWnxZD/kfm+d6GarJ3jgIhAJPcPpLZRVsjsxmZFw7CEaJ/rAsQPKvcc0XPz5yii4EL"}]},"maintainers":[{"name":"indutny","email":"fedor@indutny.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/proof-of-work-3.0.4-rc0.tgz_1497930529075_0.42504580738022923"},"directories":{}},"3.0.4":{"name":"proof-of-work","version":"3.0.4","description":"SHA256 + Bloom filter proof of work","main":"lib/pow.js","bin":{"proof-of-work":"bin/proof-of-work"},"files":["lib","bin"],"scripts":{"test":"npm run test-node && npm run test-browser && npm run lint","test-node":"mocha --reporter=spec test/*-test.js","test-browser":"TEST_ENV=browser mocha --reporter=spec test/*-test.js","lint":"eslint lib/*.js lib/**/*.js lib/**/**/*.js test/*.js"},"repository":{"type":"git","url":"git://github.com/indutny/proof-of-work.git"},"keywords":["proof","of","work","sha256","bloom"],"author":{"name":"Fedor Indutny","email":"fedor@indutny.com"},"license":"MIT","bugs":{"url":"https://github.com/indutny/proof-of-work/issues"},"homepage":"https://github.com/indutny/proof-of-work#readme","devDependencies":{"benchmark":"^2.1.4","eslint":"^4.0.0","mocha":"^2.4.5"},"dependencies":{"hash.js":"^1.0.3","minimalistic-assert":"^1.0.0"},"browser":{"./lib/pow/utils/index.js":"./lib/pow/utils/browser.js"},"gitHead":"c472e00748adb1daf11d43d51cc1f821b3f4313e","_id":"proof-of-work@3.0.4","_npmVersion":"5.0.3","_nodeVersion":"8.0.0","_npmUser":{"name":"indutny","email":"fedor@indutny.com"},"dist":{"integrity":"sha512-iFW/emli5L69GPQD0Ct4wQ+x3pIsWjJvsiskfLBuf9O2GD2XoCr0DMYIrNtJOcNQRfmOR3nv2Plyg3wezxXChw==","shasum":"dd5666de6648bcdfff539427760597bb0cb8bbd9","tarball":"https://registry.npmjs.org/proof-of-work/-/proof-of-work-3.0.4.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCyovxhftSWNN2+MfQxxboBGVKEH1TOW/361NX7FEsNpgIgA/WCRAk0bAECLglLBhlauz8Gs/lRtcM+4G8PonBwxRI="}]},"maintainers":[{"name":"indutny","email":"fedor@indutny.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/proof-of-work-3.0.4.tgz_1497930615493_0.5770234609954059"},"directories":{}},"3.0.5":{"name":"proof-of-work","version":"3.0.5","description":"SHA256 + Bloom filter proof of work","main":"lib/pow.js","bin":{"proof-of-work":"bin/proof-of-work"},"files":["lib","bin"],"scripts":{"test":"npm run test-node && npm run test-browser && npm run lint","test-node":"mocha --reporter=spec test/*-test.js","test-browser":"TEST_ENV=browser mocha --reporter=spec test/*-test.js","lint":"eslint lib/*.js lib/**/*.js lib/**/**/*.js test/*.js"},"repository":{"type":"git","url":"git://github.com/indutny/proof-of-work.git"},"keywords":["proof","of","work","sha256","bloom"],"author":{"name":"Fedor Indutny","email":"fedor@indutny.com"},"license":"MIT","bugs":{"url":"https://github.com/indutny/proof-of-work/issues"},"homepage":"https://github.com/indutny/proof-of-work#readme","devDependencies":{"benchmark":"^2.1.4","eslint":"^4.0.0","mocha":"^2.4.5"},"dependencies":{"hash.js":"^1.1.0","minimalistic-assert":"^1.0.0"},"browser":{"./lib/pow/utils/index.js":"./lib/pow/utils/browser.js"},"gitHead":"93d4cf93b1a5f461d925b11d88979de6d44d60a7","_id":"proof-of-work@3.0.5","_npmVersion":"5.0.3","_nodeVersion":"8.0.0","_npmUser":{"name":"indutny","email":"fedor@indutny.com"},"dist":{"integrity":"sha512-0mIFPlQUaV0LKVqNGnhqFIZot7lS0PNV2Cgw5BMrskdxuvblHOxpqTrkcCsX8TR5NQwVYo01CEKXFruzJwPL8A==","shasum":"bcb3bb9e7e554ec0fc17b766147dbe48235912d3","tarball":"https://registry.npmjs.org/proof-of-work/-/proof-of-work-3.0.5.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDget1bee4t41dMd14K/H95OXio7TRnPecoCfq+Er3iMAIgLzQ35c45yYC+gpMCUY/diL0k5kmSuqdn0fJsRuhtuJg="}]},"maintainers":[{"name":"indutny","email":"fedor@indutny.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/proof-of-work-3.0.5.tgz_1497934438028_0.7897021188400686"},"directories":{}},"3.1.0":{"name":"proof-of-work","version":"3.1.0","description":"SHA256 + Bloom filter proof of work","main":"lib/pow.js","bin":{"proof-of-work":"bin/proof-of-work"},"files":["lib","bin"],"scripts":{"test":"npm run test-node && npm run test-browser && npm run lint","test-node":"mocha --reporter=spec test/*-test.js","test-browser":"TEST_ENV=browser mocha --reporter=spec test/*-test.js","lint":"eslint lib/*.js lib/**/*.js lib/**/**/*.js test/*.js"},"repository":{"type":"git","url":"git://github.com/indutny/proof-of-work.git"},"keywords":["proof","of","work","sha256","bloom"],"author":{"name":"Fedor Indutny","email":"fedor@indutny.com"},"license":"MIT","bugs":{"url":"https://github.com/indutny/proof-of-work/issues"},"homepage":"https://github.com/indutny/proof-of-work#readme","devDependencies":{"benchmark":"^2.1.4","eslint":"^4.0.0","mocha":"^2.4.5"},"dependencies":{"hash.js":"^1.1.0","minimalistic-assert":"^1.0.0"},"browser":{"./lib/pow/utils/index.js":"./lib/pow/utils/browser.js"},"gitHead":"99a3a128a08a9df7e335fd42333d0262d61bd84d","_id":"proof-of-work@3.1.0","_npmVersion":"5.0.3","_nodeVersion":"8.0.0","_npmUser":{"name":"indutny","email":"fedor@indutny.com"},"dist":{"integrity":"sha512-/JXnpdfkUb1Fnt2UhM6/Cyq6/vINu2D+OztBL7Y3/mmBwVLS3K2d5Eg8UIhWc+hC3fn1PdVcbKwZul1Tj7EHWw==","shasum":"6379167ee7caa80fcec733477e51131dac6b13ab","tarball":"https://registry.npmjs.org/proof-of-work/-/proof-of-work-3.1.0.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIFIDa/h1tfBkZmKOdQF2Wsd0LALNTKL8PqiYPdZNkb5oAiEAv4nMiy9nXCk41DaadMsfWZmzg6wt7GAMpM4+7CFWC/Q="}]},"maintainers":[{"name":"indutny","email":"fedor@indutny.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/proof-of-work-3.1.0.tgz_1498236426765_0.8745882716029882"},"directories":{}},"3.3.0":{"name":"proof-of-work","version":"3.3.0","description":"SHA256 + Bloom filter proof of work","main":"lib/pow.js","types":"lib/pow.d.ts","bin":{"proof-of-work":"bin/proof-of-work"},"files":["lib","bin"],"scripts":{"test":"npm run test-node && npm run test-browser && npm run lint","test-node":"mocha --reporter=spec test/*-test.js","test-browser":"TEST_ENV=browser mocha --reporter=spec test/*-test.js","lint":"eslint lib/*.js lib/**/*.js lib/**/**/*.js test/*.js"},"repository":{"type":"git","url":"git://github.com/indutny/proof-of-work.git"},"keywords":["proof","of","work","sha256","bloom"],"author":{"name":"Fedor Indutny","email":"fedor@indutny.com"},"license":"MIT","bugs":{"url":"https://github.com/indutny/proof-of-work/issues"},"homepage":"https://github.com/indutny/proof-of-work#readme","devDependencies":{"benchmark":"^2.1.4","eslint":"^4.19.1","mocha":"^5.2.0"},"dependencies":{"hash.js":"^1.1.5","minimalistic-assert":"^1.0.1"},"browser":{"./lib/pow/utils/index.js":"./lib/pow/utils/browser.js"},"gitHead":"6304c58a99258b948336fd869d3554a730daceb3","_id":"proof-of-work@3.3.0","_npmVersion":"6.2.0","_nodeVersion":"10.5.0","_npmUser":{"name":"indutny","email":"fedor@indutny.com"},"dist":{"integrity":"sha512-pFDbpqKCh+jkl8zxi2GmxIRDb4yH1y5T8mKbTM3zxFDLYTi06IHfHJCWX3r9ty1qnj/ucvG3ZPtMWRuqnA6VbQ==","shasum":"a7d22e4c65304baeba76b2f6fef32ef1c320cc9d","tarball":"https://registry.npmjs.org/proof-of-work/-/proof-of-work-3.3.0.tgz","fileCount":11,"unpackedSize":15199,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbT8iTCRA9TVsSAnZWagAAG40P/02eNbEkqVPffwWZzzQc\nGf16GBVjr1nNIqXjtCgHLV38GmfKoqOunWdjAec82rRkfPFZFmN/KWy7AIgG\nmq//i1F4GGuQg4pJ+vYhCAfoBtx6Q4W/viqju/EUh5FmsCD/b4ALybEJTUv/\nkeLYYIH9kCth9OSUWpPzyHzG0n1W4TuMqRIaUqWp+lswRuGxkhw0Z4eXqSXX\n7cpxkiVqui3T6uCIdDjPRCwHS3sQ4kWHX5xQy5JNXoNml4gM7TwFlwXKk75i\nnWH7lcimvY0B9dNEz4xfXo6rQX7focDzSZPXXs+6ay8HQg64E2rZFSQYY4zQ\nkqmzoIsYtDu1hdSrqV7h9qSZfEeFS3kkUuHQwHzu12L66eRvkzHyeLgb1ctY\nLEVP+OrBRuOZBgJ19viLc3O5AtWcExQQSXsSQUH0gbIX/ycgmMf9xT2Zqeg5\n/LY6A4VmslGq9Jy2kUcwycgTu6uAgCDXR4ql+UpII4kWJUcAjUvg2RdWlwBf\neUkxAGri4BSbulGYxpJ+1UYaI+GyzPHiZQ8MP14lwzUpOBqVNZE980IWION1\nNnb2pn7quJLS0hg415TxWzYwbLf0a411osLgtQQwsKiU6VNEcCP7C/aa0lJq\nOMLuO/PzMslCdE3LHnES2hjf1dBtlvFRSeN2AAy3vk3phkDJfnWB2nGlOkII\nBWVy\r\n=X1ah\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCICXC6lmN+xhzXnCgoLspNVnw9ukrfjRq/s7H+sFENlRdAiEAtKkdyBSQMSimQJ7t3zPWJNeHgS5pdSCVm714d4Q0gQs="}]},"maintainers":[{"name":"indutny","email":"fedor@indutny.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/proof-of-work_3.3.0_1531955347342_0.7426162384527977"},"_hasShrinkwrap":false},"3.3.1":{"name":"proof-of-work","version":"3.3.1","description":"SHA256 + Bloom filter proof of work","main":"lib/pow.js","types":"lib/pow.d.ts","bin":{"proof-of-work":"bin/proof-of-work"},"files":["lib","bin"],"scripts":{"test":"npm run test-node && npm run test-browser && npm run lint","test-node":"mocha --reporter=spec test/*-test.js","test-browser":"TEST_ENV=browser mocha --reporter=spec test/*-test.js","lint":"eslint lib/*.js lib/**/*.js lib/**/**/*.js test/*.js"},"repository":{"type":"git","url":"git://github.com/indutny/proof-of-work.git"},"keywords":["proof","of","work","sha256","bloom"],"author":{"name":"Fedor Indutny","email":"fedor@indutny.com"},"license":"MIT","bugs":{"url":"https://github.com/indutny/proof-of-work/issues"},"homepage":"https://github.com/indutny/proof-of-work#readme","devDependencies":{"benchmark":"^2.1.4","eslint":"^4.19.1","mocha":"^5.2.0"},"dependencies":{"hash.js":"^1.1.5","minimalistic-assert":"^1.0.1"},"browser":{"./lib/pow/utils/index.js":"./lib/pow/utils/browser.js"},"gitHead":"2328e188f403fb7ea8f6f0b36621c55247289923","_id":"proof-of-work@3.3.1","_npmVersion":"6.2.0","_nodeVersion":"10.5.0","_npmUser":{"name":"indutny","email":"fedor@indutny.com"},"dist":{"integrity":"sha512-TBInP1cmk5Ketd5c/HQYxJkhia1A2ari8S8dI831G8uqBax2n8cVi84eDwQNxiTKvyC/qIhtTOiIe4psFvRGUA==","shasum":"b0c2b22b4dec0ca0c424949223aa44a46bda36d3","tarball":"https://registry.npmjs.org/proof-of-work/-/proof-of-work-3.3.1.tgz","fileCount":11,"unpackedSize":15216,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbT8kpCRA9TVsSAnZWagAASWgQAJl2N03DkGCRSDCgbFuK\n5sJ5Wx8q0dIvgxHI/Kwy1GtRWF/vwi++6TZzRjs+cdRrKxVbMQSjnaoenBF/\nz15hWxOotDodaxeYucjbGan/+y8hhmbiP4UVUL8fc1SeQwDqr3KHOSgBHviL\nBgAd0cRoBuGZ+R4y0yhTfgURw3mJaHXPFAvpHqypeG+5IUS4mLLIs0Ih1OEK\nyNzAGO2dyKHMfVwZDi3BVPavc0akHBtGy/q0SkFhsS+U1AjqBSD/mnuyOrkb\nY3oVSmZNtwdh7znFvX/gPWxAlOQh677fMCqyX9pOpKT/wuIoYcNuW7jvhV4+\nVu38XpXBNWp5WXYipZfwRYX8U3TTVHZymR7Njac7QcUl+uijNNLVhELoWVdO\nAEQbvxLTpMMRPKQ2t3uCEFdEGhsztGPcpw4+PjmNkYVJJtOMNBQM/rThEhL3\nH9QOoD5o9PmOdgTNukTqHBqmd23eIW9O4OIExlwSmcaL4+svbFk792Pq6hR0\nlIXOCYpe57/AbDiQwr9XuiGuCHGoV9qVFON/0t+UAH1RF7F9Hp9RYqr9SRgv\n7aWvPjaCJFGB34CeJmqSBpO3oy3W6K8coOW+wjjjWLo7eTaCZ/EUaaePBFs9\nFe+yBq43RlJmQN/ytG1H2SQ0neh6PKeZmnNO/wvPrmLyPyCuskBvKCBzyw1N\nNdeY\r\n=9tFO\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCwASVZcMDHIcoyl/6VnSjwQFPXbc8cNz89cBrwP6daegIhALN5O/Lk48/skO5hrvIdp9IO1LwbkNXxLjnbjn8N3Zuw"}]},"maintainers":[{"name":"indutny","email":"fedor@indutny.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/proof-of-work_3.3.1_1531955497518_0.6383768883302474"},"_hasShrinkwrap":false},"3.3.2":{"name":"proof-of-work","version":"3.3.2","description":"SHA256 + Bloom filter proof of work","main":"lib/pow.js","types":"lib/pow.d.ts","bin":{"proof-of-work":"bin/proof-of-work"},"files":["lib","bin"],"scripts":{"test":"npm run test-node && npm run test-browser && npm run lint","test-node":"mocha --reporter=spec test/*-test.js","test-browser":"TEST_ENV=browser mocha --reporter=spec test/*-test.js","lint":"eslint lib/*.js lib/**/*.js lib/**/**/*.js test/*.js"},"repository":{"type":"git","url":"git://github.com/indutny/proof-of-work.git"},"keywords":["proof","of","work","sha256","bloom"],"author":{"name":"Fedor Indutny","email":"fedor@indutny.com"},"license":"MIT","bugs":{"url":"https://github.com/indutny/proof-of-work/issues"},"homepage":"https://github.com/indutny/proof-of-work#readme","devDependencies":{"benchmark":"^2.1.4","eslint":"^4.19.1","mocha":"^5.2.0"},"dependencies":{"hash.js":"^1.1.5","minimalistic-assert":"^1.0.1"},"browser":{"./lib/pow/utils/index.js":"./lib/pow/utils/browser.js"},"gitHead":"ee360bbeead6afda611079a16e30125c3de07f34","_id":"proof-of-work@3.3.2","_npmVersion":"6.2.0","_nodeVersion":"10.5.0","_npmUser":{"name":"indutny","email":"fedor@indutny.com"},"dist":{"integrity":"sha512-ROpyf10hPlpYats73JdB6RxD93RkJPGZQ/ztHRWMGVYthoB1YHViEzc3cOOlmLGgIJftiePsdlgL4g865GiXSA==","shasum":"98b70a77588880c21d591e455d1c3fa28725c919","tarball":"https://registry.npmjs.org/proof-of-work/-/proof-of-work-3.3.2.tgz","fileCount":11,"unpackedSize":15240,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJbWd6gCRA9TVsSAnZWagAA9ZkP/jR8GSj7yuM4rJJnKzfb\nrnBgQKrrrYrySQJKtePL0Vl6mpskkfTqklQl2AjFXQvSkXcmK4RCItHaDxBp\nSmjQVTx1gBjCCSI+/m/teqpKk2Y4XzgDVqhy/T8hOzTVEfIrqAuIURTqvAQO\nZahs2Mf5MgzXLzRIJL3gjf+sdbnQNmdw+K6L2CQqDej+PgcuRJhxFukuBrr9\n8OrvU2Wfl5AQq8efdfvR10klhZzSCspvOBxQgXI0dCz07WZuaTq6HCP2bzmU\nSv743LcYCUpqoxSlAbkGPTjpQ01RKXYOYfO4NSckq5JEuFFXFcyyUA1pMORa\nIJhlEikYO22z4OCGZM6RGbrVx3fOO7fZUvtqIza181uxizn/HDt1vARBUonR\nxzD6QLW5B9tLj65n4BGmMReJmDUh9N67DYmndcXDfAw5ramBSqdL9KfFL7AW\no+2kBtZpA6gsr6AKO4AoJeOpn9rLg51bsJygivpqWhaz5/i2hQEPEnhpdvF1\n2zwVFVNn1uEIzop5hUW316oZwe89XQtx8IgmqUGU9igfXfScyIlpjzI9lpxT\ncexJgQz5u9iM7Z/E1YV+DZeljYj7YoQ/sga9r6ubO8R27NplZAB5itU4qV9f\nrm+YreUoNsoNx9CiDhbLR99Sa1txUMYk2wJheEXRFeCQZmR8HeNTRZLA4kUD\npjBP\r\n=Ap2E\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDzyqkqmA1wjbeRW3Rap2jNyxUDeN5XeanY70dCNpGM6QIhAOr4F6J0LFV6U0uLQ1oLQmqw1UNggCfZrxeey6QGiT0U"}]},"maintainers":[{"name":"indutny","email":"fedor@indutny.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/proof-of-work_3.3.2_1532616352710_0.9620647674181515"},"_hasShrinkwrap":false}},"readme":"# proof-of-work\n[![Build Status](https://secure.travis-ci.org/indutny/proof-of-work.svg)](http://travis-ci.org/indutny/proof-of-work)\n[![NPM version](https://badge.fury.io/js/proof-of-work.svg)](http://badge.fury.io/js/proof-of-work)\n\nProof of work based on SHA256 and Bloom filter.\n\n## Usage\n\nSolver:\n```js\nconst pow = require('proof-of-work');\n\nconst solver = new pow.Solver();\n\n// complexity=13 prefix=abcd\nconst prefix = Buffer.from('abcd', 'hex');\nconst nonce = solver.solve(13, /* optional */ prefix);\nconsole.log(nonce);\n```\n\nVerifier:\n```js\nconst pow = require('proof-of-work');\n\nconst verifier = new pow.Verifier({\n  // bit-size of Bloom filter\n  size: 1024,\n\n  // number of hash functions in a Bloom filter\n  n: 16,\n\n  // target complexity\n  complexity: 19,\n\n  // **recommended, but optional** nonce prefix\n  // It is highly suggested to use unique nonce prefix for your application\n  // to avoid nonce-reuse attack\n  prefix: Buffer.from('abcd', 'hex'),\n\n  // nonce validity time (default: one minute)\n  validity: 60000\n});\n\n// Remove stale nonces from Bloom filter\nsetInterval(() => {\n  verifier.reset();\n}, 60000);\n\nverifier.check(nonce);\n\n// Optionally, complexity may be raised/lowered in specific cases\nverifier.check(nonce, 21);\n```\n\n## CLI\n\n```bash\n$ npm install -g proof-of-work\n\n$ proof-of-work -h\nUsage: proof-of-work [prefix] <complexity>                - generate nonce\n       proof-of-work verify [prefix] <complexity> [nonce] - verify nonce\n\n$ proof-of-work 20\n0000015cb7756da0812e3b723dcdcfbd\n\n$ proof-of-work verify 20 \\\n    0000015cb7756da0812e3b723dcdcfbd && \\\n    echo success\nsuccess\n\n$ proof-of-work 13 | proof-of-work verify 13 && echo success\nsuccess\n\n$ proof-of-work 0 | proof-of-work verify 32 || echo failure\nfailure\n```\n\n## Technique\n\nThe generated nonce must have following structure:\n\n```\n[ Unsigned 64-bit Big Endian timestamp ] [ ... random bytes ]\n```\n\nTimestamp MUST be equal to number of milliseconds since\n`1970-01-01T00:00:00.000Z` in UTC time.\n\nVerifier has two Bloom filters: current and previous, and operates using\nfollowing algorithm:\n\n1. Check that `8 < nonce.length <= 32` (byte length)\n2. Check that timestamp is within validity range:\n   `Math.abs(timestamp - Date.now()) <= validity`\n3. Look up `nonce` in both Bloom filters. If present in any of them - fail\n4. Compute `SHA256(prefix ++ nonce)` and check that `N = complexity`\n   most-significant bits (in Big Endian encoding) are zero\n5. Add `nonce` to the current Bloom filter\n\n`verifier.reset()` copies current Bloom filter to previous, and resets current\nBloom filter.\n\n## Complexity\n\nHere is a chart of average time in seconds to solution vs target complexity:\n\n![timing][0]\n\n## LICENSE\n\nThis software is licensed under the MIT License.\n\nCopyright Fedor Indutny, 2017.\n\nPermission is hereby granted, free of charge, to any person obtaining a\ncopy of this software and associated documentation files (the\n\"Software\"), to deal in the Software without restriction, including\nwithout limitation the rights to use, copy, modify, merge, publish,\ndistribute, sublicense, and/or sell copies of the Software, and to permit\npersons to whom the Software is furnished to do so, subject to the\nfollowing conditions:\n\nThe above copyright notice and this permission notice shall be included\nin all copies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS\nOR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF\nMERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN\nNO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,\nDAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR\nOTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE\nUSE OR OTHER DEALINGS IN THE SOFTWARE.\n\n[0]: https://raw.githubusercontent.com/indutny/proof-of-work/master/images/pow.png\n","maintainers":[{"name":"indutny","email":"fedor@indutny.com"}],"time":{"modified":"2022-06-24T20:01:09.255Z","created":"2016-05-07T07:09:36.924Z","1.0.0":"2016-05-07T07:09:36.924Z","1.0.1":"2016-05-07T07:13:19.113Z","1.0.2":"2016-05-07T17:22:29.206Z","1.0.3":"2016-05-07T17:28:18.826Z","2.0.0-alpha0":"2017-06-17T19:02:23.148Z","2.0.0-alpha1":"2017-06-17T19:10:04.196Z","2.0.0-alpha2":"2017-06-17T19:44:55.752Z","2.0.0":"2017-06-17T22:25:34.823Z","2.0.1-alpha0":"2017-06-17T22:49:59.845Z","2.0.1-alpha1":"2017-06-17T23:17:45.819Z","2.0.1-alpha2":"2017-06-17T23:19:05.734Z","2.0.1-alpha3":"2017-06-17T23:20:03.468Z","2.0.1-alpha4":"2017-06-17T23:21:32.491Z","2.0.1":"2017-06-17T23:58:21.992Z","3.0.0":"2017-06-18T00:34:21.525Z","3.0.1":"2017-06-18T01:04:43.496Z","3.0.2":"2017-06-19T05:27:39.555Z","3.0.3-alpha0":"2017-06-20T00:14:50.160Z","3.0.3":"2017-06-20T00:29:59.465Z","3.0.4-rc0":"2017-06-20T03:48:50.019Z","3.0.4":"2017-06-20T03:50:16.462Z","3.0.5":"2017-06-20T04:53:58.958Z","3.1.0":"2017-06-23T16:47:07.710Z","3.3.0":"2018-07-18T23:09:07.399Z","3.3.1":"2018-07-18T23:11:37.590Z","3.3.2":"2018-07-26T14:45:52.756Z"},"homepage":"https://github.com/indutny/proof-of-work#readme","keywords":["proof","of","work","sha256","bloom"],"repository":{"type":"git","url":"git://github.com/indutny/proof-of-work.git"},"author":{"name":"Fedor Indutny","email":"fedor@indutny.com"},"bugs":{"url":"https://github.com/indutny/proof-of-work/issues"},"license":"MIT","readmeFilename":"README.md"}