Если вы столкнулись со случаем необоснованного бана, пожалуйста, обращайтесь по почте alex@harlamenkov.ru
Когда файл OpenDocument защищен паролем, файловая структура пакета остается прежней, но содержимое файлов XML в пакете шифруется с использованием следующего алгоритма:Содержимое файла сжимается с помощью алгоритма DEFLATE .Контрольная сумма части сжатого файла вычисляется (SHA-1 содержимого файла, или SHA-1 первых 1024 байтов файла, или SHA-256 первых 1024 байтов файла) и сохраняется таким образом пароль правильность можно проверить при расшифровке.Дайджест (хеш) введенного пользователем пароля в кодировке UTF-8 создается и передается компоненту пакета. ODF версий 1.0 и 1.1 требует здесь поддержки только дайджеста SHA-1, тогда как версия 1.2 рекомендует SHA-256.Этот дайджест используется для создания производного ключа путем растягивания ключа с помощью PBKDF2 с использованием HMAC-SHA-1 с солью произвольной длины (в ODF 1.2 - это 16 байтов в ODF 1.1 и ниже), сгенерированных генератором случайных чисел для произвольной количество итераций (1024 по умолчанию в ODF 1.2).Генератор случайных чисел используется для генерации случайного вектора инициализации для каждого файла.Вектор инициализации и производный ключ используются для шифрования содержимого сжатого файла. ODF 1.0 и 1.1 используют Blowfish в режиме обратной связи 8-битного шифра, в то время как ODF 1.2 считает его устаревшим алгоритмом и позволяет использовать вместо него Triple DES и AES (128, 196 или 256 бит), оба в режиме цепочки блоков шифрования.