Я пытался открыть zip-файл, защищенный паролем, с помощью PHP, но у меня были некоторые проблемы … идея была примерно такой …
Клиент отправляет пароль -> PHP проверяет правильность пароля, если он
это возвращает сообщение «правильный пароль».
Итак, я сделал ZIP-файл под названием x.zip установить его пароль 1337, и попытался открыть его с помощью php, используя правильный пароль, он вернул сообщение «правильный пароль», yay !, затем я попытался открыть его с другим (неправильным) паролем, он все равно вернул сообщение «правильный пароль»: | .. вот код, который я использовал ..
<?php
$zip = new ZipArchive();
$zip_status = $zip->open('test.zip');
$pws = [1337, 1332, 1322]; # 1337 is the correct pass!
foreach ($pws as $pw) {
if ($zip->setPassword($pw) && $zip->extractTo(__DIR__)) {
echo "$pw is the correct password!\n";
/* Output:
1337 is the correct password
1332 is the correct password
*/
}
}
$zip->close();
?>
Итак, я открыл .zip вручную, используя неправильный пароль, который в соответствии с php также является «правильным паролем», и это дало мне ошибку CRC (почему-то это отличается от ошибки неправильного пароля) .. Как я могу справиться с этим ?
Задача ещё не решена.
Других решений пока нет …