加入收藏 | 设为首页 | 会员中心 | 我要投稿 PHP编程网 - 黄冈站长网 (http://www.0713zz.com/)- 数据应用、建站、人体识别、智能机器人、语音技术!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

php自定义加密函数 解密的例子

发布时间:2022-01-23 02:47:37 所属栏目:PHP教程 来源:互联网
导读:加密就是将一些字符转换为另一个字符串的过程,简单的说就是把大门上锁,并且只有你有开启的钥匙,作为一个程序员都应该有属于自己的加密方式,目前最流行的加密算法就是MD5()加密方式,但是在网站已经有了破解的软件用起来也不是很安全,下面简单的介绍一下自
    加密就是将一些字符转换为另一个字符串的过程,简单的说就是把大门上锁,并且只有你有开启的钥匙,作为一个程序员都应该有属于自己的加密方式,目前最流行的加密算法就是MD5()加密方式,但是在网站已经有了破解的软件用起来也不是很安全,下面简单的介绍一下自定义的加密函数,代码如下:
 
  /*加密*/
  
  function addcoder($str)
  
      {
  
          $yuan = 'abA!c1dB#ef2@Cg$h%iD_3jkl^E:m}4n.o{&F*p)5q(G-r[sH]6tuIv7w+Jxy8z9K0';
  
          $jia = 'zAy%0Bx+1C$wDv^Eu2-t3(F{sr&G4q_pH5*on6I)m:l7.Jk]j8K}ih@gf9#ed!cb[a';
  
         if ( strlen($str) == 0) return false;
  
  for($i = 0;$i<strlen($str);$i++)
  
          {
  
              for($j = 0;$j<strlen($yuan);$j++)                          
  
  {
  
  if($str[$i]==$yuan[$j])
  
                      {
  
  $results.= $jia[$j];
  
  break;
  
  }
  
              }
  
          }
  
         return $results;
  
      }
  
  
  
  
  /*解密*/
  
  function removecoder($str)
  
  {
  
          $yuan = 'abA!c1dB#ef2@Cg$h%iD_3jkl^E:m}4n.o{&F*p)5q(G-r[sH]6tuIv7w+Jxy8z9K0';
  
          $jia = 'zAy%0Bx+1C$wDv^Eu2-t3(F{sr&G4q_pH5*on6I)m:l7.Jk]j8K}ih@gf9#ed!cb[a';
  
         If (strlen($str)==0) return false;
  
    for($i = 0;$i< strlen($str);$i++)
  
  {
  
   for($j = 0;$j<strlen($jia);$j++)
  
    {
  
    if($str[$i]==$jia[$j])  
  
  {
  
  $results .= $yuan[$j];
  
  break;
  
  }
  
    }
  
  }
         return $results;
  
      }
  
  $str = "www.Cuoxin.com";
  echo "加密前:".$str."<br >";
  $str1= addcoder($str);
  echo "加密后:".$str1."<br >";
  $str2= removecoder($str1);
  echo "解密后:".$str2."<br >";
  例子二,利用md5+base64_encode进行编辑处理,代码如下:
 
  <?php  
  //
  function passport_encrypt($txt, $key) {  
  srand((double)microtime() * 1000000);  
  $encrypt_key = md5(rand(0, 32000));  
  $ctr = 0;  
  $tmp = '';  
  for($i = 0;$i < strlen($txt); $i++) {  
  $ctr = $ctr == strlen($encrypt_key) ? 0 : $ctr;  
  $tmp .= $encrypt_key[$ctr].($txt[$i] ^ $encrypt_key[$ctr++]);  
  }  
  return base64_encode(passport_key($tmp, $key));  
  }
  function passport_decrypt($txt, $key) {  
  $txt = passport_key(base64_decode($txt), $key);  
  $tmp = '';  
  for($i = 0;$i < strlen($txt); $i++) {  
  $md5 = $txt[$i];  
  $tmp .= $txt[++$i] ^ $md5;  
  }  
  return $tmp;  
  }
  function passport_key($txt, $encrypt_key) {  
  $encrypt_key = md5($encrypt_key);  
  $ctr = 0;  
  $tmp = '';  
  for($i = 0; $i < strlen($txt); $i++) {  
  $ctr = $ctr == strlen($encrypt_key) ? 0 : $ctr;  
  $tmp .= $txt[$i] ^ $encrypt_key[$ctr++];  
  }  
  return $tmp;  
  }  
  ?> 

(编辑:PHP编程网 - 黄冈站长网)

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

    热点阅读