Здравствуйте, Inch.
Вы писали 3 января 2004 г., 17:21:59:
VVV>> mp3 и jpg основаны на сжатии с потерей качества.
I> Не обязательно. Берется bmp'шка, создается нужный заголовок, тело
I> bmp'шки сжимается алгоритмом Хаффмана и дописывается к заголовку - это
I> в кратце. Может в чем-то я и не прав, но можно и jpg без потери
I> качества создать.
Можно. Но это будет чушь. По сжатию будет проигрывать png.
Кстати, тебе будет очень просто реализовать png - он без потери качества.
VVV>> mp3 алгоритм основан на "подмене" высокочастотных составляющих потока
VVV>> низкими частотами. Если смотреть на спектр сигнала - он будет "обрезан".
VVV>> Энтропия "сообщения" в формате mp3 максимальна, а ваш метод основан на
VVV>> незначительном изменении энтропии и высокие гармоники очень важны, т.к.
VVV>> шумы, в коих обычно и прячут секретное сообщение обычно представлены
VVV>> гармониками. Т.о. при перекодировнии в mp3 ваше сообщение будет уничтожено.
I> При перекодировки из другого формата ты имел ввиду? А я говорю, что
I> если сразу в mp3 записать.
Да. Если сразу писать - всё ок будет. НО! 1. Вам придётся самому ПОЛНОСТЬЮ реализовывать
алгоритм сжатия в нужный формат и ещё дополнительно в этом алгоритме модифицировать
некоторые поля - именно в них будуте писать дополнительные данные.
2. Места под хранение будет намного меньше - т.к. служебных полей меньше. В любом
случае вам придётся каждый новый формат детально изучать.
VVV>> jpg основан на свойстве человеческого зрения воспринимать изменение
VVV>> яркости сильнее чем изменение оттенка и контрастности.
VVV>> Сжатие - тоже с потерей качества. Идея алгоритма - изображение
VVV>> "режется" на квадраты (прямоугольники). В каждом таком квадрате
VVV>> выбирается среднее значение оттенка и контрастности, затем вычисляется
VVV>> величина и направление градиента яркости. Чем больше квадраты, тем хуже
VVV>> качество. Т.о. в jpg нет понятия пиксела, энтропия также максимальна.
VVV>> "Вплести" сюда что то полезное также навряд ли удасться.
I> Спасибо. До этого я такого не слышал. Но вплести сюда тоже инфу можно
I> - многие проги это делают.
Да. Так как я описал выше. Например, в jpg судя по всему будет возможно вплетать
инфу в карту градиента яркости. Места мало.
Кстати, я сам начинал писать такой проект - одновременно архиватор криптор и
стеганографер. Есть плагины на архивацию, криптографию и стеганографию. На проект
забил именно по причине высокой трудоёмкости реализации дополнительных форматов
хранения. А кроме множества поддерживаемых форматов перимуществ перед другими
продуктами на рынке не будет, соответственно и продать будет нереально.
Кстати2: Наверняка слышали про такую вещь, как Invisible Secrets. Может моя информация
не верна, т.к. я его смотрел чуть больше года назад, но тогда он в bmp прятал,
а в jpg - посто тупо дописывал в конец. Так что лажа.
Кстати3: Если всё-таки будете писать учтите, что можно использовать не только
один младший бит, но и, скажем, два младших. В моей библиотеке для вышеозначенного
проекта такая возможность была. По собственным экспериментам скажу, что для 24-битной
bmp использование 2-х битов практически неотличимо (на глаз) от оригинала, использование
3-х - малоотличимо, и вообще вполне реально использовать до 4-х бит. Это, кстати,
НА КАНАЛ цвета. Так что можете сделать ползунок "качество". Для 8-битных bmp
такое не пройдёт, но вряд ли вы будете в него кодировать. Для 32-битных bmp получается,
кажется целый канал можно использовать под свои нужды. Точно не скажу, это год
назад было. Та, теряется прозрачность, но основное предназначение программы -
переслать скрыто инфу по мылу в порнокартинках :))) - а там, имхо, прозрачность
на фиг не нужна.
Кстати4: Меня, пожалуйста, тоже запишите в проект. Это к Виктору Вахтурову. Я
не могу точно сказать, что буду участвовать, т.к. это зависит от того, что вы
будете писать. Поэтому поучаствовать хотелось бы. Это на случай анкет, закрытых
листов и т.д.