首頁  >  文章  >  後端開發  >  PHP中加密解密字串函數原始碼

PHP中加密解密字串函數原始碼

WBOY
WBOY原創
2016-07-25 08:44:211014瀏覽
PHP中加密解密字符串函数源代码:
  1. /**
  2. *功能:对字符串进行加密处理
  3. *参数一:需要加密的内容
  4. *参数二:密钥
  5. */
  6. function passport_encrypt($str,$key){ //加密函数
  7. srand((double)microtime() * 1000000);
  8. $encrypt_key=md5(rand(0, 32000));
  9. $ctr=0;
  10. $tmp='';
  11. for($i=0;$i $ctr=$ctr==strlen($encrypt_key)?0:$ctr;
  12. $tmp.=$encrypt_key[$ctr].($str[$i] ^ $encrypt_key[$ctr ]);
  13. }
  14. return base64_encode(passport_key($tmp,$key));
  15. }
  16. /**
  17. *功能:对字符串进行解密处理
  18. *参数一:需要解密的密文
  19. *参数二:密钥
  20. */
  21. function passport_decrypt($str,$key){ //解密函数
  22. $str=passport_key(base64_decode($str),$key);
  23. $tmp='';
  24. for($i=0;$i $md5=$str[$i];
  25. $tmp.=$str[ $i] ^ $md5;
  26. }
  27. return $tmp;
  28. }
  29. /**
  30. *辅助函数
  31. */
  32. function passport_key($str,$encrypt_key){
  33. $encrypt_key=md5($encrypt_key);
  34. $ctr=0;
  35. $tmp='';
  36. for($i=0;$i $ctr=$ctr==strlen($encrypt_key)?0:$ctr;
  37. $tmp.=$str[$i] ^ $encrypt_key[$ctr ];
  38. }
  39. return $tmp;
  40. }
  41. $str='作者:uphtm.com;
  42. $key='uphtm.com';
  43. $encrypt=passport_encrypt($str,$key);
  44. $decrypt=passport_decrypt($encrypt,$key);
  45. echo '原文:',$str."

    ";
  46. echo '密文:',$encrypt."

    ";
  47. echo '译文:',$decrypt."

    ";
  48. ?>
复制代码

加密解密, PHP


陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn