🔑 A set of utility functions/wrapper to simplify the development workflow
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.
examples initial commit May 29, 2016
lib initial commit May 29, 2016
CHANGES.md initial commit May 29, 2016
README.md initial commit May 29, 2016
crypto-toolkit.js initial commit May 29, 2016
package.json initial commit May 29, 2016



A set of utility functions/wrapper to simplify the development workflow

$ npm install crypto-toolkit


  • Hash Function Wrapper (MD5, SHA1, SHA244, SHA256, SHA384, SHA512, WHIRLPOOL)
  • Create Object/Array Hashes based on its JSON representation

Hash Function Wrapper

Provides easy access to the Node.js Crypto Hash functions. Examples are available in examples/hash.js

// default hex encoding
var _hash = require('crypto-toolkit').Hash('hex');

console.log(_hash.sha256('Hello World'));

The argument encoding is optional and defines the output encoding of the digest.

  • hex (default) - hexadecimal string output
  • base64 - base64 string output
  • binary - binary output as Buffer
Hash Algorithms

The following wrappers are included:

  • md5(input:mixed, [encoding:string])
  • sha1(input:mixed, [encoding:string])
  • sha2(input:mixed, [encoding:string])
  • sha224(input:mixed, [encoding:string])
  • sha256(input:mixed, [encoding:string])
  • sha384(input:mixed, [encoding:string])
  • sha512(input:mixed, [encoding:string])
  • whirlpool(input:mixed, [encoding:string])

General Usage

var _hash = require('crypto-toolkit').Hash('hex');

// some input
var input = 'Hello World';

// display some hashes
console.log('Default HEX Output');
console.log(' |- MD5      ', _hash.md5(input));
console.log(' |- SHA1     ', _hash.sha1(input));
console.log(' |- SHA256   ', _hash.sha256(input));
console.log(' |- SHA384   ', _hash.sha384(input));
console.log(' |- SHA512   ', _hash.sha512(input));
console.log(' |- WHIRLPOOL', _hash.whirlpool(input));

// override the default output type
console.log('Override the default output settings');
console.log(' |- HEX      ', _hash.sha1(input, 'hex'));
console.log(' |- BIN      ', _hash.sha1(input, 'binary'));
console.log(' |- BASE64   ', _hash.sha1(input, 'base64'));


Objects/Arrays are automatically serialized as JSON String. The JSON object is then passed into the hash function.

var _hash = require('crypto-toolkit').Hash('hex');

// demo object
var objectInput = {
    x: 1,
    b: 2,
    c: [5,6,7],
    d: {
        y: 'Hello',
        z: 'World'

console.log('Object Input');
console.log(' |- SHA256   ', _hash.sha256(objectInput));

Any Questions ? Report a Bug ? Enhancements ?

Please open a new issue on GitHub


Crypto-Toolkit is OpenSource and licensed under the Terms of The MIT License (X11). You're welcome to contribute!