Fórum

« Voltar para demoiselle-users

[Demoiselle-certificate]

Visualização combinada Visão plana Exibição em árvore
Tópicos [ Anterior | Próximo ]
[Demoiselle-certificate]
Resposta
25/08/14 15:18
Boa tarde,

Estou encarregado de fazer um applet que assine um documento e estou utilizando a engine do demoiselle para isso. Porém, estou tendo problemas...


Gostaria de uma ajuda nas seguintes questões...
-Como eu removo este certificado?
Para testar criei um certificado auto-assinado em meu nome. Importei no browser e o applet de exemplo listou. Porém, quando tento assinar algum documento com aquele certificado não consigo obter a chave privada. Além disso, ao tentar excluir o certificado achando que eu tinha feito algo errado no certificado, retirei ele do browser porem ele não some da aplicaçao. Já olhei em tudo que é canto....


-Como eu defino uma CRL local válida. Não está funcionando o método abaixo
Configuration config = Configuration.getInstance();config.setCrlIndex("teste.crl_index");config.setCrlPath("C:\\tmp\\crls");config.setOnline(false);

eu tenho o seguinte erro :

Exception in thread "main" br.gov.frameworkdemoiselle.certificate.repository.CRLRepositoryException: Could not get a valid CRL from Certificateat br.gov.frameworkdemoiselle.certificate.repository.OffLineCRLRepository.getX509CRL(OffLineCRLRepository.java:82)at br.gov.frameworkdemoiselle.certificate.validator.CRLValidator.validate(CRLValidator.java:58)at br.gov.frameworkdemoiselle.certificate.CertificateManager.init(CertificateManager.java:94)at br.gov.frameworkdemoiselle.certificate.CertificateManager.<init>(CertificateManager.java:66)at Teste.main(Teste.java:39)

segue código que gera o erro. este é sem a applet.
 1import java.io.File;
 2import java.security.KeyStore;
 3import java.security.KeyStoreException;
 4import java.security.cert.Certificate;
 5import java.security.cert.X509Certificate;
 6import br.gov.frameworkdemoiselle.certificate.repository.Configuration;
 7import br.gov.frameworkdemoiselle.certificate.CertificateManager;
 8import br.gov.frameworkdemoiselle.certificate.applet.certificate.ICPBrasilCertificate;
 9import br.gov.frameworkdemoiselle.certificate.keystore.loader.implementation.FileSystemKeyStoreLoader;
10
11public class Teste {
12public static void main(String[] args) {
13
14File arquivo = new File("D:\\Users\\cast.alexandre\\Desktop\\meuKeystore.jks");System.out.println(arquivo.exists());
15KeyStore ks = new FileSystemKeyStoreLoader(arquivo).getKeyStore("changeit");
16try {
17Configuration config = Configuration.getInstance();config.setCrlIndex("teste.crl_index");
18config.setCrlPath("C:\\tmp\\crls");
19config.setOnline(false);
20Certificate[] c = ks.getCertificateChain("certPessoalAl");
21X509Certificate x509 = (X509Certificate)c[0];        
22CertificateManager cm = new CertificateManager(x509, true);        
23ICPBrasilCertificate cert = cm.load(ICPBrasilCertificate.class);      
24System.out.println(cert.getNome());} catch (KeyStoreException e) {
25// TODO Auto-generated catch blocke.printStackTrace();
26}}
27}


Alguem pode me ajudar? Obrigado!