Не имеет значения, как я точно шифрую и декодирую файлы. Я работаю с файлом как char массив, все почти нормально, пока я не получу файл, размер которого не делит на 8 байт. Потому что я могу зашифровать и декодировать файл каждые 8 байтов из-за особых качеств алгоритма (размер блока должен быть 64 бит).Как правильно работать с файлом при кодировании и декодировании?
Итак, например, я столкнулся с .jpg
и попробовал просто добавить пробелы в конец файла, файл результатов не может быть открыт (из .cxt файлов ничего плохого не произойдет).
Есть ли какой-либо выход здесь?
Если вы хотите получить информацию об алгоритме http://en.wikipedia.org/wiki/GOST_(block_cipher).
UPD: Я не могу сохранить, сколько байтов было добавлено, поскольку исходный файл можно удалить или переместить. И, что мы должны делать, мы знаем только ключ и зашифрованный файл.
Добавьте отступы до тех пор, пока файл не будет иметь нужный размер и не запомните, сколько вы заполнили. – this
Что вы подразумеваете под «начальным может быть удалено или перемещено» – Michael