lib for node which makes hashes
C JavaScript C++ Other
Latest commit 528af7f Dec 29, 2014 @brainfucker Update README.md
Permalink
Failed to load latest commit information.
debian
lib scope.Close added Jul 20, 2010
libhash move to freeBSD md5 lib, add md4, sha Jan 15, 2010
test Adding sha1, sha256, sha512 and md6 hashes Jan 14, 2010
.gitignore added gitignore Jul 20, 2010
README.md Update README.md Dec 29, 2014
hashlib.cc merge Nov 16, 2011
makefile update for 6.0 Nov 16, 2011
package.json fix can't run on node v0.6.x Nov 20, 2011
test.file add async callback to md5_file function Jan 20, 2010
test.js remove md5_file from tests Nov 16, 2011
test.php
test.py
wscript fix can't run on node v0.6.x Nov 20, 2011

README.md

Hashlib

Is a FAST nodejs(http://github.com/ry/node/) library for making hashes written in C/C++

Supports: md4, md5, md6, sha, sha1, sha256, sha512, hmac_sha1, hmac_md5, also can make md5 hash of files

Thangs to Vanilla Hsu for speed improvements and md4, sha support

Install:

way 1

1) go to the directory with hashlib library

2) execute node-waf configure build

3) get module from ./build/default/hashlib.node

You should use var hashlib = require("./build/default/hashlib"); (way to module)

way 2 (works if node are installed in default path)

1) go to the directory with hashlib library

2) execute make

3) execute sudo make install

You should use var hashlib = require("hashlib"); (from any path)

Functions:

md4(str); // Returns md4 hash from string
md5(str); // Returns md5 hash from string
sha(str); // Returns sha hash from string
sha1(str); // Returns sha1 hash from string
sha256(str); // Returns sha256 hash from string
sha512(str); // Returns sha512 hash from string
md6(str[, length]); // Returns md6 hash from string, second parametr is optional
md5_file(path[, callback]); // Returns md5 hash from file callback is optional and works async
hmac_sha1(str, key) // Returns hmac sha1 hash with an key
hmac_md5(str, key) // Returns hmac md5 hash with an key

Usage:

var hashlib = require('hashlib');
hashlib.md5('text');

Speed testing

To run speed test on your computer run test.js, here is my: C++ md5 result is: 220 JS md5 result is: 5660 C++ module faster than JS in 25.727272727272727 times ----------- C++ md4 result is: 212 C++ md6 result is: 3889 C++ sha0 result is: 228 C++ sha1 result is: 495 C++ sha256 result is: 712 C++ sha512 result is: 612

// Smaller is better

Other modules, engines md5 comparsion: hashlib: 220 node-crypto: 1055 python-hashlib: 265 php: 179

// Smaller is better