Программирование средства внедрения и анализа водяных знаков в исходные тексты программ

Автор: Пользователь скрыл имя, 19 Октября 2011 в 03:02, курсовая работа

Описание работы

Целью данной работы является создание эффективного программного обеспечения для внедрения в исходные тексты программ информации об авторских правах, что позволит исключить несанкционированное их использование.

Содержание

Введение 4
1 Описание методов и средств решения задачи 6
1.1 Постановка задачи на курсовое проектирование 6
1.2 Общие аспекты проблемы авторского права 6
1.3 Современные методы защиты программного обеспечения 7
2 Методы внедрения водяных знаков 19
2.1 Исследование статистических свойств исполняемого кода 19
2.2 Предлагаемые методы внедрения водяных знаков 21
2.3 Оценка эффективности подстановок 24
3 Описание разработанного программного обеспечения 26
3.1 Общая структура 26
3.2 Проектирование базы данных 26
3.3 Описание основных компонентов 27
3.4 Описание алгоритма программы 30
4 Описание результатов работы 32
4.1 Описание главной формы программы 32
4.2 Описание результатов работы программы и выводы по ним 33
Заключение 35
Список использованных источников 36
Приложение А. Листинг программы 37

Работа содержит 1 файл

Введение.docx

— 1.17 Мб (Скачать)
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Лист  на реценцию 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Содержание

Введение 4

1 Описание методов и средств решения задачи 6

1.1 Постановка задачи на курсовое проектирование 6

1.2 Общие аспекты проблемы авторского права 6

1.3 Современные методы защиты программного обеспечения 7

2 Методы внедрения водяных знаков 19

2.1 Исследование статистических свойств исполняемого кода 19

2.2 Предлагаемые методы внедрения водяных знаков 21

2.3 Оценка эффективности подстановок 24

3 Описание разработанного программного обеспечения 26

3.1 Общая структура 26

3.2 Проектирование базы  данных 26

3.3 Описание основных компонентов 27

3.4 Описание алгоритма  программы 30

4 Описание результатов работы 32

4.1 Описание главной  формы программы 32

4.2 Описание результатов работы программы и выводы по ним 33

Заключение 35

Список  использованных источников 36

Приложение  А. Листинг программы 37

 

 

Введение

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

     Самой серьезной проблемой, с которой сталкиваются разработчики программного обеспечения, является пиратство. Оно наносит им очень серьезный ущерб. Контрафактное программное обеспечение до сих пор можно найти в Интернете, на рынке и в магазинах, торгующих дисками. Таким образом,  самим разработчикам тоже приходится бороться с пиратами. И самым, пожалуй, эффективным способом такой борьбы является защита своих программ от нелицензированного использования. На сегодняшний день разработано немало различных методов для решения этой задачи. Некоторые из них более надежны, другие - менее. Однако все они имеют свое право на существование. Ведь чем надежней защита, тем больше денег необходимо потратить на ее реализацию. Поэтому для разных продуктов необходимы различные подходы.

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

     В последнее время одним из направлений развития средств противодействия компьютерному пиратству стали исследования защиты ПО водяными знаками – средством, позволяющим доказать права собственности на программу целиком или некоторую её часть. Внедрение водяного знака в программный код подразумевает размещение в нем некоторой скрытой информации, для чего применяются стеганографические подходы.

     Под цифровой стеганографией понимается скрытие  одной информации в другой. Причем  сокрытие это должно реализоваться  таким образом, чтобы, во-первых, не были утрачены свойства и некоторая  ценность скрываемой информации, а  во-вторых, неизбежная модификация  информационного носителя, не только не уничтожила смысловые функции, но и на определенном уровне абстракции  даже не меняла их. Тем самым факт передачи одного сообщения внутри другого  не выявляется традиционными методами.

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

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

     Целью данной работы является создание эффективного программного обеспечения для внедрения  в исходные тексты программ информации об авторских правах, что позволит исключить несанкционированное их использование. 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

1 Описание методов и средств решения задачи

    1. Постановка  задачи на курсовое проектирование

     Задача курсового проекта заключается во внедрении водяных знаков в исходные тексты программ.

     Для надежности все данные должны храниться  в базе данных для общего доступа  по сети, также для более комфортной работы с имеющимися данными.

