Розробка архітектури і компонентів програмного комплексу на основі методів стеганографії для захисту авторських прав

 

Зміст


Вступ

.Дослідження предметної області

.1Характеристика функціональної структури предметної області.

.2Аналіз останніх публікацій, досліджень та існуючих рішень.

.3Постановка задачі та перелік задач для реалізації.

.Розробка архітектури програмної системи

.1Вибір типу архітектури та зразків проектування.

.2Опис декомпозиції.

.3Опис залежностей.

.4Опис інтерфейсу.

.Детальне проектування.

.1Детальне проектування модулів.

.2Детальне проектування даних.

Висновки

Перелік посилань


Вступ


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

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

Мета курсового проекту - розробити архітектуру і компоненти програмного комплексу на основі методів стеганографії для захисту авторських прав.

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

Обєктом розробки курсового проекту є інформаційна система, яка формує захист авторських прав на основі методів стеганографії.


1Дослідження предметної області


1.1Характеристика функціональної структури предметної області


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

Слово "стеганографія" в перекладі з грецької буквально означає "тайнопис" (steganos - секрет, таємниця; graphy - запис). До неї належить величезна безліч секретних засобів зв'язку, таких як невидимі чорнило, мікрофотоснімкі, умовне розташування знаків, таємні канали та засоби зв'язку на плаваючих частотах і т. д. Узагальнена модель стеганографії зображена на рисунку 1.1.


Рисунок 1.1 - Узагальнена модель стеганографії


Стеганографія займає свою нішу в забезпеченні безпеки: вона не замінює, а доповнює криптографію. Приховування повідомлення методами стеганографії значно знижує ймовірність виявлення самого факту надіслати повідомлення. А якщо це повідомлення до того ж зашифровано, то воно має ще один, додатковий, рівень захисту[1].

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

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

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

Іншим популярним методом вбудовування повідомлень є використання особливостей форматів даних, що використовують стиснення з втратою даних (наприклад JPEG). Цей метод (на відміну від LSB) більш стійкий до геометричних перетворенням і виявлення каналу передачі, тому що є можливість в широкому діапазоні варіювати якість стислого зображення, що робить неможливим визначення походження спотворення[1].

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

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

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


1.2Аналіз останніх публікацій, досліджень та існуючих рішень

програмний система декомпозиція модуль

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

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

Реалізовані програмні засоби приховування інформації, наприклад, Steganos, Outguess, Jsteg, Steghide, Jphs, S-Tools та ін. є нескладними у використанні та здатні створити стеганоканал з високою пропускною здатністю. Але, як правило, вони використовують різні модифікації методу найменшого значущого біту (НЗБ). І так як поряд із стеганографічними, хоча й з певним відставанням, розвиваються методи стеганоаналізу, отримані з використанням НЗБ стеганоконтейнери в частині випадків можуть бути виявлені сучасними стеганоаналітичними методами. Таким чином, актуальною є розробка принципово нових методів прихованої передачі даних

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

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

В всіх інших задачах компютерної стеганографії, крім організації таємної комунікації, обєктом інформаційного інтересу в першу чергу виступає сам сигнал-контейнер, а додаткова інформація вкраплюється так щоб зберегти свою цілісність після можливих модифікацій отриманого стеганоконтейнера. В даному випадку мова йде про стеганосистеми цифрових водяних знаків (ЦВЗ). Стеганосистеми ЦВЗ можуть бути використані для вирішення багатьох практичних задач, наприклад, завадостійка автентифікація аудіо та візуальних даних (зокрема контроль цілісності знімків камер спостереження, записів телефонних розмов и т.п.); автентифікація власника даних (захист авторських прав); автентифікація джерела даних; контроль розповсюдження та ідентифікація копій; контроль телевізійного та радіомовлення; контроль копіювання та ін.(рисунок 1.2)[2].


Рисунок 1.2 - Структурна схема стеганосистеми ЦВЗ


