下面是编程之家 jb51.cc 通过网络收集整理的代码片段。
编程之家小编现在分享给大家,也给大家做个参考。
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,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,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,$ivSize); $data = substr($data,$ivSize); $decryptData = mcrypt_decrypt(MCRYPT_RIJNDAEL_256,$iv); return $decryptData; }}
以上是编程之家(jb51.cc)为你收集整理的全部代码内容,希望文章能够帮你解决所遇到的程序开发问题。
如果觉得编程之家网站内容还不错,欢迎将编程之家网站推荐给程序员好友。