Preciso fazer com que um usuário se autentique em um sistema web via o certificado que ele possui (certificado e-CNPJ). Se puderem me ajudar de alguma forma nisso, esclarecendo as dúvidas que eu tenho, seria muito grato. Tipo, por hora, gostaria de saber se é possível gerar um certificado (do tipo e-CNPJ) para testes (criando uma CA e assinando o certificado com esta CA). Outra coisa: gostaria de saber, de forma simples, a diferença entre keystore e truststore. O servidor de aplicação é o OC4J, mas por enquanto, estou fazendo testes no tomcat. Agradeço a ajuda.
Dúvidas sobre Certificado Digital
4 Respostas
truststore é um keystore que contém apenas a parte pública de certificados raiz e certificados que estão na cadeia de certificação.
Por exemplo, para e-CPF/e-CNPJ, ele precisa conter o certificado da ICP-Brasil, o certificado da Receita Federal (emitido pelo Serpro, se não me engano) e o certificado da autoridade certificadora que emitiu seu e-CPF / e-CNPJ.
keystore é qualquer arquivo em um determinado formato (dependente do “JCE provider”) que contenha chaves e outros dados associados (como certificados). Podem ser públicas, privadas ou secretas.
Cara, uma pergunta: eu devo importar no keystore ou truststore todos os certificados das empresas que vão se autenticar no meu sistema ou estou viajando na maionese? Ah, e agradeço a colaboração… Valeu mesmo!!
Você deve importar, no truststore, os certificados das autoridades certificadoras (CAs) que emitiram os certificados dos clientes que vão se autenticar no seu sistema. (Isso quer dizer que você não deve permitir conexões de clientes que criaram seu próprio “self-signed certificate”).
Acho que entendi… Tem como eu criar uma AC, certificados Intermediários e os certificados dos clientes, só a nível de teste mesmo? estava tentando com o openssl, mas para gerar um certificado e-CNPJ parece que tem que setar o OID e o CNPJ, mas não sei se tem como fazer isto… Mais uma vez, agradeço a colaboração.