This article to share this PHP encryption class is a can support the Chinese and English can be encrypted to decrypt the PHP implementation class file, the need for students can refer to, but it is best to set the document encoding Utf-8 OH.
Save the following code as a MD5Crypt.class.php file
The code is as follows |
Copy Code |
Class Md5crypt { /** * Enter description here ... * @param unknown_type $str * @return String */ Public final static function Mdsha ($STR) { $code = substr (MD5 ($STR), 10); $code. = substr (SHA1 ($STR), 0, 28); $code. = substr (MD5 ($STR), 0, 22); $code. = substr (SHA1 ($STR), 16). MD5 ($STR); Return Self::chktoken ()? $code: null; } /** * Enter description here ... * @param unknown_type $param */ Private final static function Chktoken () { return true; } /** * Enter description here ... * @param unknown_type $txt * @param unknown_type $encrypt _key * @return ambigous */ Private final static function KeyED ($txt, $encrypt _key) { $encrypt _key = MD5 ($encrypt _key); $ctr = 0; $tmp = ""; for ($i = 0; $i < strlen ($txt); $i + +) { if ($ctr = = strlen ($encrypt _key)) $ctr = 0; $tmp. = substr ($txt, $i, 1) ^ substr ($encrypt _key, $ctr, 1); $ctr + +; } return $tmp; } /** * Enter description here ... * @param unknown_type $txt * @param unknown_type $key * @return String */ Public final static function Encrypt ($txt, $key) { Srand (Double) microtime () * 1000000); $encrypt _key = MD5 (rand (0, 32000)); $ctr = 0; $tmp = ""; for ($i = 0; $i < strlen ($txt); $i + +) { if ($ctr = = strlen ($encrypt _key)) $ctr = 0; $tmp. = substr ($encrypt _key, $ctr, 1). (Substr ($txt, $i, 1) ^ substr ($encrypt _key, $ctr, 1)); $ctr + +; } $_code = MD5 ($encrypt _key). Base64_encode (self::keyed ($tmp, $key)). MD5 ($encrypt _key. $key); Return Self::chktoken ()? $_code:null; } /** * Enter description here ... * @param unknown_type $txt * @param unknown_type $key * @return ambigous */ Public final static function Decrypt ($txt, $key) { $txt = self::keyed (Base64_decode (substr ($txt, +,-)), $key); $tmp = ""; for ($i = 0; $i < strlen ($txt); $i + +) { $MD 5 = substr ($txt, $i, 1); $i + +; $tmp. = (substr ($txt, $i, 1) ^ $md 5); } Return Self::chktoken ()? $TMP: null; } /** * Enter description here ... * @var Unknown_type */ private static $_key = ' Lau '; } ?> |
Usage
The code is as follows |
Copy Code |
Define (' WORKSPACE ', '. '). Directory_separator); Header ("content-type:text/html; Charset=utf-8 "); Include_once ' core/library/md5crypt.class.php '; $a = Md5crypt::encrypt ("A", 100); echo "EnCode:". $a, " "; echo "DeCode:". Md5crypt::D ecrypt ($a, 100); ?> |
http://www.bkjia.com/PHPjc/629687.html www.bkjia.com true http://www.bkjia.com/PHPjc/629687.html techarticle This article shared the PHP encryption class is a can support Chinese and English can be encrypted with the password can be decrypted PHP implementation class file, the need for students can refer to, but it is best to make the document ...