MaterStudiorum.ru - домашняя страничка студента.
Минимум рекламы - максимум информации.


Авиация и космонавтика
Административное право
Арбитражный процесс
Архитектура
Астрология
Астрономия
Банковское дело
Безопасность жизнедеятельности
Биографии
Биология
Биология и химия
Биржевое дело
Ботаника и сельское хоз-во
Бухгалтерский учет и аудит
Валютные отношения
Ветеринария
Военная кафедра
География
Геодезия
Геология
Геополитика
Государство и право
Гражданское право и процесс
Делопроизводство
Деньги и кредит
Естествознание
Журналистика
Зоология
Издательское дело и полиграфия
Инвестиции
Иностранный язык
Информатика
Информатика, программирование
Исторические личности
История
История техники
Кибернетика
Коммуникации и связь
Компьютерные науки
Косметология
Краткое содержание произведений
Криминалистика
Криминология
Криптология
Кулинария
Культура и искусство
Культурология
Литература и русский язык
Литература(зарубежная)
Логика
Логистика
Маркетинг
Математика
Медицина, здоровье
Медицинские науки
Международное публичное право
Международное частное право
Международные отношения
Менеджмент
Металлургия
Москвоведение
Музыка
Муниципальное право
Налоги, налогообложение
Наука и техника
Начертательная геометрия
Новейшая история, политология
Оккультизм и уфология
Остальные рефераты
Педагогика
Полиграфия
Политология
Право
Право, юриспруденция
Предпринимательство
Промышленность, производство
Психология
Психология, педагогика
Радиоэлектроника
Разное
Реклама
Религия и мифология
Риторика
Сексология
Социология
Статистика
Страхование
Строительные науки
Строительство
Схемотехника
Таможенная система
Теория государства и права
Теория организации
Теплотехника
Технология
Товароведение
Транспорт
Трудовое право
Туризм
Уголовное право и процесс
Управление
Управленческие науки
Физика
Физкультура и спорт
Философия
Финансовые науки
Финансы
Фотография
Химия
Хозяйственное право
Цифровые устройства
Экологическое право
Экология
Экономика
Экономико-математическое моделирование
Экономическая география
Экономическая теория
Эргономика
Этика
Юриспруденция
Языковедение
Языкознание, филология
    Начало -> Информатика, программирование -> Некоторые особенности реализации алгоритма защиты программного обеспечения от нелегального использования

