# Home

###

# js-md4

A simple MD4 hash function for JavaScript supports UTF-8 encoding.

## Demo

MD4 Online

## Download

Compress
Uncompress

## Installation

You can also install js-md4 by using Bower.

    bower install js-md4

For node.js, you can use this command to install:

    npm install js-md4

## Notice

`buffer` method is deprecated. This maybe confuse with Buffer in node.js. Please use `arrayBuffer` instead.

## Usage

You could use like this:

    md4('Message to hash');

    var hash = md4.create();
    hash.update('Message to hash');
    hash.hex();

    var hash2 = md4.update('Message to hash');
    hash2.update('Message2 to hash');
    hash2.array();

If you use node.js, you should require the module first:

    var md4 = require('js-md4');

It supports AMD:

    require(['your/path/md4.js'], function (md4) {
    // ...
    });

See document

## Example

    md4(''); // 31d6cfe0d16ae931b73c59d7e0c089c0
    md4('The quick brown fox jumps over the lazy dog'); // 1bee69a46ba811185c194762abaeae90
    md4('The quick brown fox jumps over the lazy dog.'); // 2812c6c7136898c51f6f6739ad08750e

    // It also supports UTF-8 encoding
    md4('中文'); // 223088bf7bd45a16436b15360c5fc5a0

    // It also supports byte `Array`, `Uint8Array`, `ArrayBuffer`
    md4([]); // 31d6cfe0d16ae931b73c59d7e0c089c0
    md4(new Uint8Array([])); // 31d6cfe0d16ae931b73c59d7e0c089c0

    // Different output
    md4(''); // 31d6cfe0d16ae931b73c59d7e0c089c0
    md4.hex(''); // 31d6cfe0d16ae931b73c59d7e0c089c0
    md4.array(''); // [49, 214, 207, 224, 209, 106, 233, 49, 183, 60, 89, 215, 224, 192, 137, 192]
    md4.digest(''); // [49, 214, 207, 224, 209, 106, 233, 49, 183, 60, 89, 215, 224, 192, 137, 192]
    md4.arrayBuffer(''); // ArrayBuffer

## License

The project is released under the MIT license.

## Contact

The project's website is located at https://github.com/emn178/js-md4
Author: Chen, Yi-Cyuan (emn178@gmail.com)