Stanford Javascript Crypto Library

The Stanford Javascript Crypto Library (SJCL) is a secure, powerful, fast, small, easy-to-use and cross-browser cryptography library written in JavaScript.

The library is developed by the Stanford Computer Security Lab.

The Stanford Javascript Crypto Library is incredibly easy to use. By default SJCL strengthens your passwords by a factor of 1000 and salts them to protect against rainbow tables. The library authenticates every message it sends to prevent it from being modified. Moreover, the library has a powerful API, intended for users with "complex security requirements".

The SJCL library is under 6.4KB compressed. This allows to be included on any webpage without much decrease of load time.

Despite its small size the Stanford Javascript Crypto Library implements industry-standard AES algorithm at 128, 192 or 256 bits; the SHA256 hash function; the HMAC authentication code; the PBKDF2 password strengthener; and the CCM and OCB authenticated-encryption modes.