您好,登录后才能下订单哦!
怎么在php中利用异域实现一个加密解密功能?针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。
若a=b ^ c;则b=a ^ c (^是异御的意思),php在处理异或的字符时先把字符转化为二进制的ascii值,对这些值进行异或,获取结果后在将ascii值转化为字符,原理说晚了直接贴实现的代码:
复制代码 代码如下:
echo '<meta charset="utf-8">';
$str='世界,你好';
function jiami($str,$key){
$key=md5($key);
$k=md5(rand(0,100));//相当于动态密钥
$k=substr($k,0,3);
$tmp="";
for($i=0;$i<strlen($str);$i++){
$tmp.=substr($str,$i,1) ^ substr($key,$i,1);
}
return base64_encode($k.$tmp);
}
function jiemi($str,$key){
$len=strlen($str);
$key=md5($key);
$str=base64_decode($str);
$str=substr($str,3,$len-3);
$tmp="";
for($i=0;$i<strlen($str);$i++){
$tmp.=substr($str,$i,1) ^ substr($key,$i,1);
}
return $tmp;
}
$key='cc';
$jh=jiami($str, $key);
echo '加密前:'.$str.'<br>';
echo '加密后:'.$jh.'<br>';
echo '解密后:'.jiemi($jh, $key).'<br>';
关于怎么在php中利用异域实现一个加密解密功能问题的解答就分享到这里了,希望以上内容可以对大家有一定的帮助,如果你还有很多疑惑没有解开,可以关注亿速云行业资讯频道了解更多相关知识。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。