xtf c3c218391a 药品分类 11 ماه پیش
..
test c3c218391a 药品分类 11 ماه پیش
.travis.yml c3c218391a 药品分类 11 ماه پیش
LICENSE c3c218391a 药品分类 11 ماه پیش
README.md c3c218391a 药品分类 11 ماه پیش
bin.js c3c218391a 药品分类 11 ماه پیش
hash.js c3c218391a 药品分类 11 ماه پیش
index.js c3c218391a 药品分类 11 ماه پیش
package.json c3c218391a 药品分类 11 ماه پیش
sha.js c3c218391a 药品分类 11 ماه پیش
sha1.js c3c218391a 药品分类 11 ماه پیش
sha224.js c3c218391a 药品分类 11 ماه پیش
sha256.js c3c218391a 药品分类 11 ماه پیش
sha384.js c3c218391a 药品分类 11 ماه پیش
sha512.js c3c218391a 药品分类 11 ماه پیش

README.md

sha.js

NPM Package Build Status Dependency status

js-standard-style

Node style SHA on pure JavaScript.

var shajs = require('sha.js')

console.log(shajs('sha256').update('42').digest('hex'))
// => 73475cb40a568e8da8a045ced110137e159f890ac4da883b6b17dc651b3a8049
console.log(new shajs.sha256().update('42').digest('hex'))
// => 73475cb40a568e8da8a045ced110137e159f890ac4da883b6b17dc651b3a8049

var sha256stream = shajs('sha256')
sha256stream.end('42')
console.log(sha256stream.read().toString('hex'))
// => 73475cb40a568e8da8a045ced110137e159f890ac4da883b6b17dc651b3a8049

supported hashes

sha.js currently implements:

  • SHA (SHA-0) -- legacy, do not use in new systems
  • SHA-1 -- legacy, do not use in new systems
  • SHA-224
  • SHA-256
  • SHA-384
  • SHA-512

Not an actual stream

Note, this doesn't actually implement a stream, but wrapping this in a stream is trivial. It does update incrementally, so you can hash things larger than RAM, as it uses a constant amount of memory (except when using base64 or utf8 encoding, see code comments).

Acknowledgements

This work is derived from Paul Johnston's A JavaScript implementation of the Secure Hash Algorithm.

LICENSE MIT