array ( 0 => 'index.php', 1 => 'PHP Manual', ), 'head' => array ( 0 => 'UTF-8', 1 => 'ru', ), 'this' => array ( 0 => 'mcrypt.constants.php', 1 => 'Предопределённые константы', ), 'up' => array ( 0 => 'book.mcrypt.php', 1 => 'Mcrypt', ), 'prev' => array ( 0 => 'mcrypt.resources.php', 1 => 'Типы ресурсов', ), 'next' => array ( 0 => 'mcrypt.ciphers.php', 1 => 'Шифры Mcrypt', ), 'alternatives' => array ( ), 'source' => array ( 'lang' => 'ru', 'path' => 'reference/mcrypt/constants.xml', ), ); $setup["toc"] = $TOC; $setup["toc_deprecated"] = $TOC_DEPRECATED; $setup["parents"] = $PARENTS; manual_setup($setup); ?>
Модуль определяет перечисленные ниже константы и открывает к ним доступ только тогда, когда модуль либо собрали в PHP, либо динамически загрузили во время исполнения кода.
Mcrypt может работать в четырёх режимах блочного
шифрования (CBC
,
OFB
, CFB
и
ECB
). Если слинковано с libmcrypt-2.4.x
или выше, функции также могут работать в режимах
nOFB
и STREAM
.
Ниже вы найдёте список всех поддерживаемых режимов
шифрования вместе с константами, которые определены
для них. Более подробно читайте
Applied Cryptography by Schneier (ISBN 0-471-11709-9).
MCRYPT_MODE_ECB
(electronic
codebook
) - это режим блочного шифрования,
который в целом непригоден для большинства задач.
Использование этого режима не рекомендовано.
MCRYPT_MODE_CBC
(cipher block
chaining
) - это режим блочного шифрования,
который немногим лучше ECB
.
MCRYPT_MODE_CFB
(cipher
feedback, в 8-битном режиме
) - это режим
потокового шифрования. Рекомендуется использовать
режим NCFB
, а не CFB
.
MCRYPT_MODE_OFB
(output feedback, в 8-битном режиме
) - это
режим потокового шифрования сравнимый с
CFB
, но может использоваться в
приложениях, нетерпимых к распространению ошибок.
Рекомендуется использовать режим
NOFB
вместо OFB
.
MCRYPT_MODE_NOFB
(output feedback,
в N-битном режиме
) - сравним с режимом
OFB
, но оперирует полным размером
блока алгоритма.
MCRYPT_MODE_STREAM
- это
дополнительный режим для подключения некоторых
потоковых алгоритмов, таких как
"WAKE"
или "RC4"
.
Mcrypt поддерживает некоторые другие режимы работы для которых нет предопределённых констант. Их можно задавать с помощью строки вместо константы.
"ctr"
(counter mode
) - режим потокового шифрования.
"ncfb"
(cipher feedback,
в N-битном режиме
) - сравним с режимом
CFB
, но оперирует полным размером
блока алгоритма.
Некоторые другие режимы и константы генераторов случайных чисел: