Skip to content
JS
Package category

Cryptography and hashing

Hashing, encryption, signing, random values and encoding.

697 packages2 comparisons

Packages compared

697 packages
PackageWeekly downloads12-month change52 weeksGzipLast releaseModuleTypesCategories
nanoid
A tiny (118 bytes), secure URL-friendly unique string ID generator
186.2m+221%-1 month ago
6.0.1
ESM onlyBundledCryptography and hashing
uri-js
An RFC 3986/3987 compliant, scheme extendable URI/IRI parsing/validating/resolving library for JavaScript.
117.9m+114%-5 years ago
4.4.1
CommonJSBundledURLs and query strings, Cryptography and hashing
base64-js
Base64 encoding/decoding in pure JS
107.9m+102%-5 years ago
1.5.1
CommonJSBundledCryptography and hashing
json-stable-stringify-without-jsonify
deterministic JSON.stringify() with custom sorting to get deterministic hashes from stringified results, with no public domain dependencies
104.6m+108%-9 years ago
1.0.1
CommonJSNoneCryptography and hashing
jose
JWA, JWS, JWE, JWT, JWK, JWKS for Node.js, Browser, Cloudflare Workers, Deno, Bun, and other Web-interoperable runtimes
94.5m+452%-20 days ago
6.2.12
ESM onlyBundledCloud SDKs, Authentication and authorisation
@noble/hashes
Audited & minimal 0-dependency JS implementation of SHA, RIPEMD, BLAKE, HMAC, HKDF, PBKDF & Scrypt
62.2m+299%-28 days ago
2.4.0
ESM onlyBundledCryptography and hashing
jwa
JWA implementation (supports all JWS algorithms)
61.4m+85%-1 year ago
2.0.1
CommonJSNoneCryptography and hashing, Authentication and authorisation
buffer-equal-constant-time
Constant-time comparison of Buffers
52.9m+111%-12 years ago
1.0.1
CommonJSNoneCryptography and hashing
object-hash
Generate hashes from javascript objects in node and the browser.
51.9m+101%-4 years ago
3.0.0
CommonJSNoneCryptography and hashing
node-forge
JavaScript implementations of network transports, cryptography, ciphers, PKI, message digests, and various utilities.
31m+38%-6 months ago
1.4.0
CommonJSNoneCryptography and hashing
tweetnacl
Port of TweetNaCl cryptographic library to JavaScript
28.6m+32%-6 years ago
1.0.3
CommonJSBundledCryptography and hashing
randombytes
random bytes from browserify stand alone
27.1m-13%-7 years ago
2.1.0
CommonJSNoneCryptography and hashing
@noble/curves
Audited & minimal JS implementation of elliptic curve cryptography
24m+219%-28 days ago
2.4.0
ESM onlyBundledCryptography and hashing
crypto-random-string
Generate a cryptographically strong random string
23.8m+32%-2 months ago
6.0.0
ESM onlyBundledCryptography and hashing, Strings and text
@noble/ciphers
Audited & minimal JS implementation of Salsa20, ChaCha and AES
23.1m+758%-28 days ago
2.4.0
ESM onlyBundledCryptography and hashing
fast-sha256
SHA-256, HMAC and PBKDF2 implementation with typed arrays for modern browsers and Node.js
20.3m+2178%-6 years ago
1.3.0
CommonJSBundledCryptography and hashing
hash-base
abstract base class for hash-streams
19.3m+9%-1 year ago
3.1.2
CommonJSNoneCryptography and hashing
sha.js
Streamable SHA hashes in pure javascript
18m+23%-1 year ago
2.4.12
-NoneCryptography and hashing
hash.js
Various hash functions that could be run by both browser and node
17.5m+49%-7 years ago
1.1.7
CommonJSBundledCryptography and hashing
js-base64
Yet another Base64 transcoder in pure-JS
14.5m+115%-6 days ago
3.9.4
ESM + CommonJSBundledCryptography and hashing
crypto-js
JavaScript library of crypto standards.
13.8m+71%-2 years ago
4.2.0
CommonJSNoneCryptography and hashing
md5
js function for hashing messages with MD5
13.3m+57%-6 years ago
2.3.0
CommonJSNoneCryptography and hashing
@lukeed/csprng
An alias package for `crypto.randomBytes` in Node.js and/or browsers
12.9m+170%-3 years ago
1.1.0
ESM + CommonJSBundledCryptography and hashing
hashery
Browser Compatible Object Hashing
12.9m--10 days ago
3.0.2
ESM + CommonJSBundledCryptography and hashing
blake3-wasm
BLAKE3 hashing for JavaScript: WebAssembly bindings only
12.7m+781%-3 years ago
3.0.0
ESM + CommonJSBundledCryptography and hashing, TypeScript tooling
brorand
Random number generator for browsers and node.js
12.5m+16%-9 years ago
1.1.0
CommonJSNoneCryptography and hashing
minimalistic-crypto-utils
Minimalistic tools for JS crypto modules
12.4m+4%-9 years ago
1.0.1
CommonJSNoneCryptography and hashing
create-hash
create hashes for browserify
12.3m-7%-8 years ago
1.2.0
CommonJSNoneCryptography and hashing
hmac-drbg
Deterministic random bit generator (hmac)
11.9m+14%-9 years ago
1.0.1
CommonJSNoneCryptography and hashing
pbkdf2
This library provides the functionality of PBKDF2 with the ability to use any supported hashing algorithm returned from crypto.getHashes()
11.7m+2%-3 months ago
3.1.6
CommonJSBundledCryptography and hashing
buffer-xor
A simple module for bitwise-xor on buffers
11.3m+3%-9 years ago
2.0.2
CommonJSNoneCryptography and hashing
json-stable-stringify
deterministic JSON.stringify() with custom sorting to get deterministic hashes from stringified results
11.1m+31%-1 year ago
1.3.0
CommonJSBundledCryptography and hashing
evp_bytestokey
The insecure key derivation algorithm from OpenSSL
10.9m+3%-9 years ago
1.0.3
CommonJSNoneCryptography and hashing
jwks-rsa
Library to retrieve RSA public keys from a JWKS endpoint
10.8m+161%-3 months ago
4.1.0
CommonJSBundledCryptography and hashing
md5.js
node style md5 on pure JavaScript
10.8m+4%-7 years ago
1.3.5
CommonJSNoneCryptography and hashing
create-hmac
node style hmacs in the browser
10.7m+5%-8 years ago
1.1.7
CommonJSNoneCryptography and hashing
vlq
Generate, and decode, base64 VLQ mappings for source maps and other uses
10.3m+166%-4 years ago
2.0.4
ESM + CommonJSBundledCryptography and hashing
randomfill
random fill from browserify stand alone
10.3m+12%-8 years ago
1.0.4
CommonJSNoneCryptography and hashing
tsscmp
Timing safe string compare using double HMAC
10m+76%-8 years ago
1.0.6
CommonJSNoneCryptography and hashing
bcryptjs
Optimized bcrypt in plain JavaScript with zero dependencies, with TypeScript support. Compatible to 'bcrypt'.
9.7m+145%-10 months ago
3.0.3
ESM + CommonJSBundledCryptography and hashing, Authentication and authorisation
uid
A tiny (130B to 205B) and fast utility to randomize unique IDs of fixed length
9.7m+140%-3 years ago
2.0.2
ESM + CommonJSBundledCryptography and hashing
base-x
Fast base encoding / decoding of any given alphabet
8.9m+72%-1 year ago
5.0.1
ESM + CommonJSBundledCryptography and hashing
@peculiar/asn1-cms
ASN.1 schema for Cryptographic Message Syntax (CMS) defined in RFC 5652.
8.8m+2175%-4 days ago
2.9.5
ESM + CommonJSBundledCryptography and hashing
iron-webcrypto
a cryptographic utility for sealing-unsealing a JSON object using symmetric key encryption with message integrity verification
8.5m+250%-9 months ago
2.0.0
ESM onlyBundledCryptography and hashing, Authentication and authorisation
hasha
Hashing made simple. Get the hash of a buffer/string/stream/file.
8.3m+25%-1 year ago
7.0.0
ESM onlyBundledCryptography and hashing
@tufjs/canonical-json
OLPC JSON canonicalization
8m+32%-3 years ago
2.0.0
CommonJSBundledCryptography and hashing
@ecies/ciphers
Node/Pure JavaScript symmetric ciphers adapter
7.3m+679%-5 months ago
0.2.6
CommonJSBundledCryptography and hashing
spark-md5
Lightning fast normal and incremental md5 for javascript
7m+505%-5 years ago
3.0.2
CommonJSNoneCryptography and hashing
pkijs
Public Key Infrastructure (PKI) is the basis of how identity and key management is performed on the web today. PKIjs is a pure JavaScript library implementing the formats that are used in PKI applications. It is built on WebCrypto and aspires to make it p
7m+4344%-4 days ago
3.4.1
ESM + CommonJSBundledCryptography and hashing
libmime
Encode and decode quoted printable and base64 strings
6.6m+210%-10 days ago
5.4.4
CommonJSNoneCryptography and hashing