Є три основні властивості ЦВЗ, які обумовили їх незамінність порівняно з криптографічними методами, що розвязують ті ж практичні задачі, а саме: ЦВЗ перцепційно не помітний і не вимагає збільшення розміру сигналу-контейнера, який підлягає захисту; ЦВЗ не віддільний від контейнера і на відміну від застосування спеціального заголовка або електронного цифрового підпису (ЕЦП) не може бути вилучений без втрати надійності сприйняття маркованого ним контейнера; контейнер та ЦВЗ підлягають однаковим перетворенням, що дає можливість досліджувати ці перетворення навіть у випадку спотворення чи видалення ЦВЗ. На відміну від ЕЦП, який підтверджує автентичність цифрової інформації тільки при її збереженні «біт-в-біт», автентифікаційні ЦВЗ дозволяють підтвердити автентичність даних при зміні формату їх зберігання або, наприклад, при передачі контейнера по зашумленому каналу звязку.

Алгоритм впровадження ЦВЗ[2]:

1)знаходження особливих точок.

)визначення характеристик околиць обраних особливих точок.

)обчислення нормалізованого моменту Церніке в кожній околиці.

)генерація ЦВЗ шляхом модифікації обчислених нормалізованих моментів Церніке.

)маркування зображення.

Алгоритм виявлення ЦВЗ.

)знаходження особливих точок (аналогічно впровадженню).

)обчислення околиць особливих точок з використанням дескрипторів, визначених у контейнері.

)синхронізація околиць особливих точок.

)обчислення нормалізованого моменту Церніке для кожної околиці

особливої точки.

)виявлення ЦВЗ по пікам в різниці моментів Церніке.


1.3Постановка задачі та перелік задач для реалізації


Основним завданням даного курсового проекту є розробка програмного комплексу для захисту авторських прав на основі методів стенографії.

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

Користувачами, які будуть використовувати даний програмний комплекс можуть бути самі розробники свого программного продукту який вони хочуть захистит своїм авторським правом.

Аналіз вимог до программного продукту(ПП):

?ПП має надавати користувачеві допомогу в шифруванні повідомлення про авторське право користувача на продукт;

?повинен допомагати користувачеві контролювати процесс шифрування повідомлення про його авторське право;

?має добавляти (а не змінювати чи відміняти) зашифроване повідомлення щодо його авторського права до ПП створенного користувачем;

?цей ПП має підвищувати ефективність роботи ПП автора після процесу шифрування повідомлення про авторське право;

?не повинен навязувати користувачеві тільки 1-н тип шифрування, користувач має сам вибрати тип, яким буде шифрувати повідомлення про своє авторське право;

?має бути простий у роботі для осіб, які мають досвід в роботі з ЕОМ;

?користувач повинен підтримувати діалог з ПП у безперервному режимі;

?ПП має пристосуватись до змін середовища;

?повинен мати приємний інтерфейс та прийнятну швидкість виконання поставленої задачі.


2Розробка архітектури програмної системи


2.1Вибір типу архітектури та зразків проектування


Аналізуючи типи архітектури для нашого ПП вибиремо репозиторну архітектуру, яка побудована головним чином навколо даних. Більшість таких систем призначені для обробки транзакцій по відношенню до баз даних. Зобразимо її на рисунку 2.1.


Рисунок 2.1 - Репозиторна архітектура


Після вибору архітектури переходимо до аналізу та вибору зразків проектування. Для порівняння візьмемо такі зразки проектування, як Observer(Спостерігач) та Iterator(Ітератор)[3].- поведінковий шаблон проектування. Визначає залежність типу «один до багатьох» між об'єктами таким чином, що при зміні стану одного об'єкта всі залежних від нього сповіщаються про цю подію. Ціль шаблону - забезпечити реакцію потрібних елементів на зміни в джерелі даних. Шаблон Спостерігач реалізований в численних бібліотеках і системах, включаючи майже всі інструментарії графічних інтерфейсів користувача. Структура цього шаблону проектування зображено на рисунку 2.2[4].


Рисунок 2.2 - Устрій шаблону проктування Observer


Iterator - шаблон проектування, належить до класу шаблонів поведінки. Надає спосіб послідовного доступу до всіх елементів складеного об'єкта, не розкриваючи його внутрішнього улаштування. Можна використовувати шаблон Ітератор у випадках:

?для доступу до змісту агрегованих об'єктів не розкриваючи їхнє внутрішнє улаштування;

?для підтримки декількох активних обходів одного й того ж агрегованого об'єкта;

?для подання уніфікованого інтерфейсу з метою обходу різноманітних агрегованих структур (тобто для підтримки поліморфної ітерації)[5].

