2009-01-12 13 views
6

¿Cómo puedo verificar un certificado X509 (o formato DER) contra el almacén de certificados Java a través de la línea de comandos?Verificar certificado contra el almacén de certificados Java a través de CLI

He investigado el uso de la utilidad keytool, pero parece que solo maneja la funcionalidad de importación/exportación/visualización (sin verificación).

EDITAR: Parece que keytool se puede utilizar para la verificación, pero solo si se intenta realizar una importación. Supongo que una mejor forma de hacer estas preguntas es si está disponible o no un enfoque más pasivo (como en: no modificar el almacén de claves). ¡Gracias!

Respuesta

2

Esta página podría simplificando:

http://java.sun.com/docs/books/tutorial/security/toolfilex/rstep1.html

Pero no parece importar, incluso con la herramienta de claves hace una verdadera verificación de un certificado. No veo ninguna descripción de verificar la firma del certificado entrante contra la firma de otro certificado de confianza.

jarsigner verificará la firma en un jar firmado, pero no hace nada para verificar la firma en el certificado utilizado para firmar el jar.

Me temo que tendrías que escribir una herramienta para hacer la verificación, o buscar una herramienta comercial que lo haga. Creo que algunos de los kits de herramientas de PKI tendrían una herramienta de verificación de certificados que haría esto.

+0

Creo que tienes razón en que Keytool no admitirá lo que estoy tratando de hacer. Terminamos optando por hacer nuestra propia utilidad, especialmente porque Keytool no está firmado y queremos poder verificar el ejecutable antes de ejecutarlo. – Brian

10

Puede utilizar keytool a export los certificados necesarios (los que están en la cadena de la que necesita para verificar) desde el almacén de claves de Java en archivos X.509. Luego, concatenarlos en un solo archivo. Finalmente, use openssl para hacer la verificación.

openssl verify -CAfile concatenated-certs.crt cert-to-verify.crt 

No es una solución perfecta, ya que implica hacer estallar los certs fuera del almacén de confianza, pero debería servir, ya lo que está comenzando con.

+1

Esto funcionó para mí, pero tenga en cuenta que openssl quiere certificaciones con formato PEM y no DER (que es lo que keytool parece usar por defecto) – Greg

Cuestiones relacionadas