Ola para
todos.
Estou desenvolvendo
um sistema em Swing que ira fazer assinatura digital atravez da API
java.security. Ja consegui pegar o certificado da pessoa e todas os seus
atributos, inclusive a chave publica, mas nao consigo pegar a chave privada.
Alguem saberia me informar como fazer isso?
Segue o trecho de
codigo que estou utilizando.
/* pega o
certificado */
FileInputStream fis
= new FileInputStream ("certificado.cer");
CertificateFactory
certF = CertificateFactory.getInstance("X.509");
X509Certificate cert = (X509Certificate)certF.generateCertificate(fis);
X509Certificate cert = (X509Certificate)certF.generateCertificate(fis);
/* pega a chave
publica */
PublicKey puk =
cert.getPublicKey();
System.out.println(puk.getAlgorithm());
System.out.println(puk.getAlgorithm());
/* estou com duvidas
nesse codigo */
KeyStore store =
KeyStore.getInstance ("jks");
store.load (null, "senha".toCharArray());
store.setCertificateEntry("teste", cert);
store.load (null, "senha".toCharArray());
store.setCertificateEntry("teste", cert);
/* ????????
*/
PrivateKey pk =
(PrivateKey) store.getKey("chave",
"senha".toCharArray());
fis.close();
fis.close();
Obrigado,
Glauco