|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
26.06.2014, 04:46 | #1 |
Пользователь
Регистрация: 07.05.2013
Сообщений: 51
|
вопрос философский
Вобщем наверное больше поболтать.
к примеру есть некий cab архив размером 539 545 604 байт в нем есть хвост 3076 байт из этих 3076 байт все ноли кроме последних 5 байт. И эти 5 байт меняются в разных архивах и это какая то 5байтовая контрольная сумма. Т.е если попробовать открыть архиватором 539 545 604 байт то архиватор ругается на неправильный конец архива, но открывает и показывает файлы. Если обрезать последние 3076 байт и попробовать снова открыть архиватором то все ок архив как цельный. Вопрос что это за хвост, точнее мне интересно что за 5 байт в конце и как они генерируются. Очень прошу идеи. |
26.06.2014, 04:48 | #2 |
Пользователь
Регистрация: 07.05.2013
Сообщений: 51
|
ой ой ой. 4 байта. пошел снова шерстить инет
|
26.06.2014, 07:26 | #3 | |
Старожил
Регистрация: 04.02.2009
Сообщений: 17,351
|
Цитата:
--ДОБАВЛЕНО-- Почитал описание, там действительно идет проверка контрольной суммы, но где именно она располагается не известно. Однако написано, что пустой файл в качестве контрольной суммы содержит нули. Так что косвенно свою гипотезу Вы можете проверить если создадите пустой cab-файл и прочтете подозрительное место.
Маньяк-самоучка
Utkin появился в результате деления на нуль. Осторожно! Альтернативная логика Последний раз редактировалось Utkin; 26.06.2014 в 07:32. |
|
26.06.2014, 07:32 | #4 |
Белик Виталий :)
Старожил
Регистрация: 23.07.2007
Сообщений: 57,097
|
Взял у себя один из таких файлов. В конце нет пустот, и открывается распаковщиком нормально.
I'm learning to live...
|
26.06.2014, 07:57 | #5 | |
Пользователь
Регистрация: 07.05.2013
Сообщений: 51
|
ну я ж поправился... 4 байта.. это походу crc32... ща попробую наваять что нить, чтобы чтобы отрезало по байту c конца от исходного файла и проверяло на совпадение с crc32.
https://yadi.sk/i/yymtc-kGUvR8V концовка архива Цитата:
Итог. исходный файл 539 545 604 байт мной полученный 539 542 528 байт А ну собственна никаких ни дат ничего еще, это именно crc32 или что то подобное, потому что меняя хотя бы 1 любой байт с исходного архива он не принимается далее процедурой проверки целостности... Последний раз редактировалось Stilet; 26.06.2014 в 11:19. |
|
26.06.2014, 09:50 | #6 |
Старожил
Регистрация: 13.07.2012
Сообщений: 6,330
|
|
26.06.2014, 11:08 | #7 | |
Пользователь
Регистрация: 07.05.2013
Сообщений: 51
|
Цитата:
Ps. пробовал такую логику: брал файл отрезал с конца 4 байта посчитал crc не совпало с $04 $7B $FF $22, отрезал 20 байт..., затем 36 .. 52 .... довел до 6996 отрезанных байт - безрезультатно. Поставлю счас $22 $FF $7B $04 в этом же ключе Да ваще файл не так как у мсдн Последний раз редактировалось iworm2009; 26.06.2014 в 11:40. |
|
26.06.2014, 18:38 | #8 |
Пользователь
Регистрация: 07.05.2013
Сообщений: 51
|
я могу исходный файл выложить, если кому то интересно...
|
26.06.2014, 19:46 | #9 |
Белик Виталий :)
Старожил
Регистрация: 23.07.2007
Сообщений: 57,097
|
Э-э-э 500 Мб выложить? Кто его качать-то будет такой файл? Ого-го... Вай-вай прям.
I'm learning to live...
|
26.06.2014, 20:57 | #10 |
Пользователь
Регистрация: 07.05.2013
Сообщений: 51
|
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Философский вопрос - как искусственно ограничить ресурсы системы? | _KUL | Общие вопросы C/C++ | 10 | 16.05.2012 19:02 |
Философский детерминизм и не только. Флудим здесь! | rpy3uH | Свободное общение | 23 | 09.11.2011 09:55 |
вопрос по сокетам и общение как в ICQ.Сложный вопрос... | Руслантус | Общие вопросы C/C++ | 2 | 12.08.2008 21:10 |
Философский вопрос)сисадминам | Elm0 | Свободное общение | 8 | 24.03.2008 11:20 |