Кто-нибудь знает способ подбора значений силы при определенном смещении в файле? Это 4 последовательных байта, которые должны быть грубо форсированы. Я знаю правильный SHA-1 поврежденного файла. Итак, я хотел бы сравнить полный файл SHA-1, каждый раз, когда он меняет значение байта.
Я знаю точные 4 байта, которые были изменены, потому что файл был предоставлен мне экспертом по восстановлению данных, как задача восстановления. Для тех, кто интересуется знанием, файл rar имеет 4 байта, которые были намеренно изменены. Мне сказали смещения измененных 4 байтов и оригинального SHA-1. Человек сказал, что НЕВОЗМОЖНО восстановить точный файл в архиве после того, как 4 байта были изменены. Даже если бы было всего несколько байтов, и вы точно знали, где была обнаружена коррупция. Так как у него нет записи восстановления. Я пытаюсь увидеть, есть ли способ, чтобы эти 4 байта были правильно заполнены, чтобы файл распаковывался без ошибок. Размер файла составляет около 5 МБ.
Пример:
Я загрузил фотографии, чтобы они более четко определяли, что именно я хочу сделать. Я считаю, что кто-то может опубликовать их здесь для меня с большим количеством представителей.
Пример смещения, на котором я акцентирую внимание: 0x78
где на первом рисунке показано значение CA
Я хочу, чтобы скрипт принял значение на 1, чтобы оно стало CB
как показано на втором рисунке. Я хочу, чтобы он продолжал увеличивать значение на 1
а затем сравнивать весь файл SHA-1 каждый раз. Вносить изменения только в эти 4 байта с указанным смещением.
Он попробует CAC5C58A
и сравнит SHA-1. Если не совпадает, то он будет пытаться CBC5C58A
Затем, как только первое значение достигнет FF
он перейдет к 00C6C58A
и так далее. По сути, я бы хотел, чтобы он мог переходить от 00000000-FFFFFFFF
но также имел возможность выбрать, где вы хотите, чтобы он начинался и заканчивался. Я знаю, что это может занять некоторое время, но я все еще хотел бы попробовать это. Имейте в виду, я знаю точное смещение байтов, которые повреждены. Мне просто нужны правильные значения.
Если вы ищете в Google: "Как исправить поврежденный файл с помощью грубой силы", то есть человек, который написал программу для Linux. Тем не менее, он работает только против файлов, включенных в программу. Я ищу способ использовать тот же процесс с моим файлом.