Class
Mcrypt
Mcrypt implementation of crypto features for Cake\Utility\Security
This class is not intended to be used directly and should only be used in the context of Cake\Utility\Security.
Deprecated: 3.3.0 It is recommended to use {@see Cake\Utility\Crypto\OpenSsl} instead.
Method Summary
-
decrypt() public static
Decrypt a value using AES-256.
-
encrypt() public static
Encrypt a value using AES-256.
-
rijndael() public static
Encrypts/Decrypts a text using the given key using rijndael method.
Method Detail
decrypt() ¶ public static
decrypt(string $cipher, string $key): string
Decrypt a value using AES-256.
Parameters
-
string
$cipher The ciphertext to decrypt.
-
string
$key The 256 bit/32 byte key to use as a cipher key.
Returns
string
Throws
InvalidArgumentException
On invalid data or key.
encrypt() ¶ public static
encrypt(string $plain, string $key): string
Encrypt a value using AES-256.
Caveat You cannot properly encrypt/decrypt data with trailing null bytes. Any trailing null bytes will be removed on decryption due to how PHP pads messages with nulls prior to encryption.
Parameters
-
string
$plain The value to encrypt.
-
string
$key The 256 bit/32 byte key to use as a cipher key.
Returns
string
Throws
InvalidArgumentException
On invalid data or key.
rijndael() ¶ public static
rijndael(string $text, string $key, string $operation): string
Encrypts/Decrypts a text using the given key using rijndael method.
Parameters
-
string
$text Encrypted string to decrypt, normal string to encrypt
-
string
$key Key to use as the encryption key for encrypted data.
-
string
$operation Operation to perform, encrypt or decrypt
Returns
string
Throws
LogicException
When there are errors.