Подтвердить что ты не робот

Будут ли случайные данные, добавленные к JPG, сделать его непригодным для использования?

Итак, чтобы упростить свою жизнь, я хочу добавить от 1 до 7 дополнительных символов в конце некоторых jpg-изображений, которые обрабатывает моя программа *. Это фиктивные дополнения (наполнители и т.д. - возможно, все 0x00), чтобы размер файла был кратным 8 байтам для блочного шифрования.

Попробовав это с помощью нескольких программ, кажется, что они прекрасны с дополнительными символами, которые появляются после FF D9, который указывает конец image - так кажется, что формат файла достаточно четко определен, что "коррупция", которую я добавляю в конце, не имеет значения.

Я могу всегда отправлять файлы позже, если это необходимо, но я предпочитаю делать самое простое, что позволяет им оставаться (я дешифрую другие типы файлов, и они не будут возражать, поэтому, имея специальный случай раздражает).

Я считаю, что со всеми разговорами Steganography hullaballo несколько лет назад у кого-то есть вход...

(обработка шифрования на 8 байтовых блоков, я не хочу сохранять предварительно зашифрованный размер файла, поэтому добавьте 0x00 для ввода данных и оставьте их там после декодирования)

4b9b3361

Ответ 1

Нет, вы можете добавить бит в конец файла jpg, не делая его непригодным для использования. Заголовок файла jpg рассказывает, как его читать, поэтому программа, считывающая его, остановится в конце данных jpg.

Фактически, у людей есть скрытые файлы zip внутри jpg файлов, добавляя данные zip в конец данных jpg. Из-за того, как эти форматы структурированы, результирующий файл действителен в любом формате.

Ответ 2

Вы можете... но результаты могут быть непредсказуемыми.

Несмотря на то, что в формате достаточно информации, чтобы сообщить клиенту игнорировать дополнительные данные, скорее всего, это не тот случай, когда программист тестировал.

Параноидальная программа может посмотреть на размер, заметить несоответствие и решить, что он не будет обрабатывать ваш файл, потому что он явно не понимает его полностью. Это особенно вероятно при чтении данных из Интернета, когда случайные байты в файле могут считаться угрозой безопасности.

Ответ 3

Вы можете вставлять свои данные в тег XMP в формате JPEG (или в случае с EXIF ​​или IPTC). XMP - это XML, поэтому у вас есть достаточная гибкость для создания собственных вещей.

Возможно, это не самая простая вещь, но размещение ваших данных здесь будет поддерживать целостность JPEG и не требует "последующей обработки".

Данные будут отображаться в других программах обработки изображений, таких как PhotoShop, которые могут быть не идеальными.

Ответ 4

Как утверждали другие, вы не можете контролировать, как программы обрабатывают файлы изображений, и поэтому некоторые программы могут найти, что изображения, действительные для других, не могут быть.

Однако здесь есть большая проблема. Судя по вашему вопросу, я понимаю, что вы практикуете "безопасность через безвестность". Это широко считается очень плохой практикой. Используйте Google, чтобы найти множество статей о теме.