- •Тема 4. Методи захисту програмного забезпечення.
- •1. Мотиви захисту програмного забезпечення
- •2. Реєстраційні коди.
- •3. Апаратні ключі.
- •4. Навісні захисти (протектори).
- •5. Захист від несанкціонованого копіювання
- •6. Стеганографічний захист даних.
- •7. Криптографічний захист програмного забезпечення
6. Стеганографічний захист даних.
Стеганографія (від грецького “тайнопис”) має багатовікову історію. Мета стеганографії – приховати сам факт існування повідомлення. Такі приховані повідомлення можуть включатися в різноманітні зовнішні “невинні” дані і передаватися разом з ними без будь-якої підозри збоку.
Базові принципи комп’ютерної стеганографії такі:
Захист має ґрунтуватися на припущенні, що зловмисник має повне уявлення про стеганографічну систему та деталі її реалізації. Єдиною інформацією, яка залишається невідомою потенційному зловмиснику, є ключ, за допомогою якого лише його власник може встановити факт присутності та зміст прихованого повідомлення.
Якщо зловмисник якимось чином дізнається про факт існування прихованого повідомлення, це не повинно дозволити йому довести цей факт третій особі і тим більше виявити подібні повідомлення в інших даних доти, поки ключ зберігається в таємниці.
Потенційний зловмисник повинен бути позбавлений будь-яких технічних та інших переваг у розпізнаванні або розкритті змісту таємного повідомлення.
Розглянемо кілька методів приховування повідомлень у цифрових сигнатурах та інших добре визначених, але малоінформативних компонентах цифрового зв’язку, які сьогодні є вже досить поширеними.
Приховування даних у цифрових комунікаціях. Левова частка комп’ютерної інформації “шумить” (наявність помилок у даних, завад та інших випадкових сигналів у каналах зв’язку). Шум є практично в будь-якому масиві результатів вимірювань, графічному образі, звуковому файлі тощо. Практичні алгоритми стеганографії якраз і засновані на ідеї заміни за певними законами шумових компонент інформації початковим текстом. Називатимемо таку інформацію, що “шумить” і призначена для приховування таємних повідомлень, контейнером, а біти, що “шумлять”, – бітами контейнера. Біти контейнера, замінені бітами приховуваного повідомлення, дістали назву прихованих бітів. Дані контейнера мають бути досить “шумними”, щоб невеликі зміни в їх безладді не могли стати помітними. Такий метод відомий як сурогатна стеганографія.
Припускається, що кодування прихованого повідомлення має відтворювати характеристики шуму контейнера, що є важко досяжною, але реальною метою. Одна з можливостей полягає в генерації великої кількості альтернативних контейнерів, для того щоб вибрати з них найбільш придатний для зберігання таємного коду. Такий підхід називається селектуючою стеганографією. Єдина пов’язана з ним проблема полягає в тому, що навіть оптимально організований, він дає змогу приховати незначну кількість даних при дуже великій обчислювальній роботі.
Ще один варіант – моделювання характеристик шуму контейнера. Наслідувана функція має бути побудована так, щоб не тільки кодувати приховувані повідомлення, а й дотримуватися моделі початкового шуму. У граничному випадку ціле повідомлення може конструюватися згідно з моделлю шуму. Подібний підхід можна назвати конструюючою стеганографією. Така стратегія має ряд недоліків: її проблематично з’єднати з сильним алгоритмом шифрування, а моделювання шуму – заняття не з легких. Більше того, реальні зразки, створенні на основі цієї моделі, іноді можуть навіть сприяти виявленню
таємного повідомлення замість того, щоб збільшувати його безпеку.
