Opciones de contexto para SSLListado de opciones de contexto para SSL
&reftitle.description;
Opciones de contexto para transportes ssl:// y
tls://
&reftitle.options;
peer_namestring
Nombre del par a utilizar. Si no se establece este valor, se averigua
basándose en el nombre del host empleado al abrir el flujo.
verify_peerboolean
Requerir verificación del certificado SSL utilizado.
Por defecto es &true;.
verify_peer_nameboolean
Requerir verificación de nombre del par.
Por defecto es &true;.
allow_self_signedboolean
Permite certificados auto-firmados. Requiere
verify_peer.
Por defecto es &false;
cafilestring
Ubicación del archivo de la entidad emisora de certificados en el sistema de archivos local,
la cual debe ser utilizada con la opción de contexto verify_peer
para autenticar la identidad del par remoto.
capathstring
Si no se específica cafile o si no se encuentra
el certificado, el directorio al que apunta capath
sera explorado en busca de un certificado apropiado. capath
debe ser un directorio con el hash correcto.
local_certstring
Ruta hacia el archivo del certificado local en el sistema de archivos. Debe ser un
archivo codificado con PEM el cual contenga el certificado y la llave privada.
Puede, opcionalmente, contener la cadena de los emisores del certificado.
La clave privada también podría estar contenida en un fichero aparte especificado
por local_pk.
local_pkstring
Ruta a fichero de clave privada local del sistema de ficheros en caso ficheros
separados para el certificado (local_cert) y la clave privada.
passphrasestring
La frase de contraseña con la cual el archivo local_cert
fue codificado.
CN_matchstring
El nombre común que se está esperando. PHP realizará comparaciones limitadas
de comodines. Si el nombre común no coincide con esto, el intento
de conexión fallará.
Esta opción está obosleta a favor de peer_name,
a partir de PHP 5.6.0.
verify_depthinteger
Abortar si la cadena de certificados es demasiado profunda.
Por defecto es no verificarlo.
ciphersstring
Establece la lista de sistemas de cifrado disponibles. El formato de la cadena se describe
en ciphers(1).
Por defecto es DEFAULT.
capture_peer_certboolean
Si se establece en &true;, una opción de contexto peer_certificate
será creada, conteniendo el certificado par.
capture_peer_cert_chainboolean
Si se establece en &true;, una opción de contexto peer_certificate_chain
será creada, conteniendo la cadena del certificado.
SNI_enabledboolean
Si se establece en &true;, la indicación del nombre del servidor se activará. Activando SNI
se permiten múltiples certificados en la misma dirección IP.
SNI_server_namestring
Si se establece, entonces este valor se utilizará como nombre del servidor para la indicación
de nombre de servidor. Si este valor no está establecido, entonces el nombre del servidor se supone
basado en el nombre de host utilizado cuando se abre el flujo.
Esta opción está obosleta a favor de peer_name,
a partir de PHP 5.6.0.
disable_compressionboolean
Si está establecido, deshabilita la comprensión TLS. Esto puede ayudar a mitigar el vector
de ataque CRIME.
peer_fingerprintstring | array
Aborta cuando el resumen del certificado remoto no coincide con el has
especificado.
Cuando se emplea un string, la longitud determinará qué algoritmo hash
se aplica, si "md5" (32) o "sha1" (40).
Cuando se emplea un array, las claves indican el nombre del algoritmo hash
y cada valor correspondiente es el resumen previsto.
&reftitle.changelog;
&Version;&Description;5.6.0
Se añadieron peer_fingerprint and verify_peer_name.
El valor predeterminado de verify_peer se cambió a &true;.
5.4.13
Se añadió disable_compression. Requiere OpenSSL >= 1.0.0.
5.3.2
Se añadió SNI_enabled y
SNI_server_name.
5.0.0
Se añadió capture_peer_cert,
capture_peer_chain,
ciphers y
local_pk.
&reftitle.notes;
Debido a que ssl:// el es transporte subyacente para las envolturas
https:// y
ftps://,
cualquier opción de contexto que aplique para ssl:// también aplica para
https:// y ftps://.
Para que SNI (Server Name Indication) esté disponible, entonces PHP se debe compilar
con OpenSSL 0.9.8j o superior. Se utiliza
OPENSSL_TLSEXT_SERVER_NAME para determinar si SNI está
soportado.
&reftitle.seealso;