Socket
Socket
Sign inDemoInstall

xxhash

Package Overview
Dependencies
13
Maintainers
1
Versions
11
Alerts
File Explorer

Advanced tools

Install Socket

Detect and block malicious and high-risk dependencies

Install

    xxhash

An xxhash binding for node.js


Version published
Weekly downloads
6K
decreased by-18.97%
Maintainers
1
Created
Weekly downloads
 

Readme

Source

Description

An xxhash binding for node.js.

Build Status Build status

Requirements

  • node.js -- v4.0.0 or newer

Install

npm install xxhash

Examples

  • Hash a file in one step:
var XXHash = require('xxhash');
var fs = require('fs');

var file = fs.readFileSync('somefile');
var result = XXHash.hash(file, 0xCAFEBABE);
  • Hash a file in multiple steps:
var XXHash = require('xxhash');
var fs = require('fs');

var hasher = new XXHash(0xCAFEBABE);

fs.createReadStream('somefile')
  .on('data', function(data) {
    hasher.update(data);
  })
  .on('end', function() {
    console.log('Hash value = ' + hasher.digest());
  });
  • Hash a file with a hash stream:
var HashStream = require('xxhash').Stream;
var fs = require('fs');

var hasher = new HashStream(0xCAFEBABE);

fs.createReadStream('somefile')
  .pipe(hasher)
  .on('finish', function() {
    console.log('Hash value = ' + hasher.read());
  });

API

XXHash Static Methods

  • hash(< Buffer >data, < mixed >seed[, < mixed >encbuf]) - mixed - Performs a single/one-time 32-bit hash of data with the given seed. seed can be an unsigned integer or a Buffer containing (1 <= n <= 4) bytes to use for the seed. The resulting hash is returned. The format of the hash depends on the value of encbuf. If encbuf is a string and one of: buffer, hex, base64, or binary, then the hash value will be encoded in the appropriate format. If encbuf is a Buffer of at least 4 bytes, then the hash value will be written to encbuf and encbuf will be returned. Otherwise, if encbuf is not supplied, then the hash will be an unsigned integer.

  • hash64(< Buffer >data, < mixed >seed[, < mixed >encbuf]) - mixed - Performs a single/one-time 64-bit hash of data with the given seed. seed can be an unsigned integer or a Buffer containing (1 <= n <= 8) bytes to use for the seed. The resulting hash is returned. The format of the hash depends on the value of encbuf. If encbuf is a string and one of: buffer, hex, base64, or binary, then the hash value will be encoded in the appropriate format. If encbuf is a Buffer of at least 8 bytes, then the hash value will be written to encbuf and encbuf will be returned. The default value for encbuf is 'buffer'.

XXHash Static Properties

  • Stream(< mixed >seed[, < integer >bits][, < mixed >encbuf]) - DuplexStream - A stream constructor that takes in the seed to use. Write data to the stream and when the stream ends, a bits-bit (32 or 64) hash value (format determined by encbuf) is available on the readable side. The values for seed and encbuf are described above in hash().

  • XXHash64(< mixed >seed) - This is the 64-bit Hash constructor. It is only needed if you want to use the old streaming interface (update()/digest()) instead of the streams2 interface described above.

XXHash Methods

  • (constructor)(< mixed >seed) - Creates and returns a new 32-bit Hash instance with the given seed. The values for seed are described above in hash().

  • update(< Buffer >data) - (void) - Update the hash using data.

  • digest([< mixed >encbuf]) - mixed - The values for encbuf and the resulting hash value format is described in hash().

Keywords

FAQs

Last updated on 23 Aug 2019

Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc