加入收藏 | 设为首页 | 会员中心 | 我要投稿 鞍山站长网 (https://www.0412zz.com/)- 应用安全、运维、云计算、5G、云通信!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

PHP带密钥的加密解密函数

发布时间:2022-06-17 09:09:08 所属栏目:PHP教程 来源:互联网
导读:在一些开发中,我们使用curl等进行通信,如果你的一些隐私数据不进行加密,就可能造成信息泄露,带来不必要的麻烦,我们提供一个带密钥的加密解密函数,只要你的密钥不泄露,就可能很好的保护你的传输. PHP带密钥的加密解密函数代码如下: function encrypt($data, $
  在一些开发中,我们使用curl等进行通信,如果你的一些隐私数据不进行加密,就可能造成信息泄露,带来不必要的麻烦,我们提供一个带密钥的加密解密函数,只要你的密钥不泄露,就可能很好的保护你的传输.
 
  PHP带密钥的加密解密函数代码如下:
 
  function encrypt($data, $key)  
  {  
      $key    =   md5($key);  
      $x      =   0;  
      $len    =   strlen($data);  
      $l      =   strlen($key);  
      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);  
  }
   
  function decrypt($data, $key)  
  {  
      $key = md5($key);  
      $x = 0;  
      $data = base64_decode($data);  
      $len = strlen($data);  
      $l = strlen($key);  
      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)));  
          }  
      } //开源代码phpfensi.com
      return $str;  
  }
  上面的两个函数,一个是加密函数,一个是解密函数,encrypt($data, $key) 为加密函数,其中$data是要加密的内容,$key是你的密钥,decrypt($data, $key) 是解密函数,其中$data是要解密的字符串,$key是密钥.

(编辑:鞍山站长网)

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

    推荐文章
      热点阅读