Procedural File: AES.php
Source Location: /lib/3rdParty/phpseclib/Crypt/AES.php
Classes:
Crypt_AES
Pure-PHP implementation of AES.
Page Details:
Pure-PHP implementation of AES.
Uses mcrypt, if available, and an internal implementation, otherwise. PHP versions 4 and 5 If Crypt_AES::setKeyLength() isn't called, it'll be calculated from Crypt_AES::setKey(). ie. if the key is 128-bits, the key length will be 128-bits. If it's 136-bits it'll be null-padded to 160-bits and 160 bits will be the key length until setKey() is called, again, at which point, it'll be recalculated. Since Crypt_AES extends Crypt_Rijndael, some functions are available to be called that, in the context of AES, don't make a whole lot of sense. setBlockLength(), for instance. Calling that function, however possible, won't do anything (AES has a fixed block length whereas Rijndael has a variable one). Here's a short example of how to use this library: <?php
include('Crypt/AES.php');
$aes->setKey('abcdefghijklmnop');
$size = 10 * 1024;
$plaintext = '';
for ($i = 0; $i < $size; $i++) {
$plaintext.= 'a';
}
echo $aes->decrypt($aes->encrypt($plaintext));
?>
LICENSE: This library is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation; either version 2.1 of the License, or (at your option) any later version. This library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details. You should have received a copy of the GNU Lesser General Public License along with this library; if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
Tags:
Includes:
CRYPT_AES_MODE_CBC [line 92]
CRYPT_AES_MODE_CTR [line 80]
CRYPT_AES_MODE_ECB [line 86]
|