php xor加密代码,如何通过php 使用异或(XOR)加密/解密文件

php 使用异或(XOR)加密/解密文件

原理:将文件每一个字节与key作位异或运算(XOR),解密则再执行一次异或运算。

472db260ed7c47e8ce011ba698e11a29.png

代码如下:<?php

$source = 'test.jpg';

$encrypt_file = 'test_enc.jpg';

$decrypt_file = 'test_dec.jpg';

$key = 'D89475D32EA8BBE933DBD299599EEA3E';

echo '

source:

';

echo ''.%24source.'';

echo '


';

file_encrypt($source, $encrypt_file, $key); // encrypt

echo '

encrypt file:

';

echo ''.%24encrypt_file.'';

echo '


';

file_encrypt($encrypt_file, $decrypt_file, $key); // decrypt

echo '

decrypt file:

';

echo ''.%24decrypt_file.'';

/** 文件加密,使用key与原文异或生成密文,解密则再执行一次异或即可

* @param String $source 要加密或解密的文件

* @param String $dest 加密或解密后的文件

* @param String $key 密钥

*/

function file_encrypt($source, $dest, $key){

if(file_exists($source)){

$content = ''; // 处理后的字符串

$keylen = strlen($key); // 密钥长度

$index = 0;

$fp = fopen($source, 'rb');

while(!feof($fp)){

$tmp = fread($fp, 1);

$content .= $tmp ^ substr($key,$index%$keylen,1);

$index++;

}

fclose($fp);

return file_put_contents($dest, $content, true);

}else{

return false;

}

}

?>

本篇文章介绍了如何通过php 使用异或(XOR)加密/解密文件 ,更多相关内容请关注php中文网。

相关推荐:

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值