sjcl-esm

Stanford Javascript Crypto Library - ESM version

Usage no npm install needed!

<script type="module">
  import sjclEsm from 'https://cdn.skypack.dev/sjcl-esm';
</script>

README

sjcl-esm

sjcl-esm on github
sjcl-esm on npm

sjcl on github
sjcl 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