{"_id":"js-scrypt","_rev":"4618799","name":"js-scrypt","description":"JS Implementation of SCrypt for use with NodeJS","dist-tags":{"latest":"0.2.0"},"maintainers":[{"name":"tracker1","email":"tracker1@gmail.com"}],"time":{"modified":"2026-04-10T18:18:39.000Z","created":"2013-09-02T15:01:26.114Z","0.2.0":"2013-11-20T21:53:02.464Z","0.1.5":"2013-09-06T18:45:10.347Z","0.1.4":"2013-09-04T21:44:50.587Z","0.1.2":"2013-09-02T15:12:40.936Z","0.1.1":"2013-09-02T15:01:26.114Z"},"users":{},"author":{"name":"Michael J. Ryan","email":"tracker1@gmail.com"},"repository":{"type":"git","url":"git://github.com/tracker1/node-js-scrypt.git"},"versions":{"0.2.0":{"name":"js-scrypt","version":"0.2.0","description":"JS Implementation of SCrypt for use with NodeJS","main":"index.js","directories":{"test":"test"},"scripts":{"test":"mocha"},"repository":{"type":"git","url":"git://github.com/tracker1/node-js-scrypt.git"},"publishConfig":{"registry":"http://registry.npmjs.org/","proxy":null,"https-proxy":null},"keywords":["scrypt","password","auth","authentication","encryption","crypto"],"author":{"name":"Michael J. Ryan","email":"tracker1@gmail.com"},"license":"BSD","bugs":{"url":"https://github.com/tracker1/node-js-scrypt/issues"},"devDependencies":{"mocha":"~1.12.1","chai":"~1.7.2","coffee-script":"~1.6.3"},"dependencies":{"generic-pool":"~2.0.4"},"readmeFilename":"README.md","_id":"js-scrypt@0.2.0","dist":{"shasum":"7a62b701b4616e70ad0cde544627aabb99d7fe39","size":60988,"noattachment":false,"key":"/js-scrypt/-/js-scrypt-0.2.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/js-scrypt/download/js-scrypt-0.2.0.tgz"},"_from":".","_npmVersion":"1.3.11","_npmUser":{"name":"tracker1","email":"tracker1@gmail.com"},"maintainers":[{"name":"tracker1","email":"tracker1@gmail.com"}],"publish_time":1384984382464,"_hasShrinkwrap":false,"_cnpm_publish_time":1384984382464,"_cnpmcore_publish_time":"2021-12-16T13:20:05.673Z"},"0.1.5":{"name":"js-scrypt","version":"0.1.5","description":"JS Implementation of SCrypt for use with NodeJS","main":"index.js","directories":{"test":"test"},"scripts":{"test":"mocha"},"repository":{"type":"git","url":"git://github.com/tracker1/node-js-scrypt.git"},"keywords":["scrypt","password","auth","authentication","encryption","crypto"],"author":{"name":"Michael J. Ryan","email":"tracker1@gmail.com"},"license":"BSD","bugs":{"url":"https://github.com/tracker1/node-js-scrypt/issues"},"devDependencies":{"mocha":"~1.12.1","chai":"~1.7.2","coffee-script":"~1.6.3"},"dependencies":{"generic-pool":"~2.0.4"},"readmeFilename":"README.md","_id":"js-scrypt@0.1.5","dist":{"shasum":"db42b716763df7cd58a3da8ab3be83bd01c28ed6","size":60940,"noattachment":false,"key":"/js-scrypt/-/js-scrypt-0.1.5.tgz","tarball":"http://registry.cnpm.dingdandao.com/js-scrypt/download/js-scrypt-0.1.5.tgz"},"_from":".","_npmVersion":"1.3.8","_npmUser":{"name":"tracker1","email":"tracker1@gmail.com"},"maintainers":[{"name":"tracker1","email":"tracker1@gmail.com"}],"publish_time":1378493110347,"_hasShrinkwrap":false,"_cnpm_publish_time":1378493110347,"_cnpmcore_publish_time":"2021-12-16T13:20:06.162Z"},"0.1.4":{"name":"js-scrypt","version":"0.1.4","description":"JS Implementation of SCrypt for use with NodeJS","main":"index.js","directories":{"test":"test"},"scripts":{"test":"mocha"},"repository":{"type":"git","url":"git://github.com/tracker1/node-js-scrypt.git"},"keywords":["scrypt","password","auth","authentication","encryption","crypto"],"author":{"name":"Michael J. Ryan","email":"tracker1@gmail.com"},"license":"BSD","bugs":{"url":"https://github.com/tracker1/node-js-scrypt/issues"},"devDependencies":{"mocha":"~1.12.1","chai":"~1.7.2","coffee-script":"~1.6.3"},"dependencies":{"generic-pool":"~2.0.4"},"readmeFilename":"README.md","_id":"js-scrypt@0.1.4","dist":{"shasum":"d0275b451d43755c3585fac552fc859abb60fe90","size":60820,"noattachment":false,"key":"/js-scrypt/-/js-scrypt-0.1.4.tgz","tarball":"http://registry.cnpm.dingdandao.com/js-scrypt/download/js-scrypt-0.1.4.tgz"},"_from":".","_npmVersion":"1.3.5","_npmUser":{"name":"tracker1","email":"tracker1@gmail.com"},"maintainers":[{"name":"tracker1","email":"tracker1@gmail.com"}],"publish_time":1378331090587,"_hasShrinkwrap":false,"_cnpm_publish_time":1378331090587,"_cnpmcore_publish_time":"2021-12-16T13:20:07.347Z"},"0.1.2":{"name":"js-scrypt","version":"0.1.2","description":"JS Implementation of SCrypt for use with NodeJS","main":"index.js","directories":{"test":"test"},"scripts":{"test":"mocha"},"repository":{"type":"git","url":"git://github.com/tracker1/node-js-scrypt.git"},"keywords":["scrypt","password","auth","authentication","encryption","crypto"],"author":{"name":"Michael J. Ryan","email":"tracker1@gmail.com"},"license":"BSD","bugs":{"url":"https://github.com/tracker1/node-js-scrypt/issues"},"devDependencies":{"mocha":"~1.12.1","chai":"~1.7.2","coffee-script":"~1.6.3"},"dependencies":{"generic-pool":"~2.0.4"},"readmeFilename":"README.md","_id":"js-scrypt@0.1.2","dist":{"shasum":"ecdb973b3a7afdae1c64b6dffcbced8ffa60fb8c","size":60825,"noattachment":false,"key":"/js-scrypt/-/js-scrypt-0.1.2.tgz","tarball":"http://registry.cnpm.dingdandao.com/js-scrypt/download/js-scrypt-0.1.2.tgz"},"_from":".","_npmVersion":"1.3.5","_npmUser":{"name":"tracker1","email":"tracker1@gmail.com"},"maintainers":[{"name":"tracker1","email":"tracker1@gmail.com"}],"publish_time":1378134760936,"_hasShrinkwrap":false,"_cnpm_publish_time":1378134760936,"_cnpmcore_publish_time":"2021-12-16T13:20:08.029Z"},"0.1.1":{"name":"js-scrypt","version":"0.1.1","description":"JS Implementation of SCrypt for use with NodeJS","main":"index.js","directories":{"test":"test"},"scripts":{"test":"mocha"},"repository":{"type":"git","url":"git://github.com/tracker1/node-js-scrypt.git"},"keywords":["scrypt","password","auth","authentication","encryption","crypto"],"author":{"name":"Michael J. Ryan","email":"tracker1@gmail.com"},"license":"BSD","bugs":{"url":"https://github.com/tracker1/node-js-scrypt/issues"},"devDependencies":{"mocha":"~1.12.1","chai":"~1.7.2","coffee-script":"~1.6.3"},"dependencies":{"generic-pool":"~2.0.4"},"readmeFilename":"README.md","_id":"js-scrypt@0.1.1","dist":{"shasum":"e45a587c908b4a73a4d457a2cd7911f889645efc","size":60834,"noattachment":false,"key":"/js-scrypt/-/js-scrypt-0.1.1.tgz","tarball":"http://registry.cnpm.dingdandao.com/js-scrypt/download/js-scrypt-0.1.1.tgz"},"_from":".","_npmVersion":"1.3.5","_npmUser":{"name":"tracker1","email":"tracker1@gmail.com"},"maintainers":[{"name":"tracker1","email":"tracker1@gmail.com"}],"publish_time":1378134086114,"_hasShrinkwrap":false,"_cnpm_publish_time":1378134086114,"_cnpmcore_publish_time":"2021-12-16T13:20:08.284Z"}},"readme":"node-js-scrypt\r\n==============\r\n\r\n[JS Implementation of SCrypt](https://github.com/tonyg/js-scrypt) wrapped in a module for node.js consumption.\r\n\r\n## Installation\r\n\r\n * npm install (coming soon)\r\n * clone the repository into your node_modules directory\r\n\r\n## Usage\r\n\r\n    var scrypt = require('js-scrypt');\r\n\r\n    //asynchronous\r\n    scrypt.hash(password, salt [,options], callback);\r\n\r\n    //synchronous\r\n    var resultBuffer = scrypt.hashSync(password, salt [,options])\r\n\r\n\r\n## Parameters\r\n\r\n * `password` (String or Buffer) -  the value to be encoded/\r\n   * String will be encoded to bytes as UTF-8.\r\n   * Buffer will be encoded as-is.\r\n * `salt` (String or Buffer) - random data to be included in the hash.\r\n   * String will be encoded to bytes as UTF-8.\r\n   * Buffer will be encoded as-is.\r\n * `options` (Object, optional)\r\n  * `maxmem` (Integer, optional) - the total memory available for scrypt in megabytes\r\n    * default: 32\r\n    * allowed values are (4,8,16,32,64,128,256,512,1024,2048)\r\n  * `cost` (Integer, optional) - (N) must be a power of two, will set the overall difficulty of the computation.\r\n    * default: 16384 - Math.pow(2,14)\r\n    * min: Math.pow(2,8) - 256\r\n    * max: Math.pow(2,64) - 18446744073709552000\r\n    * Math.pow(2,14) - the scrypt paper's suggestion for interactive logins\r\n    * Math.pow(2,20) - scrypt paper suggestion for fulesystem encryption\r\n  * `blockSize` (Integer, optional) - (r) blocksize to use\r\n    * default: 8\r\n    * min: 1\r\n    * max: 256\r\n  * `parallel` (Integer, optional) - (p) parallelization factor\r\n    * default: 1 (given the runtime environment, it is probably best to leave this as-is)\r\n    * min: 1\r\n    * max: 256\r\n  * `size` (Integer, optional) - (L) length of result (number of bytes to generate)\r\n    * default: 64 (this is a 512bit result, which is plenty for general password usage)\r\n    * min: 1\r\n    * max: 2048\r\n  * callback (Function) - function(err, resultBuffer)\r\n\r\n\r\n## License\r\n\r\nnode-js-scrypt is written by Michael J. Ryan <tracker1@gmail.com> \r\nand is licensed under the [2-clause BSD license](http://opensource.org/licenses/BSD-2-Clause):\r\n\r\n> Copyright &copy; 2013, Michael J. Ryan  \r\n> All rights reserved.\r\n>\r\n> Redistribution and use in source and binary forms, with or without\r\n> modification, are permitted provided that the following conditions\r\n> are met:\r\n>\r\n> 1. Redistributions of source code must retain the above copyright\r\n>    notice, this list of conditions and the following disclaimer.\r\n>\r\n> 2. Redistributions in binary form must reproduce the above copyright\r\n>    notice, this list of conditions and the following disclaimer in\r\n>    the documentation and/or other materials provided with the\r\n>    distribution.\r\n>\r\n> THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS\r\n> \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT\r\n> LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS\r\n> FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE\r\n> COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,\r\n> INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,\r\n> BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;\r\n> LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER\r\n> CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT\r\n> LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN\r\n> ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE\r\n> POSSIBILITY OF SUCH DAMAGE.\r\n\r\n\r\nnode-js-scrypt relies on `js-scrypt` which is written by Tony Garnock-Jones\r\n<tonygarnockjones@gmail.com> and is licensed under the [2-clause BSD license](http://opensource.org/licenses/BSD-2-Clause):\r\n\r\n> Copyright &copy; 2013, Tony Garnock-Jones  \r\n> All rights reserved.\r\n>\r\n> Redistribution and use in source and binary forms, with or without\r\n> modification, are permitted provided that the following conditions\r\n> are met:\r\n>\r\n> 1. Redistributions of source code must retain the above copyright\r\n>    notice, this list of conditions and the following disclaimer.\r\n>\r\n> 2. Redistributions in binary form must reproduce the above copyright\r\n>    notice, this list of conditions and the following disclaimer in\r\n>    the documentation and/or other materials provided with the\r\n>    distribution.\r\n>\r\n> THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS\r\n> \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT\r\n> LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS\r\n> FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE\r\n> COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,\r\n> INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,\r\n> BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;\r\n> LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER\r\n> CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT\r\n> LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN\r\n> ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE\r\n> POSSIBILITY OF SUCH DAMAGE.\r\n\r\n\r\njs-scrypt relies on `scrypt` itself, which is written by Colin\r\nPercival and licensed as follows:\r\n\r\n> Copyright 2009 Colin Percival  \r\n> All rights reserved.\r\n>\r\n> Redistribution and use in source and binary forms, with or without\r\n> modification, are permitted provided that the following conditions\r\n> are met:\r\n>\r\n> 1. Redistributions of source code must retain the above copyright\r\n>    notice, this list of conditions and the following disclaimer.\r\n> 2. Redistributions in binary form must reproduce the above copyright\r\n>    notice, this list of conditions and the following disclaimer in the\r\n>    documentation and/or other materials provided with the distribution.\r\n>\r\n> THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND\r\n> ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE\r\n> IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE\r\n> ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE\r\n> FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL\r\n> DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS\r\n> OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)\r\n> HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT\r\n> LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY\r\n> OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF\r\n> SUCH DAMAGE.","_attachments":{},"readmeFilename":"README.md","bugs":{"url":"https://github.com/tracker1/node-js-scrypt/issues"},"license":"BSD"}