I have been exploring various JavaScript libraries for RSA encryption and decryption and have came across one, JSEncrypt at https://cdnjs.cloudflare.com/ajax/libs/jsencrypt/2.3.1/jsencrypt.min.js.
However, I face great difficulty in trying to understand the logic and operations that were used by this library for RSA encryption and decryption. Mainly,
- What are the algorithms used by the encryption algorithm?
- What padding schemes is used?
- Is there any salt? If so, how is the salt generated?
- Any other information that should be noted.
I was not able to find any decent documentation of this library and I was not able to understand the slightest bit of the source code. Any help is greatly appreciated.