EugeneRoshal
Advanced Member | Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору pp3 Цитата: Но ведь даже если при восстановлении указать пароль, то ничего не произойдет - хоть и заголовок теперь станет доступен, данные все равно отрежутся. | Да, сейчас Repair работает с сырыми зашифрованными данными и не пытается их расшифровать. Цитата: Вероятно всего, стоило хранить заголовок данных для восстановления всегда нешифрованным | Может быть, но это уже задано на уровне формата. Сейчас все заголовки после archive encryption header в таком архиве шифрованные. А тут пришлось бы усложнять обработку и вводить флаг, указывающий на шифрование заголовка. При том что пользы от этого - только возможность скопировать RR в восстановленный архив с шифрованием заголовков. Цитата: архив остается полноценным и его безопасность никак не меняется от их наличия или отсуствия | От одного флага безопасность, пожалуй, и не пострадала бы. Но если на флаги перед шифрованным заголовком выделить байт целиком, в котором использован один бит, а остальные заполнены нулями, это уже дало бы возможность с некоторой вероятностью угадывать начало шифрованного заголовка, не зная пароля. Что, в свою очередь, дает возможность угадывать упакованные размеры файлов. А именно утечки какой-либо информации о параметрах файлов мы шифрованием заголовков и старались избежать. Сейчас архив с шифрованием заголовков это смесь случайных и зашифрованных данных. Альтернативный вариант - применять в качестве такого флага нулевое значение вектора инициализации перед заголовком. Но тогда надо гарантировать, что такое значение не будет случайным образом использовано для шифрованных заголовков, а сейчас RAR5 таких гарантий не дает. Если речь не о тестах, а о восстановлении реального архива с важными битыми данными, я бы для надежности перепаковал восстановленное с новой RR. |