openssl_x509_checkpurpose

Descripción

Sintaxis de llamada

int openssl_x509_checkpurpose(mixed $Certificado, int $Finalidad[, array $CertConfianza[, string $CertNoConfianza]])

Parámetros de entrada

  • Certificado: Recurso con el certificado, cadena con el cerficado codificado o bien cadena con el camino y nombre del archivo en que se encuentra almacenado, en el formato 'file://camino/nombre'.
  • Finalidad: Una de las constantes mostradas en la tabla que hay más abajo, según la finalidad a comprobar.
  • CertConfianza: Vector con nombres de archivos correspondientes a certificados de organismos de confianza, normalmente correspondientes a entidades de certificación.
  • CertNoConfianza: Nombre de un archivo en el que estén codificados en formato PEM otros certificados que, aunque no sean de confianza como los anteriores, pueden ser empleados para efectuar la comprobación.
Constante Descripción
X509_PURPOSE_SSL_CLIENT Comprueba si el certificado puede ser utilizado en el extremo cliente de una conexión SSL
X509_PURPOSE_SSL_SERVER Comprueba si el certificado puede ser utilizado en el extremo servidor de una conxión SSL
X509_PURPOSE_NS_SSL_SERVER Comprueba si es posible utilizar el certificado en un servidor Netscape SSL
X509_PURPOSE_SMIME_SIGN Comprueba si puede utilizarse el certificado para firmar mensajes S/MIME
X509_PURPOSE_SMIME_ENCRYPT Comprueba si es posible usar el certificado para cifrar mensajes S/MIME
X509_PURPOSE_CRL_SIGN Comprueba si el certificado puede utilizarse para firmar una lista de revocación de certificados
X509_PURPOSE_SSL_ANY Comprueba si el certificado se puede utilizar para cualquier tarea

Valor de retorno

  • int: Devuelve el valor TRUE si se puede usar el certificado para la finalidad indicada, el valor FALSE si dicho uso no es posible o el valor -1 en caso de que se produzca un error.

Finalidad de la función

Esta función permite comprobar si el certificado permite su uso para una cierta finalidad antes de intentar utilizarlo realmente, evitando así posibles errores.

Véase también

Unless otherwise stated, the content of this page is licensed under Creative Commons Attribution-ShareAlike 3.0 License