Olá,
Alguém que já tenha implementado soluções com pares de chaves/certificados
em Java?

O meu problema é o seguinte, eu tenho uma chave privada gerada por um
provider com o algoritmo "SHA1withRSA" e formato "PKCS8" mas quando tento
gerar a chave para um objecto Java obtenho sempre o seguinte erro:

*Exception in thread "main" java.io.IOException: corrupt private key*
* **at sun.security.pkcs.PKCS8Key.parseKey(PKCS8Key.java:104)*
*
*
Não tenho a certeza se esta é a maneira correcta de implementação, no
entanto como tentei foi:
Nota: o método sign tem uma assinatura *void sign(PrivateKey arg0);*

final String strKey = "MIIEvwIBADANB...."
[...]
DerValue dv = new DerValue(strKey);
envelope.sign(PKCS8Key.parseKey(dv));



Outro método que tentei, sem resultados, foi implementar o interface do
seguinte modo:

envelope.sign(new PrivateKey() {
 PKCS8EncodedKeySpec spec = new PKCS8EncodedKeySpec(strKey.getBytes());
 @Override
public String getFormat() {
return spec.getFormat();
}
 @Override
public byte[] getEncoded() {
return spec.getEncoded();
}
 @Override
public String getAlgorithm() {
return "RSA";
}
});

no entanto dispara a excepção:

*Caused by: java.security.InvalidKeyException: invalid key format*
* **at sun.security.pkcs.PKCS8Key.decode(PKCS8Key.java:324)*
* **at sun.security.pkcs.PKCS8Key.decode(PKCS8Key.java:350)*
*
*
Entretanto estou a tentar criar um certificado *self-signed* com o keytool,
apenas para tentar perceber o funcionamento pois o ideal seria utilizar o
par de chaves geradas pelo "provider".

-- 
Recebeu esta mensagem porque está inscrito no grupo "Mailing List da Comunidade 
Portuguesa de Rich Internet Applications - www.riapt.org" dos Grupos do Google.

Para publicar uma mensagem neste grupo, envie um e-mail para 
[email protected].
Para anular a inscrição neste grupo, envie um e-mail para 
[email protected].
Para ver mais opções, visite este grupo em 
http://groups.google.com/group/riapt?hl=pt-PT.

Responder a