ГОСТ Р ИСО/МЭК 26300—2010
•Создание 20-байтового SHA1результирующего дайджестапароля,
введенного пользователем, и его передача компоненту пакета.
•Компонент пакета инициализирует генератор случайных чисел с текущим
временем.
•Генераторслучайныхчиселиспользуется,чтобыгенерировать
случайный 8-байтовый вектор инициализации и 16-байтовый шум для
каждого файла.
•Шумиспользуетсявместес 20-байтовымSHA1результирующим
дайджестом пароля для получения уникального для каждого файла 128-
битного ключа. Алгоритмом получения ключа является алгоритм PBKDF2,
использующий HMAC-SHA-1 (см. (RFC2898)) с количеством итераций,
равным 1024.
•Полученный ключ используется вместе с вектором инициализации для
шифрования файла, с использованием алгоритма Blowfish в режиме СРВ
(cipher-feedback).
Каждыйзашифрованный файлсжимаетсяпередшифрованием.Для
разрешенияпроверкисодержимогофайлапакетанеобходимо,чтобы
зашифрованные файлы были помечены как ’STORED’ а не ’DEFLATED’. Так как
элементы, помеченные как ’STORED’, должны иметь размер, равный сжатому
размеру, необходимо хранить их несжатый размер в декларации. Сжатый размер
сохраняется как в локальном заголовке файла, так и в записи центрального
каталога zip-файла.
17.4 Поток типа MIME
Если для документа, который использует пакеты, существует тип MIME, то в
пакете следует размещать поток, названный «mimetype». Этот поток следует
размещать первым потоком zip-файла пакета, он не должен быть сжатым и не
должен использовать дополнительную область в своем заголовке (см. (ZIP]).
Цельсостоитв том.чтобыпозволитьупакованнымфайламбыть
идентифицированными через механизм «магических чисел», похожий на Unix-
утилиту file/magic. Если zip-файл в начале содержит поток, который распакован, и
не имеет никаких дополнительных данных в заголовке, то имя потока и его
содержимое можно найти в фиксированных позициях. Более подробно:
83-5