Здравствуйте уважаемые форумчане! Недавно столкнулся со следующей проблемой. При попытке скрытия текста в мп3 файле методом замены младшего бита происходит порча воспроизводимого аудио. Когда меняю биты, обхожу ид3 теги и заголовки фреймов, редактирую только данные. Читал, что существуют методы "умной" замены бит, при котором аудио нормально воспроизводится. Хотелось бы узнать про них, а также вообще про методы скрытия внутри мп3 (кроме скрытия в ид3 тегах и в зарезервированных битах заголовка фрейма). Заранее благодарен.
Ну ты артист =))) Это ты решил пропесочить младший байт у компрессированных данных по Хоффману и еще черт знает как? попробуй изменть для примера бит или байт в RAR архиве и распаковать его... Была когда-то прога MP3stego она кодировала биты четностью каждого блока. То есть в процессе cоздания MP3, а не модификацией готового.
Алгоритмы сжатия с потерями (MP3, JPEG, почти все видеокодеки) сжимают поток данных именно за счет того, что органы восприятия человека практически нечувствительны к малым изменениям/искажениям в данных. На этапе сжатия такие алгоритмы их "отбрасывают", если не вдаваться в подробности (на самом деле тем или иным образом описывают/кодируют законы их шаблонного, т.е. неисходного, восстановления на этапе декодирования). Стеганография "в младших битах" пытается использовать эти же малые искажения в своих целях - для создания стегоконтейнера. В итоге они "конфликтуют" : сжатие с потерями практически всегда уничтожает стегоконтейнеры, построенные по принципу младших значащих бит; а внедрение в сжатый поток "в младшие биты" вообще невозможно, так как их там попросту нет.
Читал про способ перевода в вав скрытия и пергона обратно в мп3. Насколько знаю именно так в Mp3stego и делается. Может быть кто нибудь знает,где можно про этот способ почитать подробнее?
то о чем вы все рассуждаете называется устойчивыми водяными знаками. Лично я не верю вообще в их существование, чтобы там не писали академики в своих статейках. ИМХО пережатие да еще с потерями убивает любую скрытую инфу. Как я уже сказал, MP3Stego работает по-другому - безо всякой оглядки на ВАВы, а именно подгонкой четности неких внутренних блоков. Бит потом извлекается как контрольная сумма неких участков, содердание а может и размер которых строго не нормированы в формате MP3. MP3Stego works in the following manner: MP3Stego will hide information in MP3 files during the compression process. The data is first compressed, encrypted and then hidden in the MP3 bit stream. The hiding process takes place at the heart of the Layer III encoding process namely in the inner_loop. The inner loop quantizes the input data and increases the quantizer step size until the quantized data can be coded with the available number of bits. Another loop checks that the distortions introduced by the quantization do not exceed the threshold defined by the psychoacoustic model. The part2_3_length variable contains the number of main data bits used for scalefactors and Huffman code data in the MP3 bit stream. We encode the bits as its parity by changing the end loop condition of the inner loop. Only randomly chosen part2_3_length values are modified; the selection is done using a pseudo random bit generator based on SHA-1
punxer расскажи подробнее ? я ничего не понял ... если ты имеешь в виду добавление крайне небольших объемов информации по технологии ЦВЗ, то во-первых, там никак не "младшие биты", а во-вторых, у алгоритмов имеющих робастность "против" сжатия с потерями, доля внедренной информации оказывается ничтожной - только на ЦВЗ и хватает, да и сам понимаешь, после сжатия с сильным искажением все равно ничего не поделаешь. Вот здесь очень хороший обзор характеристик методов : http://www8.georgetown.edu/cct/thesis/AndreasGaray.pdf
Да интересно было бы узнать что имел ввиду punxer.По поводу mp3stego нашел следующую статью: http://www.itsec.ru/articles2/Oborandteh/obzor_steganogr_programm_dlya_zvukov_faylov_formata_mp3 Из нее следует как я понял что придется фактически писать ковертор из вав в мп3?
Да ну не знаю, я б просто писал в конец mp3 xor'нутый или rol'нутый текст. И всех делов. Один фиг при просмотре по F3 не будет видно разницы между данными mp3 и ксорнутым текстом. Ну или можно рабавлять текст мусором из самих mp3 данных. Тогда ваще фиг отличишь где дата а где текст.