一组PHP可逆加密解密算法

来源:互联网 发布:php $argv 编辑:程序博客网 时间:2024/05/19 16:04

解密:

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;}
加密:
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);}


原创粉丝点击