Need help with crypto-hash?
Click the “chat” button below for chat support from the developer who created it, or find similar developers for support.

About the developer

sindresorhus
555 Stars 30 Forks MIT License 29 Commits 1 Opened issues

Description

Tiny hashing module that uses the native crypto API in Node.js and the browser

Services available

!
?

Need anything else?

Contributors list

# 222
exec
test-fr...
nextjs
messeng...
22 commits
# 47,124
chalk
exec
emitter
jvm-lan...
2 commits
# 101,242
Python
transit
HTML
gzip
1 commit
# 27,634
angular...
fp
chromiu...
awk
1 commit
# 5,583
TypeScr...
typescr...
iterm2
exec
1 commit
# 6,646
chalk
exec
vuejs2
sketch-...
1 commit
# 232,441
JavaScr...
TypeScr...
design-...
Node.js
1 commit

crypto-hash

Tiny hashing module that uses the native crypto API in Node.js and the browser

Useful when you want the same hashing API in all environments. My cat calls it isomorphic.

In Node.js it uses

require('crypto')
, while in the browser it uses
window.crypto
.

The browser version is only ~300 bytes minified & gzipped.

When used in the browser, it must be in a secure context (HTTPS).

This package is for modern browsers. IE11 is not supported.

Install

npm install crypto-hash

Usage

import {sha256} from 'crypto-hash';

console.log(await sha256('🦄')); //=> '5df82936cbf0864be4b7ba801bee392457fde9e4'

API

sha1(input, options?)

sha256(input, options?)

sha384(input, options?)

sha512(input, options?)

Returns a

Promise
with a Hex-encoded hash.

In Node.js, the operation is executed using

worker_threads
. A thread is lazily spawned on the first operation and lives until the end of the program execution. It's
unref
ed, so it won't keep the process alive.

SHA-1 is insecure and should not be used for anything sensitive.

input

Type:

string
ArrayBuffer
ArrayBufferView

options

Type:

object
outputFormat

Type:

string
\ Values:
'hex' | 'buffer'
\ Default:
'hex'

Setting this to

buffer
makes it return an
ArrayBuffer
instead of a
string
.

Related

  • hasha - Hashing in Node.js made simple

We use cookies. If you continue to browse the site, you agree to the use of cookies. For more information on our use of cookies please see our Privacy Policy.