xtf c3c218391a 药品分类 11 mesiacov pred
..
test c3c218391a 药品分类 11 mesiacov pred
.travis.yml c3c218391a 药品分类 11 mesiacov pred
LICENSE c3c218391a 药品分类 11 mesiacov pred
README.md c3c218391a 药品分类 11 mesiacov pred
bin.js c3c218391a 药品分类 11 mesiacov pred
hash.js c3c218391a 药品分类 11 mesiacov pred
index.js c3c218391a 药品分类 11 mesiacov pred
package.json c3c218391a 药品分类 11 mesiacov pred
sha.js c3c218391a 药品分类 11 mesiacov pred
sha1.js c3c218391a 药品分类 11 mesiacov pred
sha224.js c3c218391a 药品分类 11 mesiacov pred
sha256.js c3c218391a 药品分类 11 mesiacov pred
sha384.js c3c218391a 药品分类 11 mesiacov pred
sha512.js c3c218391a 药品分类 11 mesiacov pred

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