Структуру цього шаблону зображена на рисунку 2.3.


Рисунок 2.3 - Структура шаблону проектування Iterator

Проаналізувавши ці зразки проектування, найбільш краще підійде зразок проектування Iterator(Ітератор), оскільки він задовольняє вимоги ПП.


2.2Опис декомпозиції


Архітектура ПП по захисту авторських прав за допомогою методів стенографії зображена на рисунку А.1.

Вона складається з окремих компонентів, кожен з яких може бути розміщений як на окремому, так і на одному компютері:

?Зєднувач;

?Шифрувальний компонент;

?Клієнт;

?Сервер бази даних.

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


Рисунок 2.4 - Діаграма варіантів використання процесів Зєднувача


Клієнтська частина ПП - це орієнтований на користувача компонент, основним завданням якого є представлення інформації користувачу, відображення його дій та підготовка завдань для планувальника задач Зєднувача. Діаграма варіантів використання процесів представлена на рисунку 2.5. Клієнт містить у собі графічний інтерфейс, який складається з таких модулів: основний модуль, модуль інтерфейсів функцій, модуль звітів та модуль візуалізаторів. Діаграми варіантів використання процесів цих модулів зображені на рисунках 2.6-2.7.


Рисунок 2.5 - Діаграма варіантів використання процесів Клієнтської частини ПП


Рисунок 2.6 - Діаграма варіантів використання процесів модуля інтерфейсів


Рисунок 2.7 - Діаграма варіантів використання процесів модуля звітів

програмний система декомпозиція модуль

Шифрувальний компонент відповідає за ініціалізацію, запуск функцій шифрування на виконання та отримання результатів. Він зберігає задачі і разом з ними вхідну інформацію по кожному проекту, з яким працює користувач на даний момент. Цей компонент за командою з Зєднувача запускає на виконання обчислювальне ядро моделі, перетворює вхідну інформацію до формату, необхідного ПП, зберігає результати шифрування. Вхідні дані можуть бути отримані через інтерфейс користувача ПП. Алгоритм шифрування показано на рисунку 2.8. Діаграма варіантів використання процесів Шифрувального компоненту зображена на рисунку 2.9.


Рисунок 2.8 - Алгоритм шифрування Шифрувального компоненту


Рисунок 2.9 - Діаграма варіантів використання процесів Шифрувального компоненту


Необхідна ПП база даних може знаходитись як локальному сервері баз даних, так і на інших серверах баз даних. Доступ до даних, їх оновлення, видалення чи редагування, резервне копіювання відбувається через завдання, які надходять до Зєднувача з Клієнта.

Стани ПП по захисту авторських прав методами стеганографії відображені на рисунку 2.10.


Рисунок 2.10 - Діаграма переходів станів ПП по захисту авторських прав методами стеганографії


2.3Опис залежностей


Зєднувач - головний компонент, який управляє всіма компонентами. Він надсилає команди задачам до Шифрувального компонента, надсилає вихідні параметри та результати до Клієнтської частини, отримує вихідні параметри та результати завдань із Шифрувального компонента (Рисунок 2.11).


Рисунок 2.11 - Залежність між Зєднувачем, Клієнтом та Шифрувальним компонентом


Основний модуль компонента Клієнт управляє такими модулями, як модуль інтерфейсів, модуль звітів та модуль візуалізаторів. Їх залежність зображена на рисунку 2.12.


Рисунок 2.12 - Залежність між модулями пакету Клієнт


Залежність між станами у ПП по захисту авторських прав методами стенографії існує. Кожен стан залежить від тих станів в які ПП може перейти з нього.

2.4Опис інтерфейсу


Загальна діаграма опису інтерфейсів Зєднувача, Клієнта та Шифрувального компоненту зображена на рисунку А.2.

Опис інтерфейсу пакета Зєднувач. Інтерфейс є необовязковим пакетом. У його складі знаходиться клас ModCon, який реалізує інтерфейс Con(Рисунок 2.13).


Рисунок 2.13 - Діаграма класів інтерфейсу пакету Зєднувач


Опис інтерфейсу пакета Клієнт. Інтерфейс користувача моделі є необовязковим пакетом, який виконується на Клієнті у модулі інтерфейсів моделей (Рисунок 2.14). У складі цього пакета є 2 основні класи :