12-month change compares the average of the last 4 weeks of downloads with the first 4 weeks of the 52-week series. Gzip size is for the whole package, as measured by Bundlephobia. "-" means the value has not been fetched.

  • nanoidA tiny (118 bytes), secure URL-friendly unique string ID generator
  • uri-jsAn RFC 3986/3987 compliant, scheme extendable URI/IRI parsing/validating/resolving library for JavaScript.
  • base64-jsBase64 encoding/decoding in pure JS
  • json-stable-stringify-without-jsonifydeterministic JSON.stringify() with custom sorting to get deterministic hashes from stringified results, with no public domain dependencies
  • joseJWA, JWS, JWE, JWT, JWK, JWKS for Node.js, Browser, Cloudflare Workers, Deno, Bun, and other Web-interoperable runtimes
  • @noble/hashesAudited & minimal 0-dependency JS implementation of SHA, RIPEMD, BLAKE, HMAC, HKDF, PBKDF & Scrypt
  • jwaJWA implementation (supports all JWS algorithms)
  • buffer-equal-constant-timeConstant-time comparison of Buffers
  • object-hashGenerate hashes from javascript objects in node and the browser.
  • node-forgeJavaScript implementations of network transports, cryptography, ciphers, PKI, message digests, and various utilities.
  • tweetnaclPort of TweetNaCl cryptographic library to JavaScript
  • randombytesrandom bytes from browserify stand alone
  • @noble/curvesAudited & minimal JS implementation of elliptic curve cryptography
  • crypto-random-stringGenerate a cryptographically strong random string
  • @noble/ciphersAudited & minimal JS implementation of Salsa20, ChaCha and AES
  • fast-sha256SHA-256, HMAC and PBKDF2 implementation with typed arrays for modern browsers and Node.js
  • hash-baseabstract base class for hash-streams
  • sha.jsStreamable SHA hashes in pure javascript
  • hash.jsVarious hash functions that could be run by both browser and node
  • js-base64Yet another Base64 transcoder in pure-JS
  • crypto-jsJavaScript library of crypto standards.
  • md5js function for hashing messages with MD5
  • @lukeed/csprngAn alias package for `crypto.randomBytes` in Node.js and/or browsers
  • hasheryBrowser Compatible Object Hashing
  • blake3-wasmBLAKE3 hashing for JavaScript: WebAssembly bindings only
  • brorandRandom number generator for browsers and node.js
  • minimalistic-crypto-utilsMinimalistic tools for JS crypto modules
  • create-hashcreate hashes for browserify
  • hmac-drbgDeterministic random bit generator (hmac)
  • pbkdf2This library provides the functionality of PBKDF2 with the ability to use any supported hashing algorithm returned from crypto.getHashes()
  • buffer-xorA simple module for bitwise-xor on buffers
  • json-stable-stringifydeterministic JSON.stringify() with custom sorting to get deterministic hashes from stringified results
  • evp_bytestokeyThe insecure key derivation algorithm from OpenSSL
  • jwks-rsaLibrary to retrieve RSA public keys from a JWKS endpoint
  • md5.jsnode style md5 on pure JavaScript
  • create-hmacnode style hmacs in the browser
  • vlqGenerate, and decode, base64 VLQ mappings for source maps and other uses
  • randomfillrandom fill from browserify stand alone
  • tsscmpTiming safe string compare using double HMAC
  • bcryptjsOptimized bcrypt in plain JavaScript with zero dependencies, with TypeScript support. Compatible to 'bcrypt'.
  • uidA tiny (130B to 205B) and fast utility to randomize unique IDs of fixed length
  • base-xFast base encoding / decoding of any given alphabet
  • @peculiar/asn1-cmsASN.1 schema for Cryptographic Message Syntax (CMS) defined in RFC 5652.
  • iron-webcryptoa cryptographic utility for sealing-unsealing a JSON object using symmetric key encryption with message integrity verification
  • hashaHashing made simple. Get the hash of a buffer/string/stream/file.
  • @tufjs/canonical-jsonOLPC JSON canonicalization
  • @ecies/ciphersNode/Pure JavaScript symmetric ciphers adapter
  • spark-md5Lightning fast normal and incremental md5 for javascript
  • pkijsPublic Key Infrastructure (PKI) is the basis of how identity and key management is performed on the web today. PKIjs is a pure JavaScript library implementing the formats that are used in PKI applications. It is built on WebCrypto and aspires to make it p
  • libmimeEncode and decode quoted printable and base64 strings