{"_id":"jshashes","_rev":"50-29a79cc02209b2ddce3509d4d6757cd1","name":"jshashes","description":"A fast and independent hashing library pure JavaScript implemented (ES3 compliant) for both server and client side (MD5, SHA1, SHA256, SHA512, RIPEMD, HMAC and Base64)","dist-tags":{"latest":"1.0.8"},"versions":{"1.0.2":{"name":"jshashes","description":"A fast and independent hashing library pure JavaScript implemented (ES5 compliant) for both server and client side (MD5, SHA1, SHA256, SHA512, RIPEMD, HMAC and Base64)","keywords":["hash","md5","sha1","sha256","hashes","sha512","RIPEMD","base64","hmac","crc","encoding","algorithm"],"version":"1.0.2","author":{"name":"Tomas Aparicio","email":"tomas@rijndael-project.com"},"maintainers":[{"name":"h2non","email":"tomas@rijndael-project.com"}],"repository":{"type":"git","url":"http://github.com/h2non/jsHashes.git"},"homepage":"https://github.com/h2non/jsHashes","dependencies":{},"bugs":{"url":"http://github.com/h2non/jsHashes/issues"},"engines":{"node":"*","browser":"*"},"main":"hashes","bin":{"hashes":"./bin/hashes.js"},"licenses":[{"type":"New BSD","url":"http://github.com/h2non/jsHashes/raw/master/LICENSE"}],"demos":["/examples/client/hexadecimal.html","/examples/client/benchmark.html"],"_id":"jshashes@1.0.2","dist":{"shasum":"e1e99f1ded6e460bbc1e762b21a42b6ab71cfeea","tarball":"https://registry.npmjs.org/jshashes/-/jshashes-1.0.2.tgz","integrity":"sha512-+bekWiGIKhfffKZgjLZ9OCH5SW32yFSG9zwMMdjhhMfEPcS1KRnWWP/Wi5kbgsrIaH7a9/W0zl0gaem3YMV/pA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDSzGY2hg3J46HmK1snYAkPtVSDu607Qhxv0l6jsv6WUwIhAJZF7pyoC0Hxv8tH0VQ3UzOo+5DvwqoDh3OLi/KZxgp1"}]},"_npmVersion":"1.1.63","_npmUser":{"name":"h2non","email":"tomas@rijndael-project.com"},"directories":{}},"1.0.3":{"name":"jshashes","description":"A fast and independent hashing library pure JavaScript implemented (ES3 compliant) for both server and client side (MD5, SHA1, SHA256, SHA512, RIPEMD, HMAC and Base64)","keywords":["hash","md5","sha1","sha256","hashes","sha512","RIPEMD","base64","hmac","crc","encoding","algorithm"],"version":"1.0.3","maintainers":[{"name":"h2non","email":"tomas@rijndael-project.com"}],"contributors":[{"name":"C. Scott Ananian","email":"cscott@cscott.net","url":"http://cscott.net"}],"repository":{"type":"git","url":"http://github.com/h2non/jsHashes.git"},"homepage":"https://github.com/h2non/jsHashes","dependencies":{},"devDependencies":{"mocha":"~1.9.0"},"bugs":{"url":"http://github.com/h2non/jsHashes/issues"},"engines":{"node":"*","browser":"*"},"main":"hashes","bin":{"hashes":"./bin/hashes.js"},"licenses":[{"type":"New BSD","url":"http://github.com/h2non/jsHashes/raw/master/LICENSE"}],"directories":{"test":"test"},"scripts":{"test":"mocha"},"demos":["/examples/client/hexadecimal.html","/examples/client/benchmark.html"],"_id":"jshashes@1.0.3","dist":{"shasum":"68c14b11352b54ba0287c0e1efbb01947e155315","tarball":"https://registry.npmjs.org/jshashes/-/jshashes-1.0.3.tgz","integrity":"sha512-JJPeJPfBZuOQPwOs4bNFPGIrIaXqSSenUmcs2pdmf6dmp+ET3UuRm+RI3sIpplf1BcLBS/lbna9Tz2nAH3hrhQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIEEk5uppv7sH25s1L7z0KdMbvM7bzhJrGM1SXdItPKzWAiEA9QMeSFYyhKvX1xvYvIVt1myyRimN95IBvpK+7ANuw+Q="}]},"_npmVersion":"1.1.66","_npmUser":{"name":"h2non","email":"tomas@rijndael-project.com"}},"1.0.4":{"name":"jshashes","description":"A fast and independent hashing library pure JavaScript implemented (ES3 compliant) for both server and client side (MD5, SHA1, SHA256, SHA512, RIPEMD, HMAC and Base64)","keywords":["hash","md5","sha1","sha256","hashes","sha512","RIPEMD","base64","hmac","crc","encoding","algorithm"],"version":"1.0.4","maintainers":[{"name":"h2non","email":"tomas@rijndael-project.com"}],"contributors":[{"name":"C. Scott Ananian","email":"cscott@cscott.net","url":"http://cscott.net"}],"repository":{"type":"git","url":"http://github.com/h2non/jshashes.git"},"homepage":"https://github.com/h2non/jshashes","dependencies":{},"devDependencies":{"mocha":"~1.9.0"},"bugs":{"url":"http://github.com/h2non/jshashes/issues"},"engines":{"node":"*","browser":"*"},"main":"hashes","bin":{"hashes":"./bin/cli.js"},"licenses":[{"type":"New BSD","url":"http://github.com/h2non/jshashes/raw/master/LICENSE"}],"directories":{"test":"test"},"scripts":{"test":"mocha"},"demos":["/examples/client/hexadecimal.html","/examples/client/benchmark.html"],"_id":"jshashes@1.0.4","dist":{"shasum":"0776c88acf2ab1b3e84c8a102c32c3f04ddf0ca9","tarball":"https://registry.npmjs.org/jshashes/-/jshashes-1.0.4.tgz","integrity":"sha512-yCvii5kPgSKtC39xvFv7kFusVc6wvf4jz+RGs7K/W+E3+SW5DPqJuvT2AKaRNFcwRc29XQ7DnhnrT0uRHsVjPQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDum60avfGa5hyIr/beC6x5P5xgXXnSY2gvWfvzwAfQoQIgEPqO5I9eF7ydWexXLj+T1ivKLv9QpyarAveUWo+tcqk="}]},"_from":".","_npmVersion":"1.2.18","_npmUser":{"name":"h2non","email":"tomas@aparicio.me"}},"1.0.5":{"name":"jshashes","description":"A fast and independent hashing library pure JavaScript implemented (ES3 compliant) for both server and client side (MD5, SHA1, SHA256, SHA512, RIPEMD, HMAC and Base64)","version":"1.0.5","repository":{"type":"git","url":"git://github.com/h2non/jshashes"},"author":{"name":"Tomas Aparicio","email":"tomas@aparicio.me"},"contributors":[{"name":"C. Scott Ananian","email":"cscott@cscott.net","url":"http://cscott.net"}],"engines":{"node":"*","browser":"*"},"main":"hashes","bin":{"hashes":"./bin/hashes"},"licenses":[{"type":"New BSD","url":"http://github.com/h2non/jshashes/raw/master/LICENSE"}],"directories":{"test":"test"},"scripts":{"test":"mocha"},"devDependencies":{"mocha":"~1.9.0","uglify-js":"~2.4.13"},"keywords":["hash","md5","sha1","sha256","hashes","sha512","RIPEMD","base64","hmac","crc","encoding","algorithm"],"bugs":{"url":"https://github.com/h2non/jshashes/issues"},"homepage":"https://github.com/h2non/jshashes","_id":"jshashes@1.0.5","dist":{"shasum":"8ba1f70fefda9f6563f5587685185e43cf2e720b","tarball":"https://registry.npmjs.org/jshashes/-/jshashes-1.0.5.tgz","integrity":"sha512-23LlVgVeYNahQE6XEJmK8dxJmX0Z/S6UsU/DbFKoJ1kvcmcH8epyW5u0PRTAdjon8WREKJ6PDZNy049hewSF3A==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCWiezR3KPUxJpkC4nHOVMyQ0i0VkF8Kzm6dfLy86gHzQIgEqE3gNxmOB7fNb/PHZpytEsBEhw5D+qVvi5SHCauPqE="}]},"_from":".","_npmVersion":"1.4.3","_npmUser":{"name":"h2non","email":"tomas@aparicio.me"},"maintainers":[{"name":"h2non","email":"tomas@rijndael-project.com"}]},"1.0.6":{"name":"jshashes","description":"A fast and independent hashing library pure JavaScript implemented (ES3 compliant) for both server and client side (MD5, SHA1, SHA256, SHA512, RIPEMD, HMAC and Base64)","version":"1.0.6","repository":{"type":"git","url":"git+https://github.com/h2non/jshashes.git"},"author":{"name":"Tomas Aparicio","email":"tomas@aparicio.me"},"contributors":[{"name":"C. Scott Ananian","email":"cscott@cscott.net","url":"http://cscott.net"}],"engines":{"node":"*","browser":"*"},"main":"hashes","bin":{"hashes":"./bin/hashes"},"licenses":[{"type":"New BSD","url":"http://github.com/h2non/jshashes/raw/master/LICENSE"}],"directories":{"test":"test"},"scripts":{"test":"mocha"},"devDependencies":{"mocha":"~1.9.0","uglify-js":"~2.4.13"},"keywords":["hash","md5","sha1","sha256","hashes","sha512","RIPEMD","base64","hmac","crc","encoding","algorithm"],"gitHead":"cdab0f4def6b539ea5c44d3ffc9bb75c1b231dfe","bugs":{"url":"https://github.com/h2non/jshashes/issues"},"homepage":"https://github.com/h2non/jshashes#readme","_id":"jshashes@1.0.6","_shasum":"b04eb4ae8f9987b2d3ce00a6337c120543949bfd","_from":".","_npmVersion":"3.10.8","_nodeVersion":"7.1.0","_npmUser":{"name":"h2non","email":"tomas@aparicio.me"},"maintainers":[{"name":"h2non","email":"tomas@rijndael-project.com"}],"dist":{"shasum":"b04eb4ae8f9987b2d3ce00a6337c120543949bfd","tarball":"https://registry.npmjs.org/jshashes/-/jshashes-1.0.6.tgz","integrity":"sha512-gX0uAD9JhBgeYF7JGa40Dcg8odTBkIYIGNYyVauyKFlHB94Lp3g8ue5pZ4CFWwfIowaLmmHEJBc2d/6rzmeihg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIECsWdMh4Tf75FePBgRUZkbw1w8meN4HWU2brlV+zF/RAiBYBzIl5/8DtRafFJ3qNWwgmYdqDvEWB9Kt6L/tYj0w2Q=="}]},"_npmOperationalInternal":{"host":"packages-18-east.internal.npmjs.com","tmp":"tmp/jshashes-1.0.6.tgz_1479687081676_0.49902265216223896"}},"1.0.7":{"name":"jshashes","description":"A fast and independent hashing library pure JavaScript implemented (ES3 compliant) for both server and client side (MD5, SHA1, SHA256, SHA512, RIPEMD, HMAC and Base64)","version":"1.0.7","repository":{"type":"git","url":"git+https://github.com/h2non/jshashes.git"},"author":{"name":"Tomas Aparicio","email":"tomas@aparicio.me"},"contributors":[{"name":"C. Scott Ananian","email":"cscott@cscott.net","url":"http://cscott.net"}],"engines":{"node":"*"},"main":"hashes","bin":{"hashes":"./bin/hashes"},"licenses":[{"type":"New BSD","url":"http://github.com/h2non/jshashes/raw/master/LICENSE"}],"directories":{"test":"test"},"scripts":{"test":"mocha"},"devDependencies":{"mocha":"~1.9.0","uglify-js":"~2.4.13"},"keywords":["hash","md5","sha1","sha256","hashes","sha512","RIPEMD","base64","hmac","crc","encoding","algorithm"],"gitHead":"88625b6c841ca3c90f8b9fefb0fedb78992017ad","bugs":{"url":"https://github.com/h2non/jshashes/issues"},"homepage":"https://github.com/h2non/jshashes#readme","_id":"jshashes@1.0.7","_shasum":"bed8c97a0e9632fd0513916f55f76dd5486be59f","_from":".","_npmVersion":"3.10.8","_nodeVersion":"7.1.0","_npmUser":{"name":"h2non","email":"tomas@aparicio.me"},"dist":{"shasum":"bed8c97a0e9632fd0513916f55f76dd5486be59f","tarball":"https://registry.npmjs.org/jshashes/-/jshashes-1.0.7.tgz","integrity":"sha512-fsUdM3ZdxWh3+easPJq21Tq+xnMrKKDRxUfT1Wx9aH2RuqCs0dmotDQHXShEGaih5Aatipx2uvbV/2d7dxL05A==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQChsVFybraY3rzcgXA/R1MuBRK8pl/i0VqtzMJEy2uV2AIgcIzDhEnncb5EMyz5EdbsZS0eTXsWwhUXOESBDvtDXt0="}]},"maintainers":[{"name":"h2non","email":"tomas@rijndael-project.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/jshashes-1.0.7.tgz_1499256095605_0.7968260399065912"}},"1.0.8":{"name":"jshashes","description":"A fast and independent hashing library pure JavaScript implemented (ES3 compliant) for both server and client side (MD5, SHA1, SHA256, SHA512, RIPEMD, HMAC and Base64)","version":"1.0.8","repository":{"type":"git","url":"git+https://github.com/h2non/jshashes.git"},"author":{"name":"Tomas Aparicio","email":"tomas@aparicio.me"},"contributors":[{"name":"C. Scott Ananian","email":"cscott@cscott.net","url":"http://cscott.net"}],"engines":{"node":"*"},"main":"./hashes.js","bin":{"hashes":"./bin/hashes"},"licenses":[{"type":"New BSD","url":"http://github.com/h2non/jshashes/raw/master/LICENSE"}],"directories":{"test":"test"},"scripts":{"test":"mocha"},"devDependencies":{"mocha":"~1.9.0","uglify-js":"~3.7.6"},"keywords":["hash","md5","sha1","sha256","hashes","sha512","RIPEMD","base64","hmac","crc","encoding","algorithm"],"gitHead":"e5485bff2cd5414794c5a540c6fbe106f44e8b51","bugs":{"url":"https://github.com/h2non/jshashes/issues"},"homepage":"https://github.com/h2non/jshashes#readme","_id":"jshashes@1.0.8","_nodeVersion":"11.15.0","_npmVersion":"6.7.0","dist":{"integrity":"sha512-btmQZ/w1rj8Lb6nEwvhjM7nBYoj54yaEFo2PWh3RkxZ8qNwuvOxvQYN/JxVuwoMmdIluL+XwYVJ+pEEZoSYybQ==","shasum":"f60d837428383abf73ab022e1542e6614bd75514","tarball":"https://registry.npmjs.org/jshashes/-/jshashes-1.0.8.tgz","fileCount":28,"unpackedSize":123907,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeNAFtCRA9TVsSAnZWagAA8nYP/1JpZ/vTXoZM0jL0RV9x\n+/bd8m5UVDwWUivBxssPLE6tWLVRETSU/V59ViVppTkV0gK/aY+EnWY9jY/J\nwWrUYNQktuMuZ7uP9CQL9tPnZrDyKLdiaUprGrsgd39gFUrKreXJnKM742u0\nIiPra56dKBk8PNN1/xk3mhY7+D9SpRAJn/s3SXiOC3WiyNNdixXOoRZMDsov\nvhrbqqks7MVopau+wYQGgDtFvaGwZFnGY7o2uuaqknipY6w+KndqmR1ow0XW\nODiEvV++Y8S1Kfd0tEqpHZvMRFiJcM6+W4ewOxM5FbpyJx6tYpMfITyCrKrB\nc0y0CwwDeV77IaOfdtQqNGeDm4o8zLVo0w1rhZn5rR97q207HiK4f0r1NYq6\n8kUprI7b0BcI/t6/b4W4lFLN5caUa926qeH4gzX8NT4FyG1lyYROvz25a5ve\n27zlFl7Ex1mRi2C5//sGTS+rTh/C0q9wyyxAbXIn4PjEjoZSRzsyD2DtPWlR\nDnP/SLv5Q517zdcrn0bygAVTaYUdO1E2E+8GbyUz1/zF2ZK9mWupofFpHx6j\nMPDTPUnPzb+7zCy6tFm4VqI6x9QFo60FXZGe5dMiNdSk06VUP7hxZiZncwfO\nd11r2fZAoWntmX4VgPZqy938q9Loq6wrmSTZfI/vXJSb2cZTKns9pTif4syg\nJppY\r\n=QaKK\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIChD8hVvPxXO7L6X+9+O14BRt1f/SrelvzSY0tROJ5RaAiAxXoPikz4RnkkCztQZrpLQFdI8gnz4FKEFxXk0gnh+NQ=="}]},"maintainers":[{"name":"h2non","email":"tomas@rijndael-project.com"}],"_npmUser":{"name":"h2non","email":"tomas@aparicio.me"},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/jshashes_1.0.8_1580466540646_0.6797370074276634"},"_hasShrinkwrap":false}},"readme":"# jsHashes [![Build Status](https://travis-ci.org/h2non/jshashes.svg)](https://travis-ci.org/h2non/jshashes) [![NPM version](https://img.shields.io/npm/v/jshashes.svg)](https://www.npmjs.com/package/jshashes) \n\n`jshashes` is lightweight library implementing the most extended [cryptographic hash function](http://en.wikipedia.org/wiki/Cryptographic_hash_function) algorithms in pure JavaScript (ES5 compliant).\n\nThe goal is to provide an dependency-free, fast and reliable solution for hash algorithms for both client-side and server-side JavaScript environments. \nThe code is fully compatible with the ECMAScript 5 specification and is used in production in browsers and [node.js](http://nodejs.org)/[io.js](http://iojs.org)\n\nIf you are looking for a low-level performance library for the server-side, note that node.js/io.js provides its own native module: [`crypto`](http://nodejs.org/api/crypto.html)\n\n## Supported hash algorithms\n\n* `MD5` (<http://www.ietf.org/rfc/rfc1321.txt>)\n* `SHA1` (<http://www.itl.nist.gov/fipspubs/fip180-1.htm>)\n* `SHA256` (<http://csrc.nist.gov/publications/fips/fips180-2/fips180-2.pdf>)\n* `SHA512` (<http://csrc.nist.gov/publications/fips/fips180-2/fips180-2.pdf>)\n* `HMAC` (<http://www.ietf.org/rfc/rfc2104.txt>)\n* `RIPEMD-160` (<http://homes.esat.kuleuven.be/~bosselae/ripemd160.html>)\n\n**Aditional functionalities**\n\n* `Base64 encoding/decoding` (<http://tools.ietf.org/html/rfc3548>)\n* `CRC-32 calculation`\n* `UTF-8 encoding/decoding`\n\n## Environments\n\n- Browsers (ES3)\n- node.js/io.js (all versions)\n- Rhino\n- RingoJS\n\n## Usage\n\nEach algorithm has its respective own instantiable `object`. Here you can see an example of how to create a new instance for each one:\n\n```javascript\n// new MD5 instance\nvar MD5 = new Hashes.MD5\n// new SHA1 instance\nvar SHA1 = new Hashes.SHA1\n// new SHA256 instance\nvar SHA256 =  new Hashes.SHA256\n// new SHA512 instace\nvar SHA512 = new Hashes.SHA512\n// new RIPEMD-160 instace\nvar RMD160 = new Hashes.RMD160\n```\n\nAn example of how to generate an hexadecimal-based hash encoding for each algorithm:\n\n```javascript\n// sample string\nvar str = 'Sample text!'\n// output to console\nconsole.log('MD5: ' + MD5.hex(str))\nconsole.log('SHA1: ' + SHA1.hex(str))\nconsole.log('SHA256: ' + SHA256.hex(str))\nconsole.log('SHA512: ' + SHA512.hex(str))\nconsole.log('RIPEMD-160: ' + RMD160.hex(str))\n```\n\n### Browsers\n\nThis is a simple implementation for a client-side environment:\n\n```html\n<html>\n<head>\n<script type=\"text/javascript\" src=\"src/hashes.js\"></script>\n<script type=\"text/javascript\">\n// sample string\nvar str = 'This is a sample text!'\n// new MD5 instance and hexadecimal string encoding\nvar MD5 = new Hashes.MD5().hex(str)\n// output into DOM\ndocument.write('<p>MD5: <b>' + MD5 + '</b></p>')\n</script>\n</head>\n<body>\n</body>\n</html>\n```\n\n### node.js / io.js\n\n```javascript\n// require the module\nvar Hashes = require('jshashes')\n// sample string\nvar str = 'This is a sample text!'\n// new SHA1 instance and base64 string encoding\nvar SHA1 = new Hashes.SHA1().b64(str)\n// output to console\nconsole.log('SHA1: ' + SHA1)\n```\n\n### Command-line interface\n\nYou can use the simple command-line interface to generate hashes.\n\n```bash\n$ hashes sha1-hex This is a sample string\n> b6a8501d8a70e74e1dc12a6082102622fdc719bb\n\n# or with quotes\n$ hashes sha1-hex \"This is a sample string\"\n> b6a8501d8a70e74e1dc12a6082102622fdc719bb\n```\n\nFor more information about the options supported, type:\n\n```bash\n$ hashes -h\n```\n\n### Installation\n\nVia [npm](https://npmjs.org)\n\n```\n$ npm install jshashes\n```\n\nVia [Bower](http://bower.io/):\n```\n$ bower install jshashes\n```\n\nVia [Component](https://github.com/component/component):\n```\n$ component install h2non/jshashes\n```\n\nOr loading the script directly:\n```\nhttp://cdn.rawgit.com/h2non/jsHashes/master/hashes.js\n```\n\n## Public methods\n\nEach algorithm `class` provides the following public methods:\n\n* `hex(string)` - Hexadecimal hash encoding from string.\n* `b64(string)` - Base64 hash encondig from string.\n* `any(string,encoding)` - Custom hash algorithm values encoding.\n* `hex_hmac(key,string)` - Hexadecimal hash with HMAC salt key.\n* `b64_hmac(key,string)` - Base64 hash with HMAC salt key.\n* `any_hmac(key,string,encoding)` - Custom hash values encoding with HMAC salt key support.\n* `vm_test()` - Simple self-test to see is working. Returns `this` Object.\n* `setUpperCase(boolean)` - Enable/disable uppercase hexadecimal returned string. Returns `this` Object.\n* `setPad(string)` - Defines a custom base64 pad string. Default is '=' according with the RFC standard. Returns `this` Object.\n* `setUTF8(boolean)` - Enable/disable UTF-8 character encoding. Returns `this` Object.\n\n## Hash encoding formats supported\n\n* Hexadecimal (most extended)\n* Base64\n* Custom hash values `any()` method\n\n## Benchmark\n\nNode.js 0.6.18 running on a VPS Intel I7 930 with 512 MB of RAM (see `server/benchmark.js`)\n\n```javascript\nSimple benchmark test generating 10000 hashes for each algorithm.\nString: \"A0gTtNtKh3RaduBfIo59ZdfTc5pTdOQrkxdZ5EeVOIZh1cXxqPyexKZBg6VlE1KzIz6pd6r1LLIpT5B8THRfcGvbJElwhWBi9ZAE\"\n\n* MD5\n** Done in: 205 miliseconds\n* SHA1\n** Done in: 277 miliseconds\n* SHA256\n** Done in: 525 miliseconds\n* SHA512\n** Done in: 593 miliseconds\n* RMD160\n** Done in: 383 miliseconds\n```\n\nSee `client/benchmark.html` for client-side.\n\n## Notes\n\n* Don't support checksum hash for files on the server-side, only strings-based inputs are supported.\n* It has not been planned to include support for more hash algorithms.\n* The goal is to provide the same JavaScript code in both server and client side, so it isn't planned to improve it in other ways.\n* Only Node.js server-side was tested, so with minimal changes, you can setup `jsHashes` in other server-side JS environment.\n\n## Changelog\n\n* `1.0.7`\n  - Merge #37: fix terminator statement token.\n* `1.0.6`\n  - Fix #34: options `pad` typo.\n* `1.0.4`\n  - Fix CLI script call error when use it from Bash\n  - Added CLI usage example\n* `1.0.3`\n  - Important bugfixes to UTF-8 encoding (broken in 1.0.2) and the RIPEMD-160 hash (broken in 1.0.1). (gh #6)\n  - New test suite for hashes, CRC32, and hmac; run with 'npm test' in node.\n  - Fixed global variable leaks. (gh #13)\n  - CRC32 will now always return positive values. (gh #11)\n  - Added package version property to the exposed Hashes Object\n  - Updated CLI script utility supporting all algorithms (see bin/hashes)\n  - Fixed UTF-8 encoding/decoding error (if input parameter is undefined or invalid)\n* `1.0.2`\n  - Performance improvements and minimal refactor (length property caching, literal notation)\n  - Available from Bower package manager\n* `1.0.1`\n  - Refactoring (hoisting, coercion, removed redundant functions, scoping, restructure...)\n  - Performance improves\n  - JSLint validation (except bitwise operators)\n  - Now the library can be used like a AMD CommonJS module\n  - Updated documentation\n  - New folders structure\n  - Added closure compiled and minimized library version\n  - Available from Jam package manager\n* `0.1.5b`\n  - Added index.js for easy call the module in Node.js\n  - Updated documentation\n* `0.1.4b`\n  - Now declaring objects using Literal Notation.\n  - Solved sintax errors on minimized version (jshashes.min.js)\n  - Added benchmark test and sample\n* `0.1.3b`\n  - Starting non-redundancy code refactorization\n  - Added `Helpers` Object with some global functions\n  - Added native support for Base64 provided as `class`\n  - Added CRC-32 calculation support\n  - Added URL encode/decode helpers functions\n* `0.1.2b`\n  - SHA1 error fixed.\n  - General code changes (renaming classes, private methods, new methods...).\n  - Changing library namespace to 'Hashes'.\n  - Starting code documentation.\n  - Added new examples of how to use.\n* `0.1.1b`\n  - Minimal library improvements.\n  - There has been added some samples, like how to use it and support for NPM package.\n* `0.1.0b`\n  - First release: the code is stable, but the library is still beta and must be improved and documented.\n\n## TODO\n\n* Performance benchmarking\n\n## Authors\n\n### Library author\n\n* [Tomas Aparicio](https://github.com/h2non/)\n\n### Original algorithm authors\n\n* [Paul Johnston](http://pajhome.org.uk/crypt/md5/)\n* Angel Marin (SHA256)\n* Jeremy Lin (RIPEMD-160)\n\n### Other contributors\n\n* [C. Scott Ananian](https://github.com/cscott)\n* Greg Holt\n* Andrew Kepert\n* Ydnar\n* Lostinet\n\n## License\n\njsHashes is released under `New BSD` license. See `LICENSE` file.\n\n## Issues\n\nFeel free to report any issue you experiment via Github <https://github.com/h2non/jsHashes/issues>.\n","maintainers":[{"name":"h2non","email":"tomas@rijndael-project.com"}],"time":{"modified":"2022-06-19T06:03:29.791Z","created":"2013-03-27T18:05:57.342Z","1.0.3":"2013-04-24T12:50:17.814Z","1.0.2":"2013-03-27T18:06:20.319Z","1.0.4":"2013-08-20T10:40:57.506Z","1.0.5":"2014-05-30T21:13:48.839Z","1.0.6":"2016-11-21T00:11:22.316Z","1.0.7":"2017-07-05T12:01:36.765Z","1.0.8":"2020-01-31T10:29:00.764Z"},"author":{"name":"Tomas Aparicio","email":"tomas@aparicio.me"},"repository":{"type":"git","url":"git+https://github.com/h2non/jshashes.git"},"homepage":"https://github.com/h2non/jshashes#readme","keywords":["hash","md5","sha1","sha256","hashes","sha512","RIPEMD","base64","hmac","crc","encoding","algorithm"],"contributors":[{"name":"C. Scott Ananian","email":"cscott@cscott.net","url":"http://cscott.net"}],"bugs":{"url":"https://github.com/h2non/jshashes/issues"},"readmeFilename":"README.md","users":{"gfilip":true,"princetoad":true,"maxidev":true,"undisclosed":true,"danielgray.me":true}}