mcrypt_module_open
En esta página
mcrypt_module_open
Abre el módulo del algoritmo y del modo a utilizar
[!WARNING] Esta función está OBSOLETA a partir de PHP 7.1.0 y ha sido ELIMINADA a partir de PHP 7.2.0. Depender de esta función está altamente desaconsejado.
Descripción#
mcrypt_module_open(string $algorithm, string $algorithm_directory, string $mode, string $mode_directory): resource
```php
`mcrypt_module_open` abre el módulo del algoritmo y del modo a utilizar. El nombre del algoritmo se especifica mediante el parámetro `algorithm` (por ejemplo: `"twofish"`), o bien una de las constantes `MCRYPT_ciphername`. La biblioteca se cierra al llamar a `mcrypt_module_close`.
## Parámetros
`algorithm`
Una de las constantes `MCRYPT_ciphername`, o el nombre del algoritmo como cadena.
`algorithm_directory`
El parámetro `algorithm_directory` se utiliza para localizar el módulo de cifrado. Cuando se especifica un nombre de directorio, se utilizará. Si se especifica una cadena vacía (`""`), se utilizará el valor definido en la directiva `mcrypt.algorithms_dir` del fichero `php.ini`. Cuando no está definida, el directorio por omisión utilizado será aquel en el que se encuentre la biblioteca libmcrypt (habitualmente, `/usr/local/lib/libmcrypt`).
`mode`
Una de las constantes `MCRYPT_MODE_modename`, o una de las siguientes cadenas: "ecb", "cbc", "cfb", "ofb", "nofb" o "stream".
`mode_directory`
El parámetro `mode_directory` se utiliza para localizar el módulo de cifrado. Si se especifica un nombre de directorio, se utilizará. Cuando se especifica una cadena vacía (`""`), se utilizará el valor de la directiva `mcrypt.modes_dir` del fichero `php.ini`. Si no está definida, el directorio por omisión utilizado será aquel en el que se encuentre la biblioteca libmcrypt (habitualmente `/usr/local/lib/libmcrypt`).
## Valores devueltos
Normalmente, esta función devuelve un descriptor de cifrado, o `false` si ocurre un error.
## Ejemplos
Ejemplo con `mcrypt_module_open`
La primera línea del ejemplo anterior intentará abrir el cifrado `DES`, en el directorio por omisión, y el modo `ECB` en el directorio `/usr/lib/mcrypt-modes`. El segundo ejemplo utiliza las cadenas como nombre para el cifrado y el modo. Esto solo funciona si la extensión está compilada con libmcrypt 2.4.x o 2.5.x.
Utilización de `mcrypt_module_open` para cifrar
```php
Véase también#
mcrypt_module_close
mcrypt_generic
mdecrypt_generic
mcrypt_generic_init
mcrypt_generic_deinit