PHP可逆加密算法

/********************************************
函数名称:encrypt
函数作用:加密解密字符串
使用方法:
加密 :encrypt('str','E','qingdou');
解密 :encrypt('被加密过的字符串','D','qingdou');
参数说明:
$string :需要加密解密的字符串
$operation:判断是加密还是解密:E:加密 D:解密
$key :加密的钥匙(密匙);
 *********************************************************************/

function lxfamnsec($string,$operation,$key='')
{
    //自行定义解密,加密代码,防止接口被人使用
    $operin='da';
    $operout='x';
    if ($operation!=$operout && $operation!=$operin){
        return('指令错误,请核实');
    }
    $key_length=strlen($key);
    if ($operation==$operout){
        $string=base64_decode($string);
    }

    //字符串长度
    $string_length=strlen($string);

    $result='';

    for($a=$j=$i=0;$i<$string_length;$i++)
    {
        //^异或运算符,二进制进行异或运算,可正可反str^key=result  result^key=str

        $result.=chr(ord($string[$i])^ord($key[$i%$key_length]));

    }
    if($operation== $operout)
    {
        return($result);

    }
    else
    {//base64转码
        return base64_encode($result);
    }
}
转载请注明出处:

转载自http://lxfamn.cn/blog

未经允许不得转载:lxfamn » PHP可逆加密算法

赞 (0) 打赏

置顶推荐

评论 0

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