Зміст
. Постановка завдання
. Аналіз завдання
.1 Вибір методу захисту виконуваних файлів
.2 Опис системних засобів, необхідних для вирішення поставленого завдання
. Розробка алгоритмів
.1 Алгоритм роботи шіфровщіка
.2 Алгоритм розшифровки образу захищеного програми
. Опис програми
.1 Структура програми
.2 Код шіфровщіка
.3 Код расшифровщика
. Інструкція користувача
. Опис контрольного прикладу
Список джерел інформації
Додаток
1. Постановка завдання
Розробити метод створення захищених програм. Написати програму, що захищає вибраний виконуваний. Com файл, шифруючи його. Захищений таким чином файл повинен бути автономний щодо шифрувальної програми, тобто містити інформацію для відновлення свого коду. При запуску захищеної програми на виконання необхідно запросити пароль. Процедуру дешифрации даних слід запускати тільки після завантаження виконуваного файлу в оперативну пам'ять і перевірки пароля. br/>
2. Аналіз завдання
2.1 Вибір методу захисту виконуваних файлів
У ході пошуку методів вирішення поставленого завдання було розглянуто кілька алгоритмів захисту виконуваних файлів.
Перший варіант полягає у розробці програми, шифрувального вибраний. com файл і зберігає отримані дані у файлі спеціального формату. Для запуску захищеного програми користувачеві необхідно запустити перш програму-дешифратор, вказати шлях до закодованого файлу, відповісти на запит введення пароля. Зашифровану інформацію для перевірки правильності пароля розглядалося зберігати у файлі спільно з даними захищеного програми. Програму-дешифратор в даному варіанті допускається компонувати спільно з шифратором. p align="justify"> Другий варіант полягає в написанні програми, здатної зберігати перетворений код захищається додатки в самостійний виконуваний файл, автономний від програми-шифратора. Закодовані дані, інформація для перевірки правильності пароля та процедура дешифрування в цьому випадку зберігаються в одному модулі. На початку захищеного. Com файлу пропонувалося зберігати код дешифратора, після якого додавати дані захищається програми. При запуску на виконання в даному варіанті програма завантажується в оперативну пам'ять разом з образом захищеного програми. Управління передається кодом дешифратора, який повинен декодувати образ. На цьому етапі була виявлена ​​проблема зміщення адрес розшифрованого коду. Полягає вона в тому, що початок коду будь-який. Com програми повинна розміщуватись в оперативній пам'яті по зсуві 100h. Це виключає можливість передачі дешифратором управління на першу команду відновленого коду образу, тому розшифровані дані в даному методі захисту планувалося записувати у виконуваний файл, який можна буд...