Учебник РНР
НазадВперёд

mcrypt_encrypt

(PHP 4 >= 4.0.2)

mcrypt_encrypt - шифрует обычный текст с данными параметрами.

Описание

string mcrypt_encrypt (string cipher, string key, string data, string mode [, string iv])

mcrypt_encrypt() шифрует данные и возвращает шифрованные данные.

Cipher эта одна из констант MCRYPT_ciphername имени алгоритма как строки.

Key это ключ, с которым данные зашифрованы. Если он меньше необходимого размера ключа, он заполняется '\0'. Лучше не использовать ASCII-строки в качестве ключей. Рекомендуется использовать mhash-функции для создания ключа из строки.

Data это данные, шифрованные с заданным шифром и режимом. Если размер данных не равен n * blocksize, данные будут заполнены '\0'. Возвращаемый зашифрованный текст может быть больше размера данных data.

Mode эта одна из констант MCRYPT_MODE_modename из "ecb", "cbc", "cfb", "ofb", "nofb" или "stream".

Параметр IV используется для инициализации в режимах CBC, CFB, OFB и некоторых алгоритмах режима STREAM. Если вы не предоставляете IV, когда он необходим для алгоритма, функция выдаёт предупреждение и использует IV со всеми байтами, установленными в '\0'.

Пример 1. mcrypt_encrypt()

<?php
    $iv = mcrypt_create_iv (mcrypt_get_iv_size (MCRYPT_RIJNDAEL_256, MCRYPT_MODE_ECB), MCRYPT_RAND);
    $key = "This is a very secret key";
    $text = "Meet me at 11 o'clock behind the monument.";
    echo strlen ($text)."\n";

    $crypttext = mcrypt_encrypt (MCRYPT_RIJNDAEL_256, $key, $text, MCRYPT_MODE_ECB, $iv);
    echo strlen ($crypttext)."\n";
?>

Этот пример напечатает:
42
64

См. также в mcrypt_module_open() более продвинутый API и пример.


НазадОглавлениеВперёд
mcrypt_enc_self_testВверхmcrypt_generic_deinit