Porting .Net RSA chaves xml para Java
Tenho chaves públicas e privadas do sistema .Net no formato xml. Eu tenho que usar essas chaves para executar criptografia / descriptografia em Java. Há alguma forma de fazer isso
chave @Public é mais ou menos assim:
<RSAKeyValue>
<Modulus>jHIxcGzzpByFv...pvhxFnP0ssmlBfMALis</Modulus>
<Exponent>AQAB</Exponent>
</RSAKeyValue>
Chave privada
<RSAKeyValue>
<Modulus>4hjg1ibWXHIlH...ssmlBfMAListzrgk=</Modulus>
<Exponent>AQAB</Exponent>
<P>8QZCtrmJcr9uW7VRex+diH...jLHV5StmuBs1+vZZAQ==</P>
<Q>8CUvJTv...yeDszMWNCQ==</Q>
<DP>elh2Nv...cygE3657AQ==</DP>
<DQ>MBUh5XC...+PfiMfX0EQ==</DQ>
<InverseQ>oxvsj4WCbQ....LyjggXg==</InverseQ>
<D>KrhmqzAVasx...uxQ5VGZmZ6yOAE=</D>
</RSAKeyValue>
Escrevi um pouco de código para criptografar dados, mas não tenho certeza se está corret
Element modulusElem = root.getChild("Modulus");
Element exponentElem = root.getChild("Exponent");
byte[] expBytes = decoder.decodeBuffer(exponentElem.getText().trim());
byte[] modBytes = decoder.decodeBuffer(modulusElem.getText().trim());
RSAPublicKeySpec keySpec = new RSAPublicKeySpec(new BigInteger(1, modBytes), new BigInteger(1, expBytes));
KeyFactory fact = KeyFactory.getInstance("RSA");
PublicKey pubKey = fact.generatePublic(keySpec);
Como posso criar uma chave privada do xml para descriptografar os dado