斯坦福大学Javascript加密库简称SJCL,是一个由斯坦福大学计算机安全实验室创立的项目,旨在创建一个安全、快速、短小精悍、易使用、跨浏览器的JavaScript加密库。
斯坦福大学下载地址:http://crypto.stanford.edu/sjcl/sjcl.zip
GitHub主页:http://github.com/bitwiseshiftleft/sjcl
SJCL容易上手,简单地用下面的代码就可以加密、解密数据。
sjcl.encrypt("password", "data") //加密数据
sjcl.decrypt("password", "encrypted-data") //解密数据
如果你有更复杂的安全需求,这里有更强大的API,请查阅文档(http://bitwiseshiftleft.github.com/sjcl/doc/)和对应的Demo页面(http://bitwiseshiftleft.github.com/sjcl/demo/)。
SJCL短小精悍,精简版(http://crypto.stanford.edu/sjcl/sjcl.js)压缩后不到6.4KB。
SJCL安全。它使用了行业标准的AES 128, 192, 256位加密;SHA256 哈希函数;HMAC验证码;PBKDF2密码加强器;CCM和OCB认证加密模式。
SJCL跨浏览器。斯坦福实验室在以下浏览器进行过测试(IE系列, Chrome, Firefox, Safari和Opera,OS包括Mac, Linux和Windows)。如果你发现了浏览器兼容方面的问题,可以从这里(http://github.com/bitwiseshiftleft/sjcl/issues)报告Bug。
SJCL是开源的。基于BSD或者GNU GPL (2.0或更高)协议,你可以使用、修改和再发布它。
SJCL最初由斯坦福大学的Emily Stark, Mike Hamburg和Dan Boneh完成。了解SJCL的动态,请关注上面给出的GitHub主页,或者SJCL公告牌和 SJCL讨论组。