Г Ф Конахович - Комп'ютерна стеганографія теорія і практика - страница 3

Страницы:
1  2  3  4  5  6  7  8  9  10  11  12  13  14  15  16  17  18  19  20  21  22  23  24  25  26  27  28  29  30  31  32  33  34  35  36  37  38  39  40  41  42  43  44  45  46  47  48  49  50  51 

Аутентифікація

Системи відеоспостереження, електронної комерції, голосової пошти; електронне конфіденційне діловодство

Прихована анотація документів

Медичні знімки; картографія; мультимедійні бази даних

Прихований зв'язок

Застосування у військових і розвідувальних цілях, а також у випадках, коли криптографію використовувати неможна

Рис.2.1. Потенційні області застосування стеганографії

2.2. Проблема стійкості стеганографічних систем

Кожне із зазначених вище за­вдань вимагає певного співвідношення між стійкістю вбудованого повідом­лення до зовнішніх впливів і розміром вбудовуваного повідомлення.

Для більшості сучасних мето­дів, що використовуються для прихо­вання повідомлень у файлах цифрового формату, має місце наступна залежність надійності системи від об' єму вбудо­вуваних даних (рис.2.2), з якої видно, що збільшення останнього істотно зни­жує надійність системи.

Таким чином, існує перспек­тива прийняття оптимального рішення при виборі між кількістю (об' ємом) прихованих даних і ступенем стійкості (прихованості) до можливої модифікації чи аналізу сигнала-контейнера. Шляхом обмеження ступеня погіршення якостей контейнеру, які здатна сприймати людина, при стеганографічній його обробці можна досягти або високого рівня (обсягу) вбудовуваних даних, або високої стійкості до модифікацій (аналізу), але в жодному разі не обох цих показників одночасно, оскільки зростання одного з них неминуче призводить до зменшення іншого. Не дивлячись на те, що дане ствердження математично може бути продемонстроване лише для деяких методів стеганографії (наприклад, для приховування шляхом розширення спектру), очевидно, що воно є справедливим і для інших методів приховування даних [14]. За будь-якого методу, завдяки надлишковості інформації є можливість підвищити ступінь надійності приховання, жертвуючи при цьому пропускною здатністю (об' ємом приховуваних даних). Об' єм вбудованих даних і ступінь модифікації кон­тейнера змінюються від методу до методу. Також є очевидним і той факт, що в залежності від цілей, для яких використовується приховання даних, різними є і вимоги стосовно рівня стійко­

се

о

ер с

й

■а

Розмір приховуваного повідомлення кБ

Рис.2.2. Взаємозв'язок між стійкістю стегано-системи та об' ємом приховуваного повідомлення при незмінному розмірі файлу - контейнерасті системи до модифікації контейнера. Як наслідок, для різних цілей є оптимальним й різні методи стеганографії.

Розглянемо процес проведення стеганоаналізу - оцінки перехопленого контейнера на предмет наявності в ньому прихованого повідомлення. Приховання інформації всередині електронного носія вимагає зміни (перебудови) властивостей останнього, що в тій або іншій мірі призводить до погіршення його характеристик або до набуття цими характеристиками невластивих їм значень. Ці характеристики можуть виконати роль "підписів", що сигналізують про існування вбудованого повідомлення, і, таким чином, основна ідея стеганографії -приховання факту існування секретної інформації - не буде виконаною.

Стеганоаналіз на предмет наявності прихованої інформації може набувати різних форм: виявлення наявності (детектування), видобування і, зрештою, видалення чи руйнування прихо­ваних даних [40]. Крім того, порушник може поверх вже існуючої прихованої інформації вбудувати певну дезінформацію. Більш детально атаки на стеганосистеми і протидія їм розглянуті у розділі 3.

2.3. Структурна схема і математична модель типової стеганосистеми

В загальному випадку стеганосистема може бути розглянута як система зв'язку [5]. Узагальнена структурна схема стеганосистеми зображена на рис.2.3.

Аналі форм

затор іату

J

