Файл, содержащий собственную контрольную сумму - PullRequest
46 голосов
/ 13 июля 2009

Можно ли создать файл, который будет содержать собственную контрольную сумму (MD5, SHA1 и т. Д.)? Под расстроенными джокерами я подразумеваю контрольную сумму в простой форме, а не функцию ее вычисления.

Ответы [ 12 ]

0 голосов
/ 13 июля 2009

Конечно, вы можете, но в этом случае дайджест всего файла SHA не будет включенным вами SHA, потому что это криптографическая хеш-функция, поэтому изменение одного бита в файле приводит к изменению всего хэша. Вам нужна контрольная сумма , рассчитанная с использованием содержимого файла таким образом, чтобы соответствовать набору критериев.

0 голосов
/ 13 июля 2009

Конечно.

Самый простой способ - запустить файл с помощью алгоритма MD5 и внедрить эти данные в файл. Вы можете разделить контрольную сумму и поместить ее в известные точки файла (в зависимости от размера файла, например, 30%, 50%, 75%), если вы хотите попытаться скрыть ее.

Точно так же вы можете зашифровать файл или зашифровать часть файла (вместе с контрольной суммой MD5) и вставить ее в файл. Редактировать Я забыл сказать, что вам нужно будет удалить данные контрольной суммы перед их использованием.

Конечно, если ваш файл должен быть легко читаемым другой программой, например, В Word все становится немного сложнее, так как вы не хотите «испортить» файл, чтобы он больше не читался.

...