Утилита «Хакер»: компактное встраивание файла в файловый контейнер JPEG

С появлением платформ социальных сетей и широко распространенных бесплатных хостингов изображений (например, недавнее «неограниченное хранилище фотографий» Amazon для членов Prime ) я хотел бы воспользоваться этим для (тайно?) хранения других типов данных . Беглый поиск в сети ничего особенного не дает.

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

Что мне нужно, так это более компактная повторная инкапсуляция необработанных данных в файл JPEG. Результирующее изображение может (и должно) выглядеть как мусор при отображении на HTML-странице. Я не против. Очевидно, что эта программа должна быть бесплатной/с открытым исходным кодом. Кроме того, эта программа не должна хранить полезные данные в EXIF, поскольку такие данные часто удаляются из изображений, размещенных на веб-сайтах.

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

Прежде чем я приложу все усилия для исследования и написания такого программного обеспечения, я хочу знать: существует ли уже этот инструмент? Наверняка кто-то уже писал что-то подобное.

Сырая идея: QR-коды будут соответствовать вашему описанию, может быть, проверка в этом направлении?
Если вас не волнует, что изображение выглядит как мусор, тогда мы можем просто взять JPEG, оставить заголовки на месте и заменить все данные JPEG вашими данными? Достаточно просто, если вы умеете кодировать... en.wikipedia.org/wiki/JPEG#Syntax_and_structure . Если нет, то какая операционная система? Это должно быть бесплатно, или у вас есть бюджет?
Остерегайтесь нарушения условий обслуживания и удаления ваших данных.
Кстати, Jpeg имеет ограничение в 4 ГБ или около того ....
@Izzy: QR-коды не так компактны, как я надеюсь. Кроме того, они лучше подходят для форматов, поддерживающих цветовое пространство 2 бита на пиксель, таких как GIF или PNG.
Хорошо, это была просто идея. Вам может не понравиться и другое: используйте маленькие изображения и огромные данные EXIF ​​:) // Но мы получаем ОТ, "как сделать X" здесь не подходит.
@Mawg: Но эти изображения - прекрасные импрессионистские произведения искусства! Да, ограничение в 4 Гб — это нормально. Форматы файлов RAR и ZIP решают эту проблему, охватывая файлы . Ограничения и то, что вы описываете, можно обрабатывать с помощью программного управления более высокого уровня. Я согласен с тем, что лучше всего использовать синтаксис и структуру JPEG. Что я хочу знать, если кто-то уже сделал это, прежде чем я приложу все усилия, чтобы написать новую реализацию.
@Izzy: обратите внимание, что многие онлайн-сервисы удаляют данные EXIF. Хорошие мысли. Слегка ОТ, но полезно сузить рамки вопроса.
Да, но мы говорим не об удалении EXIF, а о всех данных изображения Jpeg . Должно быть довольно тривиально для кода, но я не знаю ничего, что делало бы то, что хочет OP с полки :-(
Это привлечет к вам нежелательное внимание — этим занимаются педофилы, «террористы» и прочие нежелательные лица.
@ user3791372, я ценю вашу точку зрения; Я уверен, что ты прав . Меня интересуют ваши мотивы относительно того, почему вы упомянули об этом здесь.

Ответы (1)

Хотя это не решение для контейнеров JPEG, это иллюстрирует решение, которое будет работать с бесплатным хранилищем фотографий Amazon Prime с использованием контейнера BMP .

«Японский пользователь YDKK разработал инструмент для хранения произвольных данных в файле .bmp, который затем можно загрузить в сервис Amazon. Тестовый образ объемом 1,44 ГБ, содержащий исполняемый файл, загружается со скоростью более 250 Мбит/с, что намного быстрее, чем в обычных облачных хранилищах. которые ограничены по скорости и не допускают очень больших файлов».

http://ydkk.hateblo.jp/entry/2016/01/25/115224