加入收藏 | 设为首页 | 会员中心 | 我要投稿 怀化站长网 (https://www.0745zz.cn/)- 语音技术、云资源管理、物联设备、云计算、决策智能!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

PHP带密钥的加密解密函数

发布时间:2022-07-28 09:47:38 所属栏目: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是密钥

(编辑:怀化站长网)

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

    热点阅读