El primer error se debió a que intentaste "leer" (y verificar) un archivo inexistente.
El segundo parecería no ser un error, sino un error 'correcto' para verificar.
Lo que realmente dice el mensaje es que no puede encontrar la CA que emitió el certificado que está probando y, por lo tanto, no puede validar la cadena (lo que generalmente sería, en el mínimo de CA > su certificado).
La línea SSLeay demo server
en su segunda salida tendería a indicar que una razón para esto es que, de hecho, acaba de generar una nueva CA.
También parece que está intentando validar su propio certificado de CA, que es un poco redundante, pero si realmente quiere hacerlo, debe ejecutar:
openssl verify -CAfile cacert.pem cacert.pem
Un ejemplo más útil / práctico sería validar un certificado de bien conocido (con suerte). No estoy seguro de poder canalizar en Windows, pero en Linux, podría hacerlo:
openssl s_client -connect google.com:443 </dev/null | openssl verify
Si desea ver el certificado, puede ejecutar:
openssl s_client -connect google.com:443 </dev/null | openssl x509 -text
Creo que es posible que desee pasar un poco de tiempo leyendo sobre cómo funciona la PKI: en general, una PKI se crea cuando una entidad "confiable" (una Autoridad de certificación) emite un certificado para otra entidad; básicamente, responde por eso otra entidad (que puede ser una organización, un servidor, un usuario, etc.) que es quien dice ser.
Por lo tanto, la validación / verificación de un certificado implica lo siguiente (a continuación se presenta una explicación simplificada):
- de su certificado de usuario final (es decir, el certificado utilizado en el dominio que está verificando; el usuario aquí es cualquier cosa que haga uso del certificado, no necesariamente un ser humano), el Emisor se verifica y la clave pública del Emisor también es extracto (para comparación con claves conocidas para ese emisor).
- luego, puede verificar primero que su certificado de usuario final está firmado correctamente (es decir, la firma contenida en el certificado está firmada por la clave privada vinculada a la clave pública del Emisor, que se incluye en el certificado)
- luego, puede validar el certificado del Emisor, ya sea revisando una lista de certificados de productos en buen estado (que es lo que hace la tienda de certificados del sistema operativo), o repitiendo los dos pasos anteriores si el Emisor ha recibido su certificado por algún otro entidad.
En algún momento, usted termina en un certificado autofirmado que pertenece a una entidad como Verisign / LetsEncrypt / YourCAHere, que es la raíz de la cadena de confianza que refleja la PKI.