Название:Некоторые особенности реализации алгоритма защиты программного обеспечения от нелегального использования
Просмотров:63
Раздел:Информатика, программирование
Ссылка:none(0 KB)
Описание: (На примере программы “генератор тестов 2.0”) Асп. Волошин С. Б.[1] Кафедра теории и автоматизации металлургических процессов и печей. Северо-Кавказский горно-металлургический институт (государственный технологиче

Часть полного текста документа:

(На примере программы “генератор тестов 2.0”)

Асп. Волошин С. Б.[1]

Кафедра теории и автоматизации металлургических процессов и печей.

Северо-Кавказский горно-металлургический институт (государственный технологический университет)

Рассмотрены некоторые особенности реализации алгоритма защиты программного обеспечения от нелегального использования. Приведена принципиальная схема алгоритма и часть исходных кодов на языке программирования Microsoft Visual Basic 2005.

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

Применение для написания программного продукта платформы Microsoft .NET Framework [1] позволяет достаточно просто реализовать в программе различные криптографические алгоритмы: как симметричные (DES, Triple-DES, RC2, Rijndael) и ассиметричные (DSA/DSS, RSA) алгоритмы шифрования, так и алгоритмы хеширования (HMACSHA-1, MACTripleDES, MD5, SHA-1, SHA-256, SHA-384, SHA-512) [2, 3].

В .NET Framework за криптографию отвечает пространство имен

System.Security.Cryptography

В это пространство входят три класса высокого уровня:

System.Security.Cryptography.SymmetricAlgorithm

System.Security.Cryptography.AsymmetricAlgorithm

System.Security.Cryptography.HashAlgorithm

Наиболее перспективной для организации защиты представляется комбинация асимметричного алгоритма RSA, разработанного Р. Ривестом, А. Шамиром и Л. Адлеманом, и алгоритма дайджеста сообщения MD5 [3].

Реализация алгоритма RSA и алгоритма MD5 на языке высокого уровня Microsoft Visual Basic 2005 выглядит следующим образом:

'подключаем пространство имен

Imports System.Security.Cryptography

Imports System.Text

Imports System.Xml

Public Class myCrypt

'I. Генерируем ключи RSA.

Dim rsaProvider0 As New RSACryptoServiceProvider()

Dim EK As String = rsaProvider0.ToXmlString(False)

Dim DK As String = rsaProvider0.ToXmlString(True)

'II. Создаем и настраиваем экземпляр класса

'RSACryptoServiceProvider перед шифрованием.

3 Труды молодых ученых  № 4,  2007 Dim cspParam As New CspParameters()

cspParam.KeyContainerName = "SecretKey"

Dim rsaProvider1 As New RSACryptoServiceProvider(cspParam)

'III. Шифруем данные.

rsaProvider1.FromXmlString(EK)

Dim cipheredText As Byte() = rsaProvider1.Encrypt _

(UTF8Encoding.UTF8.GetBytes("Данные пользователя"), True)

Dim EncodingText As String = Convert.ToBase64String(cipheredText)

'IV. Дешифруем данные.

Dim rsaProvider2 As New RSACryptoServiceProvider()

rsaProvider2.FromXmlString(DK)

Dim DecodingText As String = UTF8Encoding.UTF8.GetString _ (rsaProvider2.Decrypt(Convert.FromBase64String(EncodingText), True))

'V. Получаем хеш-функцию расшифровывающего ключа.

Dim md5Provider As New MD5CryptoServiceProvider

Dim MD5Hash As String = Convert.ToBase64String _

(md5Provider.ComputeHash(UTF8Encoding.UTF8.GetBytes(DK)))

End Class.

Используя асимметричный алгоритм RSA и алгоритм вычисления хеш-функции MD5, автор статьи разработал принципиальную схему алгоритма защиты программного обеспечения от нелегального использования. Данная схема была успешно применена при разработке программного комплекса “Генератор тестов 2.0”.

Каждый легальный дистрибутив программы “Генератор тестов 2.0” снабжается ключевым файлом. Ключевой файл подтверждает легальность установленного программного продукта и может служить для идентификации пользователя, ограничения времени работы программного продукта и т.д.

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

Принципиальная схема работы алгоритма защиты показана на рисунке.

Принципиальная схема работы алгоритма защиты.

Порядок работы алгоритма:

В процессе создания программного обеспечения:

Информация о пользователе в открытом виде записывается в ключевой файл (она служит для быстрого получения сведений о пользователе).

Информация о пользователе передается асимметричному алгоритму шифрования.

Зашифровывающий ключ передается алгоритму шифрования.

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

Расшифровывающий ключ асимметричного алгоритма шифрования добавляется в ключевой файл.

Расшифровывающий ключ асимметричного алгоритма шифрования передается в алгоритм хеширования.

Хеш-функция расшифровывающего ключа помещается перед компиляцией в защищаемый бинарный файл (*.exe, *.dll и т.д.).

В процессе эксплуатации программного обеспечения:

Расшифровывающий ключ асимметричного алгоритма шифрования, записанный в ключевой файл, передается в алгоритм хеширования.

Значение хеш-функции расшифровывающего ключа из ключевого файла сравнивается со значением хеш-функции расшифровывающего ключа помещенной в защищаемый файл. ............







Похожие работы:

Название:Оцінка трудомісткості алгоритму
Просмотров:340
Описание: Міністерство освіти і науки, молоді та спорту України Тернопільський національний технічний університет ім. І.Пулюя Кафедра комп’ютерних систем та мереж Звіт до лабораторної роботи №4 н

Название:Модель программного обеспечения холодильника
Просмотров:266
Описание: Курсовая работа по дисциплине "Проектирование информационных систем" на тему: "Модель программного обеспечения холодильника" Содержание Введение 1. Пост

Название:Разработка модели программного обеспечения для телевизора в среде Rational Rose
Просмотров:343
Описание: КУРСОВАЯ РАБОТА по дисциплине «Проектирование информационных систем» на тему: «Разработка модели программного обеспечения для телевизора в среде Rational Rose» СОДЕРЖАНИЕ   ВВЕДЕНИЕ

Название:Составление алгоритмов, реализованных в алгоритмическом языке Паскаль
Просмотров:421
Описание: Содержание Введение Задание 1. Теоретический вопрос Задание 2. Линейные алгоритмы Задание 3. Алгоритмы ветвления Задание 4. Алгоритмы обработки массивов Задание 5. Алгоритмы обработки сложных структу

Название:Разработка программного комплекса
Просмотров:142
Описание: Содержание Задание на разработку программного комплекса Функциональная структура приложения Спецификация программного комплекса Структурная диаграмма программного комплекса Данные для тестировани

 
     

Вечно с вами © MaterStudiorum.ru