Вопрос

Мне интересно, получу ли я когда-нибудь другой результат при создании контрольной суммы для файла .exe до, а затем во время или после запуска этого файла. Меня больше интересует обычная практика (например, создание SHA-хеша популярного приложения, такого как firefox.exe), чем граничные случаи, но оба интересны. Спасибо.

Это было полезно?

Решение

Хеш файла должен быть постоянным до тех пор, пока файл идентичен (то есть содержит только одни и те же байты в том же порядке). Очень редко можно найти приложения, которые переписывают свое представление на диске во время выполнения, поэтому хэш должен быть постоянным. Существуют самоизменяющиеся программы, но они, как правило, работают с загруженной в память копией своего кода, а не с диска.

Редактировать: мы должны рассмотреть "самообновление" приложения, но они, как правило, запускают небольшую вспомогательную программу для загрузки и обновления основного приложения. Трудно (особенно в Windows) обновить исполнение во время его работы. Системы UNIX, как правило, работают с системами копирования при записи, поэтому возможно, что обновление программного обеспечения изменит ваш исполняемый файл под вашими ногами, но опять же, это «угловой случай».

Другие советы

Хеш будет меняться только при изменении exe. Это произойдет только в том случае, если приложение модифицирует себя, что не произойдет в Windows без перезапуска приложения. Firefox может обновиться сам (включая перезапуск), но, за исключением таких случаев, хэш останется прежним.

Хеш изменится, если файл изменится.

EXE-файлы редко меняются сами по себе. firefox.exe изменится, если пользователь обновится до новой версии.

Вы можете проверить " дату изменения " атрибут файла EXE (например, firefox.exe ) после запуска, чтобы увидеть, изменился ли он, но вы, вероятно, обнаружите, что он не изменился.

Если вы имеете в виду изменение времени последнего доступа, не беспокойтесь, оно хранится на уровне файловой системы, а не внутри файла, поэтому хэш останется прежним.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top