Buenas,

Lo primero decir que soy un completo novato en temas de openssl, CAs, y demas, asi que perdonen si suelto alguna "perla"... :)

Bueno, en mi empresa estamos montando un sistema de certificados digitales, y como no, me ha caido a mi la cosa. La idea es que nuestros acreedores se conecten a una aplicacion web y dicha aplicacion les pida un certificado de cliente, en formato pcks12, dicho certificado es validado por nuestra CA y si todo esta correcto se les da acceso a la aplicacion.

Hasta aqui la teoria, vamos con la practica...

Primeramente decir que la aplicacion corre sobre jboss, asi que he utilizado la herramienta keytool para almacenar los certificados, ademas, para generar la CA he utilizado openssl.

A la hora de generar la clave publica de la CA y del servidor no hay problema, he realizado las correspondiente pruebas y una vez que instalo el certificado de la CA en el navegador accedo a la aplicacion sin que me salte ninguna excepcion de seguridad (probado en IE y firefox), asi que en este punto vamos bien.

Tras esto pasamos a los certificados de cliente, que por lo que he visto deben estar generados en formato pkcs12. Dichos certificados los genero utilizando la keytool de java. Para el que no este familiarizado, decir que te genera un almacen llamado trustore donde almacena las claves privadas de los certificados de cliente, una especie de "saco" donde va a consultar cada vez que un cliente le envia su certificado. Dicho certificado lo genero en formato pkcs12 y lo importo al "saco" de java sin problemas. El usuario se conecta y al enviar el certificado es validado correctamente, asi que, aparentemente, todo va bien.

¿Cual es el problema? Pues que dichos certificados no estan firmados por mi CA, es decir, son certificados que yo he generado usando la keytool e importado al trustore, pero en ningun momento envio a la CA para que lo firme, entre otras cosas porque, por lo que he leido y probado en mis carnes, un certificado pkcs12 no puede haber sido firmado por una CA.

Mi pregunta es, hay alguna manera de generar certificados para cliente firmados por una CA? Esto lo pregunto porque si examino los detalles del certificado, tanto el emisor como el destinatario son el mismo, y eso genera una alerta en internet explorer.

He estado mirando el tema y no he conseguido sacar nada en claro, una ayudita vendria bien. Un saludo.