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
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: 2024-10-28 19:29:25 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