DEFAULT_PKI_CLASS
DEFAULT_PKI_CLASS
Nombre de clase concreta a instanciar por defecto si no se especifica otra implementación.
Clase base para manejar Infraestructura de Clave Pública (PKI) usando OpenSSL y claves guardadas en formato PEM.
Requiere que esté cargada la extensión de PHP OpenSSL.
instance(mixed $user) : \PublicKeyInfrastructure
Retorna una instancia correspondiente al usuario <var>$user</var>.
mixed | $user | usuario al que van a corresponder las operaciones de este objeto; se puede usar cualquier tipo de datos que se pueda convertir a string |
si no se puede crear la instancia por algún motivo
si no se puede crear la instancia porque hay algún requisito que no se cumple
__construct(mixed $user)
Crea la instancia. Si las claves o el certificado del usuario están guardados en la sesión, los carga automáticamente.
mixed | $user | usuario al que van a corresponder las operaciones de este objeto; se puede usar cualquier tipo de datos que se pueda convertir a string |
loadPrivateKey(string $content, boolean $store_in_session = FALSE, string $passphrase = NULL)
Carga el contenido de la clave privada.
Si el certificado está cargado, se comprueba que se corresponda con la clave.
string | $content | contenido de la clave |
boolean | $store_in_session | ¿la clave se debe almacenar en la sesión? |
string | $passphrase | la frase usada para encriptar la clave |
loadPrivateKeyFile(string $filename, boolean $store_in_session = FALSE, string $passphrase = NULL)
Carga el contenido de la clave privada a partir de un archivo.
Si el certificado está cargado, se comprueba que se corresponda con la clave.
string | $filename | nombre del archivo a cargar |
boolean | $store_in_session | ¿la clave se debe almacenar en la sesión? |
string | $passphrase | la frase usada para encriptar la clave |
loadPublicKey(string $content, boolean $store_in_session = FALSE)
Carga el contenido de la clave pública.
Si hubiera un certificado cargado, lo descarga. Para que estén disponibles tanto la clave pública como el certificado, se debe cargar el certificado, no la clave.
Si la clave privada está cargada, se comprueba que se corresponda con la pública.
string | $content | contenido de la clave |
boolean | $store_in_session | ¿la clave se debe almacenar en la sesión? |
loadPublicKeyFile(string $filename, boolean $store_in_session = FALSE)
Carga el contenido de la clave pública a partir de un archivo.
Si hubiera un certificado cargado, lo descarga. Para que estén disponibles tanto la clave pública como el certificado, se debe cargar el certificado, no la clave.
Si la clave privada está cargada, se comprueba que se corresponda con la pública.
string | $filename | nombre del archivo a cargar |
boolean | $store_in_session | ¿la clave se debe almacenar en la sesión? |
loadCertificate(string $content, boolean $store_in_session = FALSE)
Carga el contenido un certificado.
Simultáneamente carga la clave pública desde el certificado.
Si la clave privada está cargada, se comprueba que se corresponda con el certificado.
string | $content | contenido del certificado |
boolean | $store_in_session | ¿el certificado se debe almacenar en la sesión? |
loadCertificateFile(string $filename, boolean $store_in_session = FALSE)
Carga el contenido de un certificado partir de un archivo.
Simultáneamente carga la clave pública desde el certificado.
Si la clave privada está cargada, se comprueba que se corresponda con el certificado.
string | $filename | nombre del archivo a cargar |
boolean | $store_in_session | ¿el certificado se debe almacenar en la sesión? |
unloadCertificate(boolean $keep_public_key = FALSE)
Descarga el certificado pública de la instancia y de la sesión.
No tiene efecto si la clave no está cargada.
boolean | $keep_public_key | ¿Se debe mantener cargada la clave pública? Si es FALSE, se descarga la clave junto con el certificado |
getCertificateId() : string
Devuelve un string que identifica unívocamente el certificado, en el formato: <pre>"Serial Number: {Serial Number}; Issuer CN: {Issuer -> CN}"</pre>
si el certificado no está disponible
si no se pudo obtener parte de la información necesaria para construir el identificador
getPrivateKeyFromFile( $filename) : mixed
Carga una clave privada guardada en un archivo y retorna la representación.
La implementación provista retorna el contenido del archivo como un string.
$filename |
si no se puede cargar el archivo
la clave cargada
getPublicKeyFromFile( $filename) : mixed
Carga una clave pública guardada en un archivo y retorna la representación.
La implementación provista retorna el contenido del archivo como un string.
$filename |
si no se puede cargar el archivo
la clave cargada
getCertificateFromFile( $filename) : mixed
Carga un certificado guardado en un archivo y retorna la representación.
La implementación provista retorna el contenido del archivo como un string.
$filename |
si no se puede cargar el archivo
la clave cargada