Реальные СГC-НЗБ и СГС-ШПС
1.2 Outguess. В качестве ПO используется цветное изображение в формате JPEG. Алгоритм реализован под операционную систему FreeBSD на языке C++. В лабораторной работе N1 портирован с помощью эмулятора cygwin. Работает из командной строки. Требует задания паролей (стегоключей) вложения и извлечения. Алгоритм вложения разработан для обеспечения защиты от атаки обнаружения χ2.
Вложение происходит в два прохода: первый – по псевдослучайному пути, определяемому стегоключом (паролем), как в Jsteg, а второй – с изменением коэффициентов не затронутых первым проходом, с целью приближения гистограммы СГ-изображения к гистограмме ПО, что затрудняет χ2-атаку.
Однако, обнаружение Outguess сказывается возможным, для чего используется факт увеличения “неоднородности” в блоках 8х8, которые сравниваются с неоднородностью исходного ПО, полученного при помощи оценки стегоизображения (см. далее: обнаружение СГС-ШПС и “слепой” стегоанализ). 1.3 F5. В качестве ПО используется цветное изображение в формате JPEG. Однако, в отличие от Jsteg и Outguess, это не чистая СГС-НЗБ. Основной принцип F5: при заданном числе вкладываемых бит информации минимизировать количество изменяемых бит ПО.
Пример. - биты вкладываемой информации. Обычное НЗБ требует изменение 2х бит ПС. Модифицированное вложение (где а1,а2,а3 – биты ПС, которые можно изменять):
х1 = а1 а3, х2 = а2 а3 => ничего не изменять,
х1 ≠ а1 а3, х2 = а2 а3 => изменить а1,
х1 = а1 а3, х2 ≠ а2 а3 => изменить а2,
х1 ≠ а1 а3, х2 ≠ а2 а3 => изменить а3.
Во всех случаях изменяется не более одного бита. По заданным а1,а2,а3 однозначно восстанавливаются х1, х2.
Правило извлечения:
x1=a1⊕a3, x2=a2⊕a3