Skip to content
A simple SHA1 hash function for JavaScript supports UTF-8 encoding.
JavaScript HTML
Branch: master
Clone or download
emn178 Fixed
- incorrect result when first bit is 1 of bytes.

Changed
- prevent webpack to require dependencies.
Latest commit 65b3898 Dec 21, 2017
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
build Fixed Dec 21, 2017
src Fixed Dec 21, 2017
tests Fixed incorrect result when file size >= 512M. Oct 31, 2017
.covignore Fixed ArrayBuffer dosen't work in Webpack. Dec 30, 2016
.gitignore Fixed Dec 21, 2017
.npmignore Fixed Dec 21, 2017
.travis.yml Fixed Dec 21, 2017
CHANGELOG.md Fixed Dec 21, 2017
LICENSE.txt Fixed incorrect result when file size >= 512M. Oct 31, 2017
README.md Added Dec 5, 2016
bower.json Fixed Dec 21, 2017
package-lock.json Fixed Dec 21, 2017
package.json Fixed Dec 21, 2017

README.md

js-sha1

Build Status Coverage Status
NPM
A simple SHA1 hash function for JavaScript supports UTF-8 encoding.

Demo

SHA1 Online

Download

Compress
Uncompress

Installation

You can also install js-sha1 by using Bower.

bower install js-sha1

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

npm install js-sha1

Usage

You could use like this:

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

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

sha1 = require('js-sha1');

It supports AMD:

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

Example

sha1(''); // da39a3ee5e6b4b0d3255bfef95601890afd80709
sha1('The quick brown fox jumps over the lazy dog'); // 2fd4e1c67a2d28fced849ee1bb76e7391b93eb12
sha1('The quick brown fox jumps over the lazy dog.'); // 408d94384216f890ff7a0c3528e8bed1e0b01621

// It also supports UTF-8 encoding
sha1('中文'); // 7be2d2d20c106eee0836c9bc2b939890a78e8fb3

// It also supports byte `Array`, `Uint8Array`, `ArrayBuffer`
sha1([]); // da39a3ee5e6b4b0d3255bfef95601890afd80709
sha1(new Uint8Array([])); // da39a3ee5e6b4b0d3255bfef95601890afd80709

// Different output
sha1(''); // da39a3ee5e6b4b0d3255bfef95601890afd80709
sha1.hex(''); // da39a3ee5e6b4b0d3255bfef95601890afd80709
sha1.array(''); // [218, 57, 163, 238, 94, 107, 75, 13, 50, 85, 191, 239, 149, 96, 24, 144, 175, 216, 7, 9]
sha1.digest(''); // [218, 57, 163, 238, 94, 107, 75, 13, 50, 85, 191, 239, 149, 96, 24, 144, 175, 216, 7, 9]
sha1.arrayBuffer(''); // ArrayBuffer

License

The project is released under the MIT license.

Contact

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

You can’t perform that action at this time.