?клас ModView, що реалізує інтерфейс IView та збору вхідних параметрів від користувача в зручній для нього формі, коректності введених даних;

?клас ModUserInterface, що уточняє AbstractUserInterface та призначений для перетворення обєктів даних на чисельні дані і навпаки, для виклику функцій Клієнта, створення обєктів класу ModView, надання та збору з нього даних.


Рисунок 2.14 - Діаграма Класів інтерфейсу пакету Клієнт


Опис інтерфейсу пакета Шифрувальний компонент. Пакет з інтерфейсом до шифрувальної моделі є єдиним обовязковим пакетом, який реалізує шифрувальну функціональність (Рисунок 2.15). Так само як і пакет інтерфейсу користувача, цей пакет також містить 2 основних класи:

?клас ModWrapper, що реалізує інтерфейс IModWrapper та призначений для роботи з деревом датаітемів, тобто перетворення вихідних датаітемів на чисельні дані, необхідні шифрувальному ядру, створення вихідних датаітемів на основі отриманих результатів, генерування повідомлень. Цей клас є атрибутом класу Shifr і тому зберігається і виконується на Шифрувальному компоненті;

?клас ModEntrPoints, який уточнює абстрактний клас AbstractEntrPoints, виконується в окремому процесі і відповідає за зв'язок з ModWrapper та обмін з ним чисельними даними, а також за роботу з динамічною бібліотекою, яка є шифрувальним ядром.


Рисунок 2.15 - Діаграма класів інтерфейсу пакету Шифрувального компоненту

3.Детальне проектування


3.1Детальне проектування модулів


Загальний алгоритм роботи ПП представлено на рисунку А.3. Діаграма послідовності дій між пакетами Клієнт, Зєднувач та Шифрувальний компонент зображена на рисунку А.4.

Пакет Зєднувач. Клас Планувальника містить методи отримання вхідних даних і планування виконання завдання шифрування. Клас бази даних містить методи запиту та вибірки даних. Клас вікна Планувальник містить метод надсилання вхідних даних до Шифрувального компонента. Діаграма послідовності дій пакету Зєднувач зображена на рисунку 3.1, діаграма класів - на рисунку 3.2.


Рисунок 3.1 - Діаграма послідовності дій пакету Зєднувач


Рисунок 3.2 - Діаграма класів пакету Зєднувач


Пакет Клієнт. Клас головного вікна програми містить у собі метод запуску режиму введення даних та метод вибору типу шифрування. Клас вікна обробки даних містить 2 методи: перевірка на коректність даних та редагування даних, якщо вони введені невірно. Клас вікна шифрування містить метод вибору типу шифрування. Клас вікна виведення містить метод виведення результатів. Діаграма послідовності дій в даному пакеті зоюражена на рисунку 3.3, а діаграма класів - на рисунку 3.4.


Рисунок 3.3 - Діаграма послідовності дій пакету Клієнтської частини


Рисунок 3.4 - Діаграма класів пакету Клієнт


Пакет Шифрувальний компонент. Клас Проект має 2 методи : створення та збереження. Клас Модель містить метод ініціалізацій та метод запуску. Клас Результат містить метод виконання. Діаграма послідовності дій цього пакету зображена на рисунку 3.5, діаграма класів - на рисунку 3.6.


Рисунок 3.5 - Діаграма послідовності дій пакету Шифрувальний компонент


Рисунок 3.6 - Діаграма класів пакету Шифрувальний компонент


Модулі пакету Клієнт. Клас модуля інтерфейсів містить метод відображення інтерфейсу. Клас модуля візуалізаторів містить метод відображення у прийнятій формі. Клас модуля звітів має метод формування звітів. Діаграма послідовності дій зображена на рисунку 3.7, діаграма класів - на рисунку 3.8.


Рисунок 3.7 - Діаграма послідовності дій модулів пакету Клієнт


Рисунок 3.8 - Діаграма класів модулів пакету Клієнт


3.2Детальне проектування даних


Для представлення даних використовується структура класів обєктів даних(DataItem), які зберігають чисельні дані, метадані та відносини між ними (Рисунок А.5). Таке дозволяє відображати вхідні дані і результати шифрування за допомогою типових візуалізаторів.

