Tenho que fazer um projeto que efetue a criptografia baseado numa string enviada.
No processo, eu obtenho a string de um webservice feito em .net.
Depois disso eu tenho que criptografar os dados usando RSA, eu fiz o código:
public String validarAutenticacaoFuturo(String usuario, String senha) throws NoSuchAlgorithmException, InvalidKeySpecException, Exception{
WsAutenticacaoSoapProxy auth = new WsAutenticacaoSoapProxy();
String keyPublic = "<RSAKeyValue><Modulus>0Jlux+JHnHcj7w7+7Lo8dggyIxzr8Udh9zN11O9gxv65b0dvAiSCwieB7VTfAbHvD9V61q0ur60BX9FFZksAZU9zSDbYWu2cmRboiExsOrbMy8UguXdsZNIQEQJCqoe80oLupc8Xcje0OFg+WFvvOEucH4QujO288+19P0VTMQ0=</Modulus><Exponent>AQAB</Exponent></RSAKeyValue>";
ClienteAutenticacao cliente = new ClienteAutenticacao();
AutenticacaoDto authDTO = (AutenticacaoDto)cliente.gerarParametrosAutenticacao(keyPublic);
PublicKey publica = RSAJEncrypt.generatePublicKeyByModulusExponent(authDTO.getModulus(), authDTO.getExponent());
byte[] bytes = RSAJEncrypt.encrypt(senha.getBytes(), publica);
String password = RSAJEncrypt.encodeBASE64(bytes);
String msg = "<?xml version=\"1.0\"?>";
msg += "<ObterPerfil xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\" xmlns:xsd=\"http://www.w3.org/2001/XMLSchema\">";
msg += "<Nome>" + usuario + "</Nome>";
msg += "<Senha>";
msg += password;
msg += "</Senha>";
msg += "<Sistema>Intranet</Sistema>";
msg += "</ObterPerfil>";
System.out.println("----------------------------------------------------------------");
System.out.println(msg);
String permissoes = auth.obterPermissoesUsuario(msg);
return permissoes;
}
O problema é que estou recebendo a seguinte mensagem:
Alguém tem idéia do que possa ser? Ou se tiver outra solução.
Valeu