Предопределенные константы

Перечисленные ниже константы определены данным расширением и могут быть доступны только в том случае, если 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_ENCRYPT (integer)
MCRYPT_DECRYPT (integer)
MCRYPT_DEV_RANDOM (integer)
MCRYPT_DEV_URANDOM (integer)
MCRYPT_RAND (integer)

add a note add a note

User Contributed Notes 2 notes

up
5
gordon at vixo dot com
4 years ago
These constants don't cover all the possible options.

There are two constants:
MCRYPT_MODE_OFB
MCRYPT_MODE_NOFB

These relate to using OFB mode in 8-bit feedback mode and using the same feedback length as the key

There is one constant
MCRYPT_MODE_CFB which uses 8-bit feedback mode

There ought to be a constant
MCRYPT_MODE_NCFB which uses the same feedback length as the key.

In fact you can just use the option 'ncfb' in mycrypt
up
-6
Andrey Andreev
3 years ago
You can just use strings instead of the constants ... they are useless and lacking for other modes that are fully supported. Here's a list:

cbc
ecb
ofb
nofb
cfb
ncfb
ctr
stream
To Top