Хеш файла
В целях безопасности можно проверять хеш файла, чтобы убедиться, что пользователь получит именно тот файл, который он запрашивает.
Получить хеш файла можно через функцию md5_file()
или sha1_file()
.
md5_file('archive.zip'); // 3ea082a567f08b05754065d4cb9aa4a7 sha1_file('archive.zip'); // 63114cdb309a3d4c680fa86bbf6ad1719f1630a0
Теперь можно проверять корректность файла через код ниже:
$file_hash = '3ea082a567f08b05754065d4cb9aa4a7'; if ($file_hash == md5_file('archive.zip')) { // Файл корректен }
Если поменять название файла, то хеш это не затронет. Но если заменить хотя бы один символ в исходном коде, то хеш файла станет другим.
Если указанного файла не будет, то функция md5_file()
вернёт false
, а также выведет предупреждение «Warning: failed to open stream: No such file or directory».
Поддержать автора