Кожен обєкт даних реалізує інтерфейс IDataItem, що визначає операції, підтримувані всіма обєктами даних. Абстрактний класс AbstractDataItem реалізує спільні функції інтерфейсу, які, при необхідності, можуть бути перевизначені в його нащадках. Основні операції можна розділити на 2 групи:

?операції, що підтримують маніпулювання семантикою даних;

?операції для маніпулювання ієрархічністю структури даних: додавання, пошук, видалення безпосереднього нащадка, встановлення та повернення батька даного обєкту даних та ін.

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

Обєкт даних повідомлень (MessageDataItem) призначений для збереження повідомлень від моделі із зазначенням часу, рівня та тексту повідомлення шифрування.

Таблиця послідовність (Series) зберігає табличні дані, містить у собі структури рядків та стовпців.

Часова таблиця послідовність (TimeSeries) представляє собою таблицю, що завжди містить дату і час.

Таблиця елементів (ElementSeries) наслідує клас Series і призначена для збереження регулярної просторової області, а також містить клас просторових даних. Кожен рядок таблиці відповідає одній комірці, колонки визначають координати центру комірки.

RiverElementsSeries, GeometryElementSeries наслідують ElementSeries і реалізують відповідно сітку та просторову структуру з комірками довільної форми.

Сіткова таблиця (GridSeries) визначає чисельні дані для спільної просторової області, визначеної у ElementSeries, і посилання на яку вона містить. Порядок даних повинен відповідати порядку комірок у просторовій області. Таке обмеження дозволяє зменшити обÉєм памяті, що необхідний для зберігання даних.

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


Висновки


В данному курсовому проекті була розроблена архітектура та компоненти програмного комплексу на основі методів стенографії для захисту авторських прав.

На першому етапі проектування була досліджена предметна область, проаналізовані останні публікації, дослідження та існуючі рішення та постановка задачі.

На 2-му - відбулася розробка архітектури ПП. На цьому етапі була вибрана архітектура та зразок проектування для захисту авторських прав на основі методів стенографії; була описана декомпозиція модулів, процесів і даних. Також було описано залежності між цими модулями, процесами та даними з описанням інтерфейсів. Для відображення результатів використано діаграми варіантів використання, класів та станів.

На 3-му - відбулося детальне проектування ПП, а саме - детальне проектування модулів і даних.

Результатом є спроектований програмний комплекс для захисту авторських прав на основі методів стенографії. Даний програмний комплекс може бути реалізований такими мовами програмування, як C#, C++, Java, PHP та іншими. Для розробки бази даних можна використати технологію MySQL.


Перелік посилань


1)Алан Шаллоуей, Джеймс Р. Тротт Шаблоны проектирования. Новый подход к объектно-ориентированному анализу и проектированию = Design Patterns Explained: A New Perspective on Object-Oriented Design. - М.: «Вильямс», 2002. - 288 с.

2)Метод цифровых водяных знаков. [Електронний ресурс]. - Режим доступу: #"justify">/13_Nikitina.pdf (дата звернення: 18.11.12).

3)Тема 2 Моделі, каркаси і зразки проектування та Тема 3 Типи архітектур та їх моделі. [Електронний ресурс]. - Режим доступу:://msn.tup.km.ua/course/view.php?id=2894 (дата звернення: 24.11.12).

4)Шаблон проектування Спостерігач(Observer). [Електронний ресурс]. - Режим доступу: #"justify">5)Шаблон проектування Ітератор. [Електронний ресурс]. - Режим доступу:

#"justify">)Курсове проектування. Методичні вказівки до виконання курсового проекту для студентів напряму підготовки Програмна інженерія з дисцип-ліни «Архітектура та проектування програмного забезпечення» / А. М. Пелещишин,. - Хмельницький: ХНУ, 2011. - 42 с.


Зміст Вступ .Дослідження предметної області .1Характеристика функціональної структури предметної області. .2Аналіз останніх публікацій, дослідже

Больше работ по теме:

КОНТАКТНЫЙ EMAIL: [email protected]

Скачать реферат © 2017 | Пользовательское соглашение

Скачать      Реферат

ПРОФЕССИОНАЛЬНАЯ ПОМОЩЬ СТУДЕНТАМ