Tenho que criptografar a senha e enviar para validação usando o seguinte código:
String senha = "gdae123";
byte[] modulusBytes = Base64.decode("0Jlux+JHnHcj7w7+7Lo8dggyIxzr8Udh9zN11O9gxv65b0dvAiSCwieB7VTfAbHvD9V61q0ur60BX9FFZksAZU9zSDbYWu2cmRboiExsOrbMy8UguXdsZNIQEQJCqoe80oLupc8Xcje0OFg+WFvvOEucH4QujO288+19P0VTMQ0=");
byte[] exponentBytes = Base64.decode("AQAB");
BigInteger modulus = new BigInteger(1, modulusBytes );
BigInteger exponent = new BigInteger(1, exponentBytes);
RSAPublicKeySpec rsaPubKey = new RSAPublicKeySpec(modulus, exponent);
KeyFactory fact = KeyFactory.getInstance("RSA");
PublicKey pubKey = fact.generatePublic(rsaPubKey);
WsAutenticacaoSoapProxy auth = new WsAutenticacaoSoapProxy();
String senhaCriptografada = RSAJEncrypt.encodeBASE64(RSAJEncrypt.encrypt(senha.getBytes(), pubKey));
System.out.println(senhaCriptografada);
O problema é que ele está dando senha inválida, ou seja, a criptografia está incorreta.
Não sei se o problema está na conversão do modulus e exponent, alguém já passou por isso ou tem idéia?