crc-hash
> A Crypto Hash (Stream) implementation for the CRC algorithm.
[![npm version][npm-image]][npm-url]
[![GitHub tag][github-tag-image]][github-tag-url]
[![Build status][travis-image]][travis-url]
[![Code coverage][coveralls-image]][coveralls-url]
[![License][license-image]][license-url]
Overview
Node.js's
Crypto module implements the
Hash class which offers a simple
Stream-based interface for creating hash digests of data. The
createHash function supports many popular algorithms like
SHA and
MD5, but does not include older/simpler
CRC algorithms like CRC-32. Fortunately, the
crc package in npm provides comprehensive CRC support and offers an API that can be conveniently used by a Hash subclass.
crc-hash is a Crypto Hash wrapper for the
crc package that makes it easy for Node.js programs to use the CRC family of hash algorithms via a standard interface.
Algorithms
All algorithms implemented by
crc are supported by
crc-hash:
* CRC-1
* CRC-8
* CRC-8 1-Wire
* CRC-16
* CRC-16 CCITT
* CRC-16 Modbus
* CRC-24
* CRC-32
Interface
``
/**
* Creates and returns a hash object which can be used to generate CRC hash digests.
*
* @param {string} algorithm CRC algorithm (supported values: crc32, crc24, crc16, crc16ccitt, crc16modbus, crc8, crc81wire, crc1).
* @return {Stream.Transform} Duplex stream as with Crypto.Hash (including legacy update/digest methods).
*/
createHash(algorithm)
``
See also:
*
Node.js Crypto documentation
*
Node.js Stream documentation
Credits
*
crc by
alexgorbatchev
License
MIT
Release History
* 0.1.0 - Initial release, supports Stream programming model.
* 0.2.0 - Add support for legacy update/digest methods of Hash.
* 0.2.1 - Add badges for npm, GitHub, build, coverage, and license to README.
* 0.2.2 - Update URI for npm, tweak .travis.yml.
[npm-image]: https://img.shields.io/npm/v/crc-hash.svg
[npm-url]: https://www.npmjs.com/package/crc-hash
[github-tag-image]: https://img.shields.io/github/tag/DavidAnson/crc-hash.svg
[github-tag-url]: https://github.com/DavidAnson/crc-hash
[travis-image]: https://img.shields.io/travis/DavidAnson/crc-hash.svg
[travis-url]: https://travis-ci.org/DavidAnson/crc-hash
[coveralls-image]: https://img.shields.io/coveralls/DavidAnson/crc-hash.svg
[coveralls-url]: https://coveralls.io/r/DavidAnson/crc-hash
[license-image]: https://img.shields.io/npm/l/crc-hash.svg
[license-url]: http://opensource.org/licenses/MIT