Maison > développement back-end > tutoriel php > PHP中加密解密字符串函数源代码

PHP中加密解密字符串函数源代码

WBOY
Libérer: 2016-07-25 08:44:21
original
1029 Les gens l'ont consulté
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


Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal