php使用异或实现的加密解密实例_php教程-查字典教程网
php使用异或实现的加密解密实例
php使用异或实现的加密解密实例
发布时间:2016-12-29 来源:查字典编辑
摘要:若a=b^c;则b=a^c(^是异或的意思),php在处理异或的字符时先把字符转化为二进制的ascii值,对这些值进行异或,获取结果后在将a...

若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教程学习
    热门php教程学习
    编程开发子分类