Программа должна предоставлять пользователю возможность подсчитывать статистические данные использования тех или  иных программ на Си. Второй модуль программы  должен предоставлять возможность  изменять полученные статистические характеристики исходного кода, чтобы появилась  возможность идентифицировать автора и таким образом защитить авторские  права. Программа должна иметь оптимизированный код, для более быстрой работы. Программа должна иметь оптимизированную структуру базы данных, соответствующей третьей нормальной форме(3NF).

     Так же существуют некоторые основные требования к использованию СУБД. СУБД должна иметь высокую скорость работы, высокую  степень защиты информации от несанкционированного доступа и самое важное - должна поддерживать язык структурированных запросов (SQL). 
 

    1. Общие аспекты проблемы авторского права

     Быстрое развитие глобальной сети Интернет обеспечило наличие единой среды передачи информации, доступной практически в любой  точке мира. Ключевой проблемой, возникающей  при этом, является защита авторского права на передаваемые электронные  документы. Авторское произведение в электронном виде наиболее уязвимо  в плане неправомерного использования. Электронный документ может быть легко скопирован, обработан, использован  при создании других документов, размножен  и распространен.

     Система авторского права складывалась и  развивалась на протяжении многих столетий. За этот срок были выделены ее основные положения, определены отношения между  авторами и обществом, меры по защите прав авторов. Однако, в связи с  появлением новых направлений творческой деятельности, таких, как создание компьютерных программ, система авторского права  не может не претерпеть некоторых  изменений. Кроме того, возникает  проблема защиты авторских прав на произведения, существующие исключительно  в электронном виде, поскольку  они обладают некоторыми особенностями, делающими их особенно уязвимыми  для несанкционированного использования. Перечислим эти особенности:

  1. компьютерная информация легко копируется;
  2. каждая копия идентична оригиналу;
  3. электронные копии распространяются очень быстро. [1]

     Авторское право на произведение возникает  в силу факта его создания. Автор  или другой обладатель авторских  прав оповещает о них, используя  знак охраны авторских прав, имя правообладателя и год первого опубликования. В случае представления произведения в виде компьютерной информации (в электронной форме) такое обозначение авторских прав можно удалить без видимых следов. Но автор для закрепления своих прав может, кроме видимого знака, использовать цифровые «водяные знаки» или невидимую метку.

     Нанесение такой метки преследует следующие  цели: она должна четко определять держателя авторских или имущественных  прав и позволять отслеживать  распространение маркированных  мультимедийных данных.

     Для надежной защиты метка должна обладать следующими качествами:

  1. невидимость;
  2. помехоустойчивость (устойчивость к искажениям);
  3. защищенность (стойкость к фальсификации).

     Когда на изображение ставится видимый логотип держателя прав, он, как правило, располагается в таком месте, где не сможет быть помехой для зрительного восприятия иллюстрации. Следовательно, и его умышленное удаление не повлечет за собой особых нарушений ее структурной целостности. Требование к минимизации искажений предъявляется не только из-за возможного обнаружения метки, но и из чисто эстетических соображений - не имеет смысла маркировать картинку, если ее качество ухудшится настолько, что, она уже будет непохожа на оригинал.

     В процессе работы изображение может  претерпевать различные трансформации: уменьшаться или увеличиваться, преобразовываться в другой формат и т.д. Кроме того, оно может  быть сжато, в том числе и с  использованием алгоритмов сжатия с  потерей данных. Неизменность метки  в условиях подобных преобразований достижима только в случае, когда  она помещается в обширных областях по всей площади изображения.

     Если  метка должна быть устойчивой к различного вида помехам и трансформациям, следовательно, она должна быть устойчива к действиям, направленным на ее удаление.[1] 
 

    1. Современные методы защиты программного обеспечения

     Разработчики  программных продуктов, получающие доход от их продажи, постоянно сталкиваются с рядом проблем, связанных с нелегальным копированием программного обеспечения. Лица, нарушающие авторские права, могут создать копию продукта для частного использования, осуществления промышленного шпионажа путем обратного проектирования программы и последующей ее продажи как своей собственной с целью получения выгоды. Каждое из перечисленных действий злоумышленника несёт для разработчика потерю части дохода от разработки. Для решения этой проблемы параллельно с развитием технологий создания программного обеспечения (ПО) совершенствуются технологии защиты программ от несанкционированного использования. [2] 

Информация о работе Программирование средства внедрения и анализа водяных знаков в исходные тексты программ