Cadena de cifrado en javascript y descifrado en java

Me gustaría saber si alguien conoce alguna biblioteca para realizar el cifrado en javascript y el descifrado en java. Ya he probado muchas API, pero no obteniendo los mismos valores en java.
Quiero cifrado de clave pública-privada y, por tanto, tratar de usar RSA. Algunos de los que he usado son:

http://www-cs-students.stanford.edu/~tjw/jsbn/http://ats.oka.nu/titaniumcore/js/crypto/readme.txthttp://www.ohdave.com/rsa/

Pocas cosas que verifiqué, javascript rompe la cadena en partes pequeñas y luego las encripta, lo que hace que el texto cifrado sea diferente en java y javascript. Edito el código javascript para usar la cadena como un todo pero no funcionó.

También intenté establecer el conjunto de caracteres de la página html en utf-8, pero tampoco funcionó. Obtuve el éxito en el cifrado de cadenas de un solo carácter como 'K' para ser cifrado y descifrado correctamente, lo que me hace pensar que hay un problema en el cifrado de cadenas en javascript al dividirlo en pequeños fragmentos (que verifiqué, pero falla al cifrarlo como un todo).

mi implementacion java es:

BigInteger d = new BigInteger("1f3fac65c4ae222e3a3074dd4c38fbb72c0705c4bbac0385b867c12c25a44e01", 16);
BigInteger e = new BigInteger("65537");
BigInteger N = new BigInteger("b42e91fbca364cf2a125aec67ffbdab624fd401100c40ea05189ba34d1028b0d", 16);
String messageToEncrypt = "kishor";
byte [] messageByte = messageToEncrypt.getBytes();
BigInteger message = new BigInteger(messageByte);
//Encrypting and Decrypting messages
//Encrypt a message using N and e:
BigInteger ciphertext = message.modPow(e, N);
//Decrypt the message using N and d:
BigInteger plaintext = ciphertext.modPow(d, N);
byte[] plainTextByte = plaintext.toByteArray();
String decryptMessage = new String(plainTextByte);
/*System.out.println("p : " + p);
System.out.println("q : " + q);*/
System.out.println("N : " + N.toString(16));
System.out.println("e : " + e.toString(16));
System.out.println("d : " + d.toString(16));
/*System.out.println("PhiN : " + PhiN);*/
System.out.println("ciphertext : " + ciphertext.toString(16));
System.out.println("decryptMessage : " + decryptMessage);
}

Por favor, avíseme si es posible, ya que he buscado muchas preguntas (en stackoverflow en sí) pero no puedo encontrar una solución.

Respuestas a la pregunta(3)

Su respuesta a la pregunta