NewYour coding agent can read the release notes before it upgrades.Set up the MCP server →
npm · #4423 most downloaded on npm
All the cryptographic primitives used in Ethereum.
Last release 1 years ago
25 Apr 2025
Ships fairly regularly
a new release about every 3 months
Most releases are documented
notes for 24 of 34 stable releases
Nothing withdrawn
no release was ever pulled
7 years old
35 releases · first in 2019
utils: use built-in Uint8Array toHex / fromHex when available. Gives 13x speed-up on 256b arrays, 20x speed-up on 32kb arrays
Reviewed in https://github.com/ethereum/js-ethereum-cryptography/pull/141
Full Changelog: https://github.com/ethereum/js-ethereum-cryptography/compare/3.1.0...3.2.0
One column per quarter.
ciphers: update from v1.0.0 to v1.2.1. diff
format option in verifyOverall, dependencies received a lot of smaller changes, such as:
Full Changelog: https://github.com/ethereum/js-ethereum-cryptography/compare/3.0.0...3.1.0
aes: change from native async to noble-ciphers sync
aes: change from native async to noble-ciphers syncbls module: bls12-381 operationsbn module: bn254 operationsmath module: modPow and modInv operationsBackwards-incompatible changes:
crypto var had been removedSpecial thanks to @legobeat for release improvements and review.
Full Changelog: https://github.com/ethereum/js-ethereum-cryptography/compare/2.2.1...3.0.0
Bump noble-curves from 1.4.0 to 1.4.2 in https://github.com/ethereum/js-ethereum-cryptography/pull/113
Full Changelog: https://github.com/ethereum/js-ethereum-cryptography/compare/2.2.0...2.2.1
Bump noble-curves from 1.3.0 to 1.4.0
Full Changelog: https://github.com/ethereum/js-ethereum-cryptography/compare/2.1.3...2.2.0
curves to 1.2.0: https://github.com/paulmillr/noble-curves/releases/tag/1.2.0
Update dependencies:
Full Changelog: https://github.com/ethereum/js-ethereum-cryptography/compare/2.1.2...2.1.3
Fix ESM/cjs import of bip39 in https://github.com/ethereum/js-ethereum-cryptography/pull/89
Full Changelog: https://github.com/ethereum/js-ethereum-cryptography/compare/2.1.1...2.1.2
Rewrite imports: add .js extension, gh-86 in https://github.com/ethereum/js-ethereum-cryptography/pull/87
Full Changelog: https://github.com/ethereum/js-ethereum-cryptography/compare/2.1.0...2.1.1
Add hybrid common.js - ESM support. Bump deps. Closes #79, #80, #14 by @paulmillr in https://github.com/ethereum/js-ethereum-cryptography/pull/81
Full Changelog: https://github.com/ethereum/js-ethereum-cryptography/compare/2.0.0...2.1.0
Switched noble-secp256k1 to more secure noble-curves, which changes re-exported api of secp256k1 submodule. Please refer to upgrading section from cur
Switched noble-secp256k1 to more secure noble-curves, which changes re-exported api of secp256k1 submodule.
Please refer to upgrading section from curves README.
This release bumps minimum node.js requirement to v16.
https://github.com/ethereum/js-ethereum-cryptography/pull/74
Full Changelog: https://github.com/ethereum/js-ethereum-cryptography/compare/1.2.0...2.0.0
Expose scrypt onProgress callback
Full Changelog: https://github.com/ethereum/js-ethereum-cryptography/compare/1.1.2...1.2.0
Bump noble-secp to 1.6.3, update all devDependencies by @paulmillr in https://github.com/ethereum/js-ethereum-cryptography/pull/50
Full Changelog: https://github.com/ethereum/js-ethereum-cryptography/compare/1.1.1...1.1.2
Bump noble versions by @paulmillr in https://github.com/ethereum/js-ethereum-cryptography/pull/48
Full Changelog: https://github.com/ethereum/js-ethereum-cryptography/compare/1.1.0...1.1.1
Upgrade dependencies with ESM support
keccak256.create in https://github.com/ethereum/js-ethereum-cryptography/pull/41Full Changelog: https://github.com/ethereum/js-ethereum-cryptography/compare/v1.0.2...1.1.0
Bump noble-secp by @paulmillr in https://github.com/ethereum/js-ethereum-cryptography/pull/36
Full Changelog: https://github.com/ethereum/js-ethereum-cryptography/compare/v1.0.2...v1.0.3
Export recoverPublicKey from secp256k1. by @paulmillr in https://github.com/ethereum/js-ethereum-cryptography/pull/35
recoverPublicKey from secp256k1. by @paulmillr in https://github.com/ethereum/js-ethereum-cryptography/pull/35Full Changelog: https://github.com/ethereum/js-ethereum-cryptography/compare/v1.0.1...v1.0.2
Bump @noble/secp256k1 from 1.5.2 to 1.5.3 by @dependabot in https://github.com/ethereum/js-ethereum-cryptography/pull/34
Full Changelog: https://github.com/ethereum/js-ethereum-cryptography/compare/v1.0.0...v1.0.1
This is the final release of the new version of this library, written by @paulmillr.
This is the final release of the new version of this library, written by @paulmillr.
It's a complete rewrite that leads to a 15x smaller, more secure, and portable version of the library.
For more info, take a look at this article.
Re-use noble-hashes crypto module by @paulmillr in https://github.com/ethereum/js-ethereum-cryptography/pull/18
Full Changelog: https://github.com/ethereum/js-ethereum-cryptography/compare/v0.2.4...v1.0.0-rc1
This release contains the final changes that were motivated by the soon-to-be-published security audit.
This release contains the final changes that were motivated by the soon-to-be-published security audit.
Full Changelog: https://github.com/ethereum/js-ethereum-cryptography/compare/v0.2.4...v0.2.5
This release addresses some minor issues found during the audit. For more details go to #19.
This release addresses some minor issues found during the audit. For more details go to #19.
This is a small release that improves the hdkey module. It makes its API more robust and ensures that the private key is properly dropped.
This is a small release that improves the hdkey module. It makes its API more robust and ensures that the private key is properly dropped.
It also reuses the assertBytes utility from @noble/hashes to avoid duplication.
A small release in preparation for a security audit.
A small release in preparation for a security audit.
The only significant change it includes is an upgrade to @noble/hashes.
This is a small update that just replaces noble-* dependencies with their new @noble/* versions.
This is a small update that just replaces noble-* dependencies with their new @noble/* versions.
We just released a new version of the package, which has been rewritten using newer dependencies for all the cryptographic primitives.
We just released a new version of the package, which has been rewritten using newer dependencies for all the cryptographic primitives.
The main difference is that the new dependencies are written in TypeScript, targeting more modern systems (i.e. using native bigint), and portable (i.e. not using Node.js APIs). This changes lead to a much smaller library, with less dependencies (which means more secure), and easier to use in the web.
Please, take a look at the README to learn how to upgrade, wand what you should do if you need to target older systems.
Huge thanks to @paulmillr who not only made this rewrite, but also implemented all the cryptographic primitives, and is coordinating the audit.
This version hasn't been audited yet. An audit will be conducted before the end of the year, but consider this experimental for now.
Once the project has been audited, we'll release v1.0.0.
Full Changelog: https://github.com/ethereum/js-ethereum-cryptography/compare/v0.1.3...v0.2.0
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Your coding agent can read these notes before it upgrades. Set up the MCP server →