PHP 加密解密函数

分类:PHP函数库 时间:2021-04-20 浏览:207
0
//加密
if (!function_exists('zf_encrypt')) {
  function zf_encrypt($data, $key='zf'){
      $key    =    md5($key);
      $x        =    0;
      $len    =    strlen($data);
      $l        =    strlen($key);
      $char = '';
      $str = '';
      for ($i = 0; $i < $len; $i++)
      {
          if ($x == $l) 
          {
              $x = 0;
          }
          $char .= $key{$x};
          $x++;
      }
      for ($i = 0; $i < $len; $i++)
      {
          $str .= chr(ord($data{$i}) + (ord($char{$i})) % 256);
      }
      return base64_encode($str);
  }
}
//解密
if (!function_exists('zf_decrypt')) {
  function zf_decrypt($data, $key='zf'){
      $key = md5($key);
      $x = 0;
      $data = base64_decode($data);
      $len = strlen($data);
      $l = strlen($key);
      $char = '';
      $str = '';
      for ($i = 0; $i < $len; $i++)
      {
          if ($x == $l) 
          {
              $x = 0;
          }
          $char .= substr($key, $x, 1);
          $x++;
      }
      for ($i = 0; $i < $len; $i++)
      {
          if (ord(substr($data, $i, 1)) < ord(substr($char, $i, 1)))
          {
              $str .= chr((ord(substr($data, $i, 1)) + 256) - ord(substr($char, $i, 1)));
          }
          else
          {
              $str .= chr(ord(substr($data, $i, 1)) - ord(substr($char, $i, 1)));
          }
      }
      return $str;
  }
}


本站文章如未注明出处则为原创,转载请注明出处,如有侵权请邮件联系站长

用户评论

评论前必须