Вы используете симметричное шифрование, где хранение размеров блоков, блоков и ключей будет безопасным, поскольку вы не делаете (не должны) предоставлять ключи, как вы заявили.
Но все такие параметры в целом полезны для злоумышленников. Если файл не может быть легко связан с шифром и используемыми параметрами (или программным обеспечением соответственно), у злоумышленника будет значительно больше работы, и именно для этого в основном и используется шифрование. Шифр безопасен, хотя (и потому что) каждый может видеть, как он работает. Кроме того, попытка скрыть некоторую информацию также может повысить безопасность.
AES имеет фиксированный размер блока 128 битов, который сам по себе не является критической информацией, уже зная о самом AES. Так что этот файл не нужен внутри заголовка файла.
Размер ключа задается самим ключом, поэтому его также можно не указывать.
Блочный режим является оставшимся параметром. Просто никогда не используйте ЕЦБ. Постоянно используйте один блочный режим, такой как OCB, и вам не нужно сохранять его в файле.
Предопределение всех параметров с обеих сторон - решение, если вы не собираетесь изменять их для каждого файла.
Проверка ошибок может быть выполнена с использованием контрольных сумм, которые также являются важной информацией, поэтому вы можете зашифровать их вместе с данными или предоставить их вместе с ключом.
Возможно, могут помочь следующие подходы, если вам все равно придется передавать параметры:
Передайте параметры в файле ключей, если вы сами хотите определить формат, и ключи были распределены для каждого файла.
Вы также можете определить различные настройки, сопоставив их с некоторыми случайно определенными перечислителями, которые не предоставляют ценную информацию, не зная программного обеспечения.