Pull to refresh
Comments 10
Понравился проект. Я пару лет назад делал подобное, но мой скрипт сильно «ломал» изображение и было понятно что с ним что-то не то. Хотелось бы узнать какое количество данных можно записать в картинку (например в вашу из примера)
Количество данных зависит от выбранного баланса. Если выбрать 4, то на один символ будет приходиться по 2 пикселя. Если выбрать 1, то на каждый символ будет по 8 пикселей.

Что касается моего изображения, то максимум туда можно закодировать около 120000 символов.
Я подсчитал, если взять изображение 4096x4096, то в него можно закодировать текст, в три раза больше романа «Война и мир».

Еще конечно нужно учитывать последующее DES-шифрование, которое делает текст немного больше.
Как вы могли заметить входное изображение имеет формат JPEG, а на выходе PNG. Это является недоработкой программы

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


key.dat — файл с ключом, который нужен для расшифровки

на каждое изображение генерируется новый? это, как минимум, неудобно.


P.S. ничего так и не сказано про стенографию: какие именно пиксели используются, меняются ли неиспользуемые пиксели и т.п.
P.P.S. затеряться на такой картинке несложно. нужно проверять на "ровных" картинках (где есть однотонная заливка или плавный градиент)

какие именно пиксели используются, меняются ли неиспользуемые пиксели и т.п.
Пиксели используются от начала изображения и до конца, последовательно.
Неиспользуемые пиксели не меняются.

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

а как при расшифровке определяется сколько пикселей было использовано?

У нас есть ключ 2$960$abrakadabra и он состоит из трех частей.
Каждая часть отделяется символом $. Первая — баланс, вторая — количество пикселей, а третья — ключ от DES шифрования.
С jpg не так все просто. Например, не нужно пытаться что-то кодировать в отдельных пикселях.
Интересно, а какой КПД у Вашего алгоритма?
Вот здесь тоже делают стеганографию со сжатием именно в JPEG.
Делать это в BMP или PNG — детская забава!
Часом не этой работой вдохновлялись? Только там LSB применяли к документам MS Office.
Нет.
Глазами прошелся нашел идею для дополнительной фичи к StegoPy: распределение битов не только по B-каналам, но и по R, и G по желанию пользователя.
Only those users with full accounts are able to leave comments. Log in, please.