Вопрос про контрольные суммы...

stm4836248

Если у меня есть .sfv-список сумм всех партов rar-архива, то можно ли "виртуально" - не имея самих партов - получить контрольную сумму всех файлов, которые вываливаются из архива при его распаковке?

yroslavasako

получить
нельзя. Ты бы ещё предложил файлы сжать без потерь до килобайта.

stm4836248

Жалко. Надеюсь, когда-нить изобретут контрольную сумму с такой фичей, - было бы весьма полезно.

nikita270601

Надеюсь, когда-нибудь изобретут архиватор, сжимающий все файлы до килобайта, — было бы весьма полезно!

katrin2201

Post deleted by
//не, не вышло =)

Andbar

ксоришь их
кого на кого?

katrin2201

Жаль, получается только если снять ограничение на фиксированную длину хеша =)

yroslavasako

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

katrin2201

Ты его тоже не понял =)

stm4836248

Это было актуально, и даже использовалось в 2005 году - несколькогиговые .mdf-миниобразы игр, большая часть которых были нули сжимались любым архиватором до килобайтиков - сейчас уже такая фича никому не нужна.
П.С. Жаль, я тут никого не понял :crazy:

alfadred

П.С. Жаль, я тут никого не понял :crazy:
Тут все говорят, что это математически невозможно.

stm4836248

Пездетс.
Итак, процесс:
Архиватор перед тем, как арчивировать файлы, считает их суммы, потом всё идёт как обычно - он режет файлы и считает суммы партов. В итоговый ~.sfvx~ файл записываются суммы исходных файлов и суммы партов.
На выходе получаем то, о чём я просил в первом посте, но решив проблему с другого конца.
Где тут ~математическая невозможность~?

yroslavasako

суть в том, что это должен уметь делать архиватор и должна быть выставлена соответствующая опция. А в общем случае это неверно. Предложение проапргейдить архиватор я уже вносил как самое практически выполнимое.

katrin2201

Я в итоге так сформулировал задачу.
Есть хеш-функция от файла в обычном ее понимании (важно, что посл-ть произвольной длины переводит в посл-ть байт _фиксированной_ длины).
Даны результаты вычисления данной хеш-функции на каждом куске многотомного рар-архива.
Требуется: найти результат вычислений данной хеш-функции на каждом файле в многотомном архиве.
В такой постановке нужной функции не существует, ибо если в архиве, допустим, запаковано 50 файлов в два тома, то задача сводится к сжатию любого файла в килобайт.
То, что ты сейчас написал, опнятно что реализуемо, даже изобретать ничего не надо, ты сам все изобрел =)

Marusetta

И я, кстати, не уверен, что рар так не делает.
кстати делает, только crc32
Оставить комментарий
Имя или ник:
Комментарий: