Skip to content
a streaming CRC32 checksumer (now with deflate support)
JavaScript
Find file
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.
lib
test
.gitignore
.travis.yml
CONTRIBUTING.md
LICENSE
README.md
appveyor.yml
package.json

README.md

crc32-stream v0.4.0 Build Status Build status

crc32-stream is a streaming CRC32 checksumer. It uses buffer-crc32 behind the scenes to reliably handle binary data and fancy character sets. Data is passed through untouched.

NPM

Install

npm install crc32-stream --save

You can also use npm install https://github.com/archiverjs/node-crc32-stream/archive/master.tar.gz to test upcoming versions.

Usage

CRC32Stream

Inherits Transform Stream options and methods.

var CRC32Stream = require('crc32-stream');

var source = fs.createReadStream('file.txt');
var checksum = new CRC32Stream();

checksum.on('end', function(err) {
  // do something with checksum.digest() here
});

// either pipe it
source.pipe(checksum);

// or write it
checksum.write('string');
checksum.end();

DeflateCRC32Stream

Inherits zlib.DeflateRaw options and methods.

var DeflateCRC32Stream = require('crc32-stream').DeflateCRC32Stream;

var source = fs.createReadStream('file.txt');
var checksum = new DeflateCRC32Stream();

checksum.on('end', function(err) {
  // do something with checksum.digest() here
});

// either pipe it
source.pipe(checksum);

// or write it
checksum.write('string');
checksum.end();

Instance API

digest()

Returns the checksum digest in unsigned form.

hex()

Returns the hexadecimal representation of the checksum digest. (ie E81722F0)

size(compressed)

Returns the raw size/length of passed-through data.

If compressed is true, it returns compressed length instead. (DeflateCRC32Stream)

Things of Interest

Something went wrong with that request. Please try again.