mh-ing / aes-encryption
An AES Encrypter for PHP
Installs: 10 855
Dependents: 0
Suggesters: 0
Security: 0
Stars: 0
Watchers: 1
Forks: 0
Open Issues: 0
pkg:composer/mh-ing/aes-encryption
Requires
- php: >=5.4
- ext-openssl: *
Requires (Dev)
- php: >=5.5
- mockery/mockery: 0.9.*
- phpunit/phpunit: ~4.6
- satooshi/php-coveralls: 0.6.*
Suggests
- ext-openssl: A more secure encryption library
This package is auto-updated.
Last update: 2025-10-28 21:55:58 UTC
README
A simple class to handle AES encryption of data
DISCLAIMER: While the encryption/decryption has been tested, it has not been vetted by a security expert. Use at your own risk.
Installation
Install using composer
composer require mh-ing/aes-encryption
Usage
Simply instantiate the encrypter class with a key and use the encrypt/decrypt methods
<?php $encrypter = new AesEncrypter($key); $encrypted = $encrypter->encrypt('My secure data'); $decrypted = $encrypter->decrypt($encrypted);
The encrypt method is able to handle encryption of any kind of data because it serializes the data first.
Encryption Methods
This library supports aes128 aes192 and aes256. It uses aes256 by default.
Use the AesEnum to use a different method.
new AesEncrypter($key, AesEnum::METHOD_128);
Encryption Strategy
Current supported PHP extension is openssl. This library requires openssl
if it is available.
Upon constructing the encrypter, you may force the usage of one or the other.
new AesEncrypter($key, AesEnum::METHOD_256, AesEncrypter::STRATEGY_OPENSSL);
Update
fix the security warning on php 7.4
Warning: Use of undefined constant MCRYPT_RIJNDAEL_128 - assumed 'MCRYPT_RIJNDAEL_128' (this will throw an Error in a future version of PHP)
Remove mcrypt because it's deprecated and use openssl