加入收藏 | 设为首页 | 会员中心 | 我要投稿 济源站长网 (https://www.0391zz.cn/)- 数据工具、数据仓库、行业智能、CDN、运营!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

一组PHP加密解密函数分享

发布时间:2022-07-30 09:33:02 所属栏目:PHP教程 来源:互联网
导读:这篇文章主要介绍了一组PHP加密解密函数分享,需要的朋友可以参考下。 ?php /** *功能:对字符串进行加密处理 *参数一:需要加密的内容 *参数二:密钥 */ function passport_encrypt($str,$key){ //加密函数 srand((double)microtime() * 1000000); $encrypt_
  这篇文章主要介绍了一组PHP加密解密函数分享,需要的朋友可以参考下。
 
  <?php
  /**
  *功能:对字符串进行加密处理
  *参数一:需要加密的内容
  *参数二:密钥
  */
  function passport_encrypt($str,$key){ //加密函数
  srand((double)microtime() * 1000000);
  $encrypt_key=md5(rand(0, 32000));
  $ctr=0;
  $tmp='';
  for($i=0;$i<strlen($str);$i++){
  $ctr=$ctr==strlen($encrypt_key)?0:$ctr;
  $tmp.=$encrypt_key[$ctr].($str[$i] ^ $encrypt_key[$ctr++]);
  }
  return base64_encode(passport_key($tmp,$key));
  }
  /**
  *功能:对字符串进行解密处理
  *参数一:需要解密的密文
  *参数二:密钥
  */
  function passport_decrypt($str,$key){ //解密函数
  $str=passport_key(base64_decode($str),$key);
  $tmp='';
  for($i=0;$i<strlen($str);$i++){
  $md5=$str[$i];
  $tmp.=$str[++$i] ^ $md5;
  }
  return $tmp;
  }
   
  /**
  *辅助函数
  */
  function passport_key($str,$encrypt_key){
  $encrypt_key=md5($encrypt_key);
  $ctr=0;
  $tmp='';
  for($i=0;$i<strlen($str);$i++){
  $ctr=$ctr==strlen($encrypt_key)?0:$ctr;
  $tmp.=$str[$i] ^ $encrypt_key[$ctr++];
  }
  return $tmp;
  }
  $str='作者:WWW.JB51.NET;
  $key='jb51net';
  $encrypt=passport_encrypt($str,$key);
  $decrypt=passport_decrypt($encrypt,$key);
   
  echo '原文:',$str."<br><hr>";
  echo '密文:',$encrypt."<br><hr>";
  echo '译文:',$decrypt."<br><hr>";
  ?> 

(编辑:济源站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    热点阅读