README
sjcl-esm
sjcl-esm on github
sjcl-esm on npm
Stanford Javascript Crypto Library (with ESM support)
Disclaimer: I am not a cryptography expert, and the code is only proven to have passed the original SJCL tests.
This is a fork of SJCL that adds support for using ESM modules. Besides ESM support there has also been some work to try to make to code more readable and easier to use for people used to current JS syntax. This includes trying to move variable initialization closer to where the variables are used and more clearly expressing mutability with let/const.
You can run the tests by running npm run test
(or see the latest test runs here: https://github.com/SahAssar/sjcl-esm/actions?query=workflow%3A%22Node.js+test%22 ), you can run them in browser by going to https://sahassar.github.io/sjcl-esm/browserTest/browserTest.html and you can run SJCL's testsuite (cloned on 22-01-2020) against this code by going to https://sahassar.github.io/sjcl-esm/oldTests/browserTest/browserTest.html or look at the latest test runs here: https://github.com/SahAssar/sjcl-esm/actions?query=workflow%3A%22Node.js+oldtest%22 .
Security Advisories (inherited from SJCL)
- 12.02.2014: the current development version has a paranoia bug in the ecc module. The bug was introduced in commit ac0b3fe0 and might affect ecc key generation on platforms without a platform random number generator.
Security Contact
See https://keybase.io/svanterichter
Documentation
The documentation is available here