源码网商城,靠谱的源码在线交易网站 我的订单 购物车 帮助

源码网商城

php加密算法之实现可逆加密算法和解密分享

  • 时间:2020-10-28 07:50 编辑: 来源: 阅读:
  • 扫一扫,手机访问
摘要:php加密算法之实现可逆加密算法和解密分享
加密算法如下:
[u]复制代码[/u] 代码如下:
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); }
解密算法如下:
[u]复制代码[/u] 代码如下:
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)));         }     }     return $str; }
上述加密解密的过程均需要用到一个加密密钥(即参数$key)。
[u]复制代码[/u] 代码如下:
$data = 'PHP加密解密算法';  // 被加密信息 $key = '123';     // 密钥 $encrypt = encrypt($data, $key); $decrypt = decrypt($encrypt, $key); echo $encrypt, "\n", $decrypt;
上述将输出类似如下结果:
[u]复制代码[/u] 代码如下:
gniCSOzZG+HnS9zcFea7SefNGhXF PHP加密解密算法
从上述结果可以看出,这是一组可逆的加密解密算法,可以用于部分需要还原的数据加密。
  • 全部评论(0)
联系客服
客服电话:
400-000-3129
微信版

扫一扫进微信版
返回顶部