\

Пустий контейнер (контейнер-оригінал)

Приховувана інформація

Відправник

Ключ(-і)

Канал прихованого обміну (стегано-канал)

Заповнений контейнер (контейнер-результат)

Аналізатор формату

 

 

 

 

 

A J

 

Конвертор

 

 

формату

 

 

А

Одержувач

Ключ(-і)

Рис.2.3. Структурна схема стеганосистеми як системи зв'язку

Основними стеганографічними поняттями є повідомлення і контейнер. Повідомленням m є M є секретна інформація, наявність якої необхідно приховати, M = m2, mn} -множина всіх повідомлень. Контейнером c є С зветься несекретна інформація, яку можна використати для приховання повідомлення, C = {c1, c2, cq} - множина всіх контейнерів, причому q >> n. В якості повідомлення і контейнера можуть виступати як звичайний текст, так і файли мультимедійного формату. Пустий контейнер (або так званий контейнер-оригінал) - це контейнер c, який не містить прихованої інформації. Заповнений контейнер (контейнер-результат) - контейнер c, що містить приховане повідомлення m (cm). Однією з вимог, яка при цьому ставиться: контейнер-результат не повинен бути візуально відмінним від контейнера-оригіналу. Виокремлюють два основних типи контейнерів: потоковий і фіксований.

Потоковий контейнер являє собою послідовність біт, що безперервно змінюється. Повідомлення пакується до нього в реальному масштабі часу, так що в кодері невідомо заздалегідь, чи вистачить розмірів контейнера для передачі всього повідомлення. В один контейнер великого розміру може бути вбудовано декілька повідомлень. Інтервали між вбудовуваними бітами визначаються генератором ПВП з рівномірним розподілом інтервалів між відліками. Основна проблема полягає у здійсненні синхронізації, визначенні початку і кінця послідовності. Якщо в даних контейнера існують біти синхронізації, заголовки пакетів і т. д., то приховувана інформація може йти відразу після них. Важкість забезпечення синхро­нізації є перевагою з точки зору забезпечення прихованості передачі. Нажаль, на сьогодні практично відсутні роботи, присвячені розробці стеганосистем з потоковим контейнером. Як приклад перспективної реалізації потокового контейнера можна навести стеганоприставку до звичайного телефону. При цьому під прикриттям пересічної, незначущої телефонної розмови можна передавати іншу розмову, дані і т. п. Не знаючи секретного ключа не можна не лише довідатися про зміст прихованої передачі, але й про сам факт її існування.

У фіксованого контейнера розміри і характеристики є заздалегідь відомими. Це дозволяє здійснювати вкладення даних оптимальним (в певному смислі) чином. Надалі роз­глядатимуться переважно фіксовані контейнери (у подальшому - контейнери).

Контейнер може бути обраним, випадковим або нав'язаним. Обраний контейнер залежить від вбудовуваного повідомлення, а в граничному випадку є його функцією. Такий тип контейнера більше характерний саме для стеганографії. Нав 'язаний контейнер з'являється, коли особа, що надає контейнер, підозрює про можливе приховане переписування і бажає запобігти йому. На практиці ж частіше за все мають справу з випадковим контейнером [5].

Приховування інформації, яка здебільшого має великий об' єм, висуває суттєві вимоги до контейнера, розмір якого повинен щонайменше в декілька разів перевищувати розмір вбудовуваних даних. Зрозуміло, що для підвищення прихованості зазначене співвідношення повинне бути якомога більшим.

