FEATURES
The 'jsrsasign' library provides following features in pure JavaScript.- Signature - RSA/RSAPSS/ECDSA/DSA digital signature class wrapper of Java JCE style
- MessageDigest - cryptographic hash calculation class wrapper of Java JCE style
- MAC - message authentication code hash calculation class wrapper of Java JCE style
- ASN.1 encoder/generator
- ASN.1 structure for X.509 ceritificate, CRL and CSR(PKCS#10) generation
- ASN.1 structure for CMS SignedData generation
- ASN.1 structure for RFC 3161 TimeStamp generation
- ASN.1 structure for RFC 5126 CAdES Long Term Signature generation
- simple ASN.1 data parser
- simple X.509 certificate parser/reader
- KEYUTIL - loading RSA/EC/DSA private/public key from PEM formatted PKCS#1/5/8 and X.509 certificate
- JSON Web Siguature(JWS), JSON Web Token(JWT) and JSON Web Key(JWK)
- Supported formats and algorithms are listed here.
NEWS
- 2016-Feb-28:
- Release 5.0.6 is now available. Now jsrsasign can be used in strict mode (--use_strict) of Node.JS.
- 2015-Nov-23:
- Release 5.0.4 is now available. There is no library and npm update but sample Node scirpts are added. Especially I hope jwtverify tool is very useful for JOSE guys :).
- 2015-Nov-11:
- Release 5.0.2 is now available. RFC 7638 JWK thumbprint supported. Some file read/save functions added for Node.js in nodeutil.js.
- 2015-Oct-14:
-
Release 5.0.0 is now available.
Mac class some issue fix and extra features for Mac passwords.
It is also affects to JWS class.
KEYUTIL.getKey supports
RSA JWK without P/Q/DP/DQ/COEFF.
NOTICE: Release 4.10.0 was declined because of semver violation. - 2015-Sep-15:
- Keypair and CSR generator demonstration page is available.
- 2015-Sep-13:
- Release 4.9.0 is now available. Certificate signing request (CSR/PKCS#10) support is added.
ONLINE TOOL & DEMO
- JavaScript Certification Authority
- Encrypted PKCS#5 Private Key Viewer
- Online Certificate Viewer
- Fake certificate converter from CSR for factorable.net checking
- Simple CMS SignedData generator
- Keypair and CSR/PKCS#10 generator demo
- Sample Application for ECDSA signing with JavaScript(NEW!!!)
- Sample Application for RSA signing with JavaScript
DOWNLOAD
- Use git to clonse the official jsrsasign repository
git clone git://github.com/kjur/jsrsasign.git
otherwise bower install jsrsasign - Alternatively, you can download a zip file for the latest development version or a previous releases.
API DOCUMENT
The 'jsrsasign'(RSA-Sign JavaScript Library) JavaScript API document is available here.LICENSE
The 'jsrsasign'(RSA-Sign JavaScript Library) is licensed under the terms of the MIT license reproduced which is simple and easy to understand and places almost no restrictions.PROGRAMMING TUTORIALS
- MessageDigest class tutorial
- Signature class tutorial
- ASN1 DER Primitive Encoder tutorial
- ASN.1 structure classes for X.509 certificate tutorial
- Reading PKCS#5 RSA private key with password tutorial
- Signing and verifying with RSAKey extension (*DEPRECATED*)
- List of programming tutorials
PROJECTS THAT USE JSRSASIGN
- jwcrypto
- JavaScript implementation of JWS, JWT and JWC. The jycrypto is also used by Mozilla BrowserID/Persona. (used here)
- jwt-js
- JSON Web Tokens implemented in pure JavaScript. (used here)
- npm node-bignumber
- A pure javascript implementation of BigIntegers and RSA crypto for Node.js (used here)
- npm bignumber-jt
- A pure javascript implementation of BigIntegers and RSA crypto. (used here)
- NDN.JS
- a JavaScript client library for Named Data Networking of Univ. of Memphis. (used here)
- cryptio
- An easy-to-use encryption system utilizing RSA and AES for javascript. (used here)
- jspackcrx
- Package Chrome extension files using pure JavaScript. (used here)
- xml-signer
- xmldsig signatures in a browser (used here)
DEPENDENCY
- Tom Wu's jsbn library - BigInteger, RSA and ECC
- BitcoinJS library - ECDSA signature algorithm
- CryptoJS - symmetric key encryption algorithms, message digest, message authentication codes and PBKDF
- OpenPGP.js - DSA signature algorithm
- Yahoo YUI library - for class inheritance