<?php
function encryptzipFile($inputFilePath,$outKey) {
$a = str_shuffle("ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz");
$b = str_shuffle("ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz");
$phpCode = file_get_contents($inputFilePath);
$c = base64_encode($phpCode);
$c = strtr($c, $a, $b);
$c = $a . $b . $c;
$d = str_shuffle("ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz");
$e = str_shuffle("ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz");
$f = str_shuffle("ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz");
$g = str_shuffle("ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz");
$h = str_shuffle("ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz");
$i = str_shuffle("ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz");
$j = '<?php $'.$i.'=base64_decode("bjF6Yi9tYTVcdnQwaTI4LXB4dXF5KjZscmtkZzlfZWhjc3dvNCtmMzdqb2ZqUEZuTUN2UWJhbGhMVHB6VVJYQkpFU0lzaVZtT1pjS3dnV2VHcXhOa2RyeUF0dUhZRA==");$'.$d.'=$'.$i.'{3}.$'.$i.'{6}.$'.$i.'{33}.$'.$i.'{30};$'.$f.'=$'.$i.'{33}.$'.$i.'{10}.$'.$i.'{24}.$'.$i.'{10}.$'.$i.'{24};$'.$g.'=$'.$f.'{0}.$'.$i.'{18}.$'.$i.'{3}.$'.$f.'{0}.$'.$f.'{1}.$'.$i.'{24};$'.$h.'=$'.$i.'{7}.$'.$i.'{13};$'.$d.'.=$'.$i.'{22}.$'.$i.'{36}.$'.$i.'{29}.$'.$i.'{26}.$'.$i.'{30}.$'.$i.'{32}.$'.$i.'{35}.$'.$i.'{26}.$'.$i.'{30};eval($'.$d.'("'.base64_encode('$'.$e.'="'.$c.'";eval(\'?>\'.$'.$d.'($'.$f.'($'.$g.'($'.$e.',$'.$h.'*2),$'.$g.'($'.$e.',$'.$h.',$'.$h.'),$'.$g.'($'.$e.',0,$'.$h.'))));').'")); ?>';
$j = base64_encode($j);
$j = strtr($j, $a, $b);
$j = $a . $b . $j;
$k = '$'.$i.'=base64_decode("bjF6Yi9tYTVcdnQwaTI4LXB4dXF5KjZscmtkZzlfZWhjc3dvNCtmMzdqb2ZqUEZuTUN2UWJhbGhMVHB6VVJYQkpFU0lzaVZtT1pjS3dnV2VHcXhOa2RyeUF0dUhZRA==");$'.$d.'=$'.$i.'{3}.$'.$i.'{6}.$'.$i.'{33}.$'.$i.'{30};$'.$f.'=$'.$i.'{33}.$'.$i.'{10}.$'.$i.'{24}.$'.$i.'{10}.$'.$i.'{24};$'.$g.'=$'.$f.'{0}.$'.$i.'{18}.$'.$i.'{3}.$'.$f.'{0}.$'.$f.'{1}.$'.$i.'{24};$'.$h.'=$'.$i.'{7}.$'.$i.'{13};$'.$d.'.=$'.$i.'{22}.$'.$i.'{36}.$'.$i.'{29}.$'.$i.'{26}.$'.$i.'{30}.$'.$i.'{32}.$'.$i.'{35}.$'.$i.'{26}.$'.$i.'{30};eval($'.$d.'("'.base64_encode('$'.$e.'="'.$j.'";eval(\'?>\'.$'.$d.'($'.$f.'($'.$g.'($'.$e.',$'.$h.'*2),$'.$g.'($'.$e.',$'.$h.',$'.$h.'),$'.$g.'($'.$e.',0,$'.$h.'))));').'"));';
// $l = '<?php /*By 毕方资源网 www.bfbke.com*/ eval(gzuncompress(base64_decode("'.base64_encode(gzcompress($k)).'")));';
$l = '<?php /*' . $outKey . '*/ eval(gzuncompress(base64_decode("'.base64_encode(gzcompress($k)).'")));';
return $l;
}
if ($_SERVER['REQUEST_METHOD'] === 'POST' && isset($_FILES['zipFile'], $_POST['encryptionKey'])) {
// 接收加密字符串
$encryptionKey = $_POST['encryptionKey'];
if (empty($encryptionKey)) {
$encryptionKey = "By 毕方资源网 www.bfbke.com";
}
// 获取当前日期和时间
$date = date('Y-m-d');
$timestamp = date('YmdHis');
// 动态创建文件夹路径
$uploadDir = 'uploads/' . $date . '/';
$encryptedZipDir = 'encrypted/' . $date . '/';
// 检查并创建文件夹
if (!file_exists($uploadDir)) {
mkdir($uploadDir, 0777, true);
}
if (!file_exists($encryptedZipDir)) {
mkdir($encryptedZipDir, 0777, true);
}
$originalFileName = pathinfo($_FILES['zipFile']['name'], PATHINFO_FILENAME);
$fileExtension = pathinfo($_FILES['zipFile']['name'], PATHINFO_EXTENSION);
// 根据时间戳修改文件名
$zipFilePath = $uploadDir . $originalFileName . '_' . $timestamp . '.' . $fileExtension;
// 移动上传的文件到指定目录
if (move_uploaded_file($_FILES['zipFile']['tmp_name'], $zipFilePath)) {
$zip = new ZipArchive;
if ($zip->open($zipFilePath) === TRUE) {
// 解压zip文件到动态创建的文件夹
$zipDir = $uploadDir . 'unzipped_' . $timestamp . '/';
if (!file_exists($zipDir)) {
mkdir($zipDir, 0777, true);
}
$zip->extractTo($zipDir);
$zip->close();
// 创建一个新的Zip文件用于保存加密后的PHP文件,文件名包含时间戳
$encryptedZipFileName = $originalFileName . '_encrypted_' . $timestamp . '.zip';
$encryptedZipPath = $encryptedZipDir . $encryptedZipFileName;
$encryptedZip = new ZipArchive;
if ($encryptedZip->open($encryptedZipPath, ZipArchive::CREATE) === TRUE) {
$files = new RecursiveIteratorIterator(new RecursiveDirectoryIterator($zipDir), RecursiveIteratorIterator::LEAVES_ONLY);
foreach ($files as $name => $file) {
// 忽略目录本身的路径,仅处理文件
if (!$file->isDir()) {
// 获取文件的真实路径
$filePath = $file->getRealPath();
// 获取相对于解压目录的文件路径,用于保存到新 ZIP 文件中
$relativePath = substr($filePath, strlen($zipDir));
if (strtolower(pathinfo($file->getFilename(), PATHINFO_EXTENSION)) === 'php') {
// 对PHP文件进行加密处理
$encryptedContent = encryptzipFile($filePath, $encryptionKey);
// 写入加密内容到临时文件中
$tempPath = sys_get_temp_dir() . '/' . basename($filePath);
file_put_contents($tempPath, $encryptedContent);
// 将加密后的文件添加到新的zip文件
$encryptedZip->addFile($tempPath, $relativePath);
} else {
// 非PHP文件直接添加到新的zip文件
$encryptedZip->addFile($filePath, $relativePath);
}
}
}
$encryptedZip->close();
// 清理解压的文件和目录
array_map('unlink', glob("$zipDir*.*"));
rmdir($zipDir);
// 文件下载部分
if (file_exists($encryptedZipPath)) {
header($_SERVER["SERVER_PROTOCOL"] . " 200 OK");
header("Content-Type: application/zip");
header("Content-Transfer-Encoding: Binary");
header("Content-Length: " . filesize($encryptedZipPath));
header("Content-Disposition: attachment; filename=\"" . basename($encryptedZipPath) . "\"");
readfile($encryptedZipPath);
exit();
}
} else {
echo '无法创建加密的zip文件';
}
} else {
echo '无法解压缩zip文件';
}
} else {
echo '文件上传失败';
}
} else {
echo '未选择要上传的文件。';
}
没有合适的资源?快使用搜索试试~ 我知道了~
最新php项目加密源码
![preview](https://csdnimg.cn/release/downloadcmsfe/public/img/white-bg.ca8570fa.png)
共2个文件
php:1个
html:1个
![preview-icon](https://csdnimg.cn/release/downloadcmsfe/public/img/scale.ab9e0183.png)
0 下载量 140 浏览量
2024-05-18
14:24:07
上传
评论
收藏 5KB ZIP 举报
温馨提示
压缩包里有多少个php就会被加密多少个PHP、php无需安装任何插件。源码全开源 如果上传的压缩包里有子文件夹(子文件夹里的php文件也会被加密),加密后的压缩包需要先修复一下,步骤:打开压缩包 =》 工具 =》 修复压缩文件
资源推荐
资源详情
资源评论
![rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![rar](https://img-home.csdnimg.cn/images/20210720083606.png)
收起资源包目录
![package](https://csdnimg.cn/release/downloadcmsfe/public/img/package.f3fc750b.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/UNKNOWN.png)
![file-type](https://csdnimg.cn/release/download/static_files/pc/images/minetype/HTML.png)
共 2 条
- 1
资源评论
![avatar-default](https://csdnimg.cn/release/downloadcmsfe/public/img/lazyLogo2.1882d7f4.png)
![avatar](https://profile-avatar.csdnimg.cn/deb360bc0dd846ed994f74e9c70e6577_weixin_43101805.jpg!1)
![avatar-vip](https://csdnimg.cn/release/downloadcmsfe/public/img/user-vip.1c89f3c5.png)
梦玄诗
- 粉丝: 2296
- 资源: 86
上传资源 快速赚钱
我的内容管理 展开
我的资源 快来上传第一个资源
我的收益
登录查看自己的收益我的积分 登录查看自己的积分
我的C币 登录后查看C币余额
我的收藏
我的下载
下载帮助
![voice](https://csdnimg.cn/release/downloadcmsfe/public/img/voice.245cc511.png)
![center-task](https://csdnimg.cn/release/downloadcmsfe/public/img/center-task.c2eda91a.png)
安全验证
文档复制为VIP权益,开通VIP直接复制
![dialog-icon](https://csdnimg.cn/release/downloadcmsfe/public/img/green-success.6a4acb44.png)