Перед тим, як здійснити вкладення повідомлення в контейнер, його необхідно пере­творити до певного зручного для пакування виду. Крім того, перед запаковуванням до контейнеру, для підвищення захищеності секретної інформації останню можна зашифрувати достатньо стійким криптографічним кодом [14]. У багатьох випадках також є бажаною стій­кість отриманого стеганоповідомлення до спотворювань (у тому числі й зловмисних) [5]. У процесі передачі звук, зображення чи будь-яка інша інформація, яка використовується в якості контейнера, може зазнавати різних трансформацій (у тому числі з використанням алгоритмів із втратою даних): зміни об' єму, перетворення на інший формат тощо. Тому для збереження цілісності вбудовуваного повідомлення може стати необхідним використання коду з виправленням помилок (завадостійке кодування). Початкову обробку приховуваної інфор­мації виконує зображений на рис.2.3 прекодер. В якості однієї з найважливіших попередніх обробок повідомлення (а також і контейнера) можна назвати обчислення його узагальненого перетворення Фур'є. Це дозволяє здійснити вбудовування даних в спектральній області, що значно підвищує їх стійкість до спотворень. Слід зазначити, що для підвищення секретності вбудовування, попередня обробка досить часто виконується з використанням ключа.

Пакування повідомлення до контейнера (з урахуванням формату даних, що пред­ставляють контейнер) відбувається за допомогою стеганокодера. Вкладення відбувається, наприклад, шляхом модифікації наймолодших значущих біт контейнера. Взагалі, саме алгоритм (стратегія) внесення елементів повідомлення до контейнера визначає методи стеганографії, які в свою чергу поділяються на певні групи, наприклад, в залежності від того, файл якого формату було обрано в якості контейнера.

У більшості стеганосистем для пакування і видобування повідомлення викорис­товується ключ, який зумовлює секретний алгоритм, що визначає порядок занесення повідом­лення до контейнера. За аналогією з криптографією, тип ключа обумовлює існування двох типів стеганосистем: з секретним ключем (використовується один ключ, який визначається до початку обміну стеганограмою або передається захищеним каналом) і з відкритим ключем (для пакування і розпакування повідомлення застосовуються різні ключі, які різняться таким чином,що за допомогою обчислень неможливо вивести один ключ з іншого. Тому один з ключів (відкритий) може вільно передаватися незахищеним каналом).

В якості секретного алгоритму може бути використаний генератор псевдовипадкової послідовності (ПВП) біт. Якісний генератор ПВП, орієнтований на використання в системах захисту інформації повинен задовольняти певним вимогам [42]. Серед яких:

- криптографічна стійкість (відсутність у порушника можливості передбачити на­ступний біт на основі відомих йому попередніх з імовірністю, що відрізняється від 1/2. На практиці криптографічна стійкість оцінюється статистичними методами. Національним Інсти­тутом Стандартів і Технологій США (НІСТ) розроблено Керівництво з проведення статистич­них випробувань генераторів ПВП, орієнтованих на використання в задачах криптографічного захисту інформації [43]);

- добрі статистичні властивості (ПВП за своїми статистичними властивостями не повинна істотно відрізнятися від істинно випадкової послідовності);

- великий період формованої послідовності;

- ефективна апаратна/програмна реалізація.

Статистично (криптографічно) безпечний генератор ПВП повинен задовольняти на­ступним вимогам:

- жоден статистичний тест не виявляє у ПВП жодних закономірностей, іншими сло­вами не відрізняє цю послідовність від істинно випадкової;

- при ініціалізації випадковими значеннями генератор породжує статистично незалежні псевдовипадкові послідовності.

В якості основи генератора може використовуватися, наприклад, лінійний рекурентний регістр. Тоді адресатам для забезпечення зв' язку повинне повідомлятися початкове заповнення цього регістру. Числа, породжувані генератором ПВП, можуть визначати позиції модифі­кованих відліків у випадку фіксованого контейнера або інтервали між ними у випадку потокового контейнера. Слід зауважити, що метод випадкового обрання величини інтервалу між вбудовуваними бітами не є достатньо ефективним з двох причин. По-перше, приховані дані повинні бути розподілені по всьому контейнеру. Тому рівномірний розподіл довжин інтервалів (від найменшого до найбільшого) може бути досягнутий лише наближено, оскільки повинна існувати впевненість у тому, що все повідомлення вбудоване, тобто вмістилося у контейнер. По-друге, довжини інтервалів між відліками шуму (у багатьох моделях сигнал-контейнер розглядається як адитивний шум [44]) розподілені не за рівномірним, а за експонентним законом. Генератор ПВП з експонентно розподіленими інтервалами є складним в реалізації.

Приховувана інформація заноситься у відповідності з ключем до тих бітів, модифікація яких не призводить до істотних спотворень контейнера. Ці біти утворюють так званий стеганошлях. Під "істотним" розуміється спотворення, що веде до зростання імовірності виявлення факту наявності прихованого повідомлення після проведення стеганоаналізу.

Стеганографічний канал - канал передачі контейнера-результату (взагалі ж, існування каналу, як, власне кажучи, і одержувача - найбільш узагальнюючий випадок, оскільки запов­нений контейнер може, наприклад, зберігатися у "відправника", який поставив собі за мету обмежити неавторизований доступ до певної інформації. У даному випадку відправник виступає і в ролі одержувача). Під час перебування у стеганографічному каналі контейнер, що містить приховане повідомлення, може піддаватися навмисним атакам або випадковим завадам, детальний опис яких приведено в розділі 3.

В стеганодетекторі здійснюється визначення наявності в контейнері (можливо вже зміненому) прихованих даних. Ця зміна може бути обумовлена впливом помилок в каналі зв' язку, операцій обробки сигналу, навмисних атак порушників. Як вже зазначалося вище, в багатьох моделях стеганосистем сигнал-контейнер розглядається як адитивний шум. Тоді задача виявлення і виділення стеганоповідомлення є класичною для теорії зв' язку. Але такий підхід не враховує двох факторів: невипадкового характеру контейнера і вимог по збереженню його якості. Ці моменти не зустрічаються у відомій теорії виявлення і виділення сигналів на фоні адитивного шуму. Очевидно, що їх врахування дозволить побудувати більш ефективні стеганосистеми.

Розрізнюють стеганодетектори, призначені лише для виявлення факту наявності вбудованого повідомлення, і пристрої, призначені для виділення цього повідомлення з контейнеру - стеганодекодери.

Отже, в стеганосистемі відбувається об' єднання двох типів інформації таким чином, щоб вони по-різному сприймалися принципово різними детекторами. В якості одного з детекторів виступає система виділення прихованого повідомлення, в якості іншого - людина. Алгоритм вбудовування повідомлення в найпростішому випадку складається з двох основних етапів: 1) вбудовування в стеганокодері секретного повідомлення до контейнера-оригіналу; 2) виявлення (виділення) в стеганодетекторі прихованого зашифрованого повідомлення з контейнера-результату. Виходячи з цього, розглянемо математичну модель стеганосистеми.

Процес тривіального стеганографічного перетворення описується залежностями:

E: C х M S; (2.1) D: S M, (2.2)

де S = { (cb mO, (c2, m2), (d, mn), (cq, mq)} = {sh S2, Sq} - множина контейнерів-резуль-татів (стеганограм).

Залежність (2.1) описує процес приховування інформації, залежність (2.2) - видобу­вання прихованої інформації. Необхідною умовою при цьому є відсутність "перетинання" [3],

тобто, якщо ma * mb, причому m„, mb є M, а (ca, ma), (cb, mb) є S, то E(ca, m„) г E(cb, mb) = 0.

Крім того, необхідно, щоб потужність множини | C | > | M | . При цьому обидва адресати (відправник і одержувач) повинні знати алгоритм прямого (E) та оберненого (D) стеганогра-фічного перетворення.

Отже, в загальному випадку стеганосистема - сукупність Е = (C, M, S, E, D) контей­нерів (оригіналів і результатів), повідомлень і перетворень, що їх пов' язують.

Для більшості стеганосистем множина контейнерів С обирається таким чином, щоб в результаті стеганографічного перетворення (2.1) заповнений контейнер і контейнер-оригінал були подібними, що формально може бути оцінене за допомогою функції подібності [3].

Означення 2.1. Нехай С - непорожня множина, тоді функція sim(C) (-да, 1] є функцією подібності на множині С, якщо для будь-яких де, y є С справедливо, що sim(x, y) = 1 у випадку x = y і sim(x, y) < 1 при x * y.

Стеганосистема може вважатися надійною, якщо sim[c, E(c, m)] « 1 для всіх m є M і c є С. Причому в якості контейнера c повинен обиратися такий, що раніше не використову­вався. Крім того, неавторизована особа не повинна мати доступ до набору контейнерів, що використовуються для секретного зв' язку.

Обрання визначеного контейнера c з набору можливих контейнерів С може здійснюва­тися довільно (так званий сурогатний метод вибору контейнера) або шляхом обрання найбільш придатного, який менше за інших зміниться під час стеганоперетворення (селективний метод). В останньому випадку контейнер обирається відповідно до правила:

c = max sim[x, E (x, m)]. (2.3)

Також слід зазначити, що функції прямого (E) і зворотного (D) стеганографічного перетворення у загальному випадку можуть бути довільними (але, звичайно, відповідними одна одній), однак на практиці вимоги до стійкості прихованої інформації накладають на зазначені функції певні обмеження. Так, у переважній більшості випадків, E(c, m) « E(c + 8, m), або D[E(c, m)] « D[E(c + 8, m)] = m, тобто незначно модифікований контейнер (на величину 5) не призводить до зміни прихованої в ньому інформації [5].

2.4. Протоколи стеганографічних систем

Важливе значення для досягнення цілей стеганографії мають протоколи. Під про­токолом розуміється "порядок дій, що вживаються двома чи більше сторонами, призначений для вирішення певної задачі" [11]. Можна розробити винятково ефективний алгоритм при­ховання інформації, але через його неправильне застосування не досягти своєї мети. І протокол, і алгоритм є певною послідовністю дій. Відмінність між ними полягає в тому, що до протоколу повинні бути обов' язково залучені двоє або більше сторін. При цьому припускається, що учасники приймають на себе зобов' язання дотримуватись протоколу. Так само, як і алгоритм, протокол складається з кроків. На кожному кроці протоколу виконуються певні дії, які можуть полягати, наприклад, у проведенні деяких обчислень, або у здійсненні якихось дій.

Як вже зазначалося в попередньому підрозділі, в стеганографії розрізнюють системи із секретним ключем і системи з відкритим ключем. У перших використовується один ключ, який повинен бути заздалегідь відомий авторизованим абонентам до початку прихованого обміну секретними повідомленнями (або ж пересланий захищеним каналом під час зазначеного об­міну). У системах з відкритим ключем для вбудовування і видобування прихованої інформації використовуються різні, не вивідні один з одного ключі - відкритий і секретний.

З огляду на різноманіття стеганографічних систем, доцільно звести їх до наступних чотирьох типів [3]: безключові стеганосистеми, системи із секретним ключем, системи з відкритим ключем та змішані стеганосистеми.

2.4.1. Безключові стеганосистеми

Для функціонування безключових стеганосистем крім алгоритму стеганографічного перетворення відсутня необхідність в жодних додаткових даних на зразок стеганоключа.

Означення 2.2. Сукупність Е = (C, M, S, E, D), де С - множина контейнерів-оригіналів; M - множина секретних повідомлень, причому | M | < | C | ; S - множина контейнерів-результатів, причому sim(C, S) — 1; E: C х M S та D: S M - відповідно функції прямого (вбудовування) і оберненого (видобування) стеганоперетворення, причому D[E(c, m)] = m для будь-яких m є M і c є С, зветься безключовою стеганографічною системою.

Страницы:
1  2  3  4  5  6  7  8  9  10  11  12  13  14  15  16  17  18  19  20  21  22  23  24  25  26  27  28  29  30  31  32  33  34  35  36  37  38  39  40  41  42  43  44  45  46  47  48  49  50  51 


Похожие статьи

Г Ф Конахович - Оцінка ефективності систем захисту інформації в телекомунікаційних системах

Г Ф Конахович - Комп'ютерна стеганографія теорія і практика