AES-256 加密 PHP实现
生活随笔
收集整理的這篇文章主要介紹了
AES-256 加密 PHP实现
小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
為什么80%的碼農(nóng)都做不了架構(gòu)師?>>> ??
http://blog.ppsql.net/post-1870.html
class?aes?{static?public?$mode?=?MCRYPT_MODE_NOFB;static?public?function?generateKey($length=32)?{if?(!in_array($length,array(16,24,32)))return?False;$str?=?'';for?($i=0;$i<$length;$i++)?{$str?.=?chr(rand(33,126));}return?$str;}static?public?function?encrypt($data,?$key)?{if?(strlen($key)?>?32?||?!$key)return?trigger_error('key?too?large?or?key?is?empty.',?E_USER_WARNING)?&&?False;$ivSize?=?mcrypt_get_iv_size(MCRYPT_RIJNDAEL_256,?self::$mode);$iv?=?mcrypt_create_iv($ivSize,?(substr(PHP_OS,0,1)?==?'W'???MCRYPT_RAND?:?MCRYPT_DEV_URANDOM?));$encryptedData?=?mcrypt_encrypt(MCRYPT_RIJNDAEL_256,?$key,?$data,?self::$mode,?$iv);$encryptedData?=?$iv?.?$encryptedData;return?base64_encode($encryptedData);}static?public?function?decrypt($data,?$key)?{if?(strlen($key)?>?32?||?!$key)return?trigger_error('key?too?large?or?key?is?empty.',?E_USER_WARNING)?&&?False;$data?=?base64_decode($data);if?(!$data)return?False;$ivSize?=?mcrypt_get_iv_size(MCRYPT_RIJNDAEL_256,?self::$mode);$iv?=?substr($data,?0,?$ivSize);$data?=?substr($data,?$ivSize);$decryptData?=?mcrypt_decrypt(MCRYPT_RIJNDAEL_256,?$key,?$data,?self::$mode,?$iv);return?$decryptData;}}轉(zhuǎn)載于:https://my.oschina.net/cceo5/blog/413720
總結(jié)
以上是生活随笔為你收集整理的AES-256 加密 PHP实现的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: android应用APP中的页面响应时间
- 下一篇: 预定义异常 - PHP手册笔记