Pessoal, Os Correios estão utilizando agora certificado para suas ações com o SigepWeb recebi os certificados e preciso colocar no sistema da empresa. Dúvida, eu consigo gerar os arquivos sem precisar instalar no computador, deixando as informações no próprio jar?
estive dando uma olhada, e não estou conseguino fazer o teste para verificar se o arquivo está ok.
estou com as seguintes classes:
import java.security.InvalidKeyException;
import java.security.NoSuchAlgorithmException;
import java.security.NoSuchProviderException;
import java.security.SignatureException;
import javax.security.cert.CertificateException;
import javax.security.cert.X509Certificate;
public class TestaValidadeCertificadoSSL {
public static void main(String[] args) {
try {
X509Certificate certificado = CertificadoSSLLoader.load("certificado_sigepweb_64.cer");
certificado.verify(certificado.getPublicKey());
} catch (InvalidKeyException e) {
System.out.println("Chave inválida.");
e.printStackTrace();
} catch (NoSuchAlgorithmException e) {
System.out.println("Algoritmo inválido.");
e.printStackTrace();
} catch (NoSuchProviderException e) {
System.out.println("Provedor inválido.");
e.printStackTrace();
} catch (SignatureException e) {
System.out.println("Assinatura inválida.");
e.printStackTrace();
} catch (CertificateException e) {
System.out.println("Ocorreu um erro ao carregar o certificado");
e.printStackTrace();
}
}
}
import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import javax.security.cert.CertificateException;
import javax.security.cert.X509Certificate;
public class CertificadoSSLLoader {
public static X509Certificate load(String cerFileName) throws CertificateException {
File file = new File(cerFileName);
FileInputStream fis;
try {
fis = new FileInputStream(file);
} catch (FileNotFoundException e) {
throw new IllegalArgumentException("Arquivo " + cerFileName + " não existe. " +e.getMessage() );
}
X509Certificate certificado = X509Certificate.getInstance(fis);
return certificado;
}
}
só que toda hora fala que o arquivo não existe
eu coloquei o certificado na mesma pasta do projeto java onte está os arquivos.java
Obrigado a todos
EDIT***: Bobeira a parte… arrumei isso aqui, porem o certificado está apresentando o seguinte erro:
Signature length not correct: got 512 but was expecting 256
é a classe java que está errada, ou devo entrar em contato com os correios?