(PHP 4 >= 4.0.2, PHP 5, PHP 7 < 7.2.0, PECL mcrypt >= 1.0.0)
mcrypt_generic_init — Функция инициализирует все буферы, необходимые для шифрования
Функция УСТАРЕЛА с PHP 7.1.0, а в PHP 7.2.0 функцию УДАЛИЛИ. Пользоваться функцией настоятельно не рекомендуют.
Вы должны вызывать эту функцию перед любым вызовом mcrypt_generic() или mdecrypt_generic().
td
Дескриптор шифрования.
key
Максимальная длина ключа должна быть получена с помощью функции mcrypt_enc_get_key_size() и любое меньшее значение допустимо.
iv
Обычно размер инициализирующего вектора(IV) должен совпадать с размером блока, но вы всё равно должны получить это значение с помощью функции mcrypt_enc_get_iv_size(). IV игнорируется в ECB. IV ДОЛЖЕН присутствовать в режимах CFB, CBC, STREAM, nOFB и OFB. Он должен быть случайным и уникальным (но не обязательно секретным). Один и тот же IV должен использоваться как при шифровании так и при дешифровке. Если вы не хотите его использовать - просто установите его равным нулю, но так поступать не рекомендуется.
В случае возникновения ошибки эта функция возвращает отрицательное число:
-3 если длина ключа некорректна,
-4 если возникли проблемы с выделением памяти, а любое другое
значение обозначает неизвестную ошибку. Также, в случае любой ошибки
будет вызвано предупреждение. если переданы некорректные параметры, будет
возвращено false
.