Cert.getNotAfter() retornando data diferente do repositorio do windows[resolvido]

1 resposta
V

Oi pessoal, uso o seguinte codigo para pegar a validade de um .pfx e ele retorna a data de validade, so que 3 meses antes da validade que aparece no repositorio do windows, alguem sabe o que pode ser?

cert.checkValidity();
			return "Certificado valido de " + 
				new SimpleDateFormat("EEE dd/MM/yyyy HH:mm:ss").format(cert.getNotBefore()) +
				" ate " + new SimpleDateFormat("EEE dd/MM/yyyy HH:mm:ss").format(cert.getNotAfter());

as datas retornadas por before e after sao muito proximas de 10/04/2013 ate 09/07/2013 mas o certificado eh A1 com validade de 1 ano. :shock:

1 Resposta

V

opa consegui, se alguem tiver duvida também o pedaço do código esta abaixo, realmente ainda nao entendi a vantagem de se usar um .jks, usei o .pfx direto e deu certo.

substitui o uso do jks:

rep = KeyStore.getInstance("JKS");
        rep.load(new FileInputStream(absolutePathCertificado), senha);  
        cert = (X509Certificate) rep.getCertificate(alias);

por uso do .pfx direto:

rep = KeyStore.getInstance("PKCS12");
        rep.load(new FileInputStream(absolutePathCertificado), senha);  

        Enumeration<String> aliases = rep.aliases();
        alias = "";
        while (aliases.hasMoreElements()) {
        	alias = aliases.nextElement();
        	if (rep.isKeyEntry(alias)) {
        		break;
        	}
        }
        KeyStore.PrivateKeyEntry keyEntry = (KeyStore.PrivateKeyEntry) rep.getEntry(alias, new KeyStore.PasswordProtection(senha));

        cert = (X509Certificate) keyEntry.getCertificate();

eh maior mas nao preciso mais usar o keytool para gerar um jks com os certificados dos clientes.

Criado 11 de abril de 2013
Ultima resposta 11 de abr. de 2013
Respostas 1
Participantes 1