Міністерство освіти і науки Російської Федерації 
  Федеральне державне бюджетне освітня установа 
  вищої професійної освіти 
  Оренбурзький державний університет 
  Факультет інформаційних технологій 
  Кафедра програмного забезпечення обчислювальної техніки і автоматизованих систем 
  ОГУ 230105.65.4014.062 Про 
        Курсовий проект 
  Програмна система Забезпечення безпеки електронного документообігу 
     Керівник 
  Циганков А.С. 
  Виконавець 
  студент групи з - 10ПОВТ (у) 
  Майборода З.П. 
     Оренбург +2014 
   Зміст 
   Введення 
 . Постановка завдання 
 . Теоретичні передумови 
  2.1 Алгоритм RSA 
  2.1 Асиметричні алгоритми 
 . Керівництво користувача 
  Висновок 
  Список використаних джерел 
  Додаток А 
    Введення 
   Метою даної курсової роботи було написання програмної системи, яка формує віртуальні захищені канали передачі даних, на мові програмування C # за допомогою програмного засобу Visual Studio 2010. Написання програмної системи здійснювалося з використанням класів т.д. 
				
				
				
				
			  Завданнями даної курсової роботи було повторення і закріплення отриманих знань, набутих під час занять з дисципліни Методи і засоби захисту інформації . 
   1. Постановка завдання 
   Розробити програмний засіб, що здійснює шифрування електронних документів асиметричним методом. 
  Програма повинні виконувати наступні функції: 
 . Генерація ключів для алгоритму RSA, із збереженням у файл. 
  Розмір ключа 32 біта (p і q, integer p і q беремо довжиною 32 біта). 
  Верхній поріг генерації - 232 
  Нижній поріг генерації - 231 
  Кількість довжиною 32 біта 
  е - довільно (3, 17 ...) 
 . Шифрування файлів. 
  За допомогою згенерованих раніше ключів, із збереженням у файл (на формі показувати не треба, просто в новий файл). 
 . Розшифрування із збереженням у файл. 
  Якщо ключ неправильний, то програма повинна видати зашифроване. 
   . Теоретичні передумови 
  . 1 Алгоритм RSA 
   Алгоритм RSA стоїть біля витоків асиметричної криптографії. Він був запропонований трьома дослідниками-математиками Рональдом Ривестом (R. Rivest), Аді Шамір (A. Shamir) і Леонардом Адльманом (L. Adleman) в 1977-78 роках. 
  Першим етапом будь-якого асиметричного алгоритму є створення пари ключів: відкритого і закритого і поширення відкритого ключа по всьому світу raquo ;. Для алгоритму RSA етап створення ключів складається з наступних операцій: 
  1 Вибираються два простих (!) числа p і q. 
  2 Обчислюється їх добуток n (= p * q). 
  Вибирається довільне число e (e lt; n), таке, що НОД (e, (p - 1) (q - 1))=1, тобто e повинно бути взаємно простим з числом (p- 1) (q - 1). 
  Методом Евкліда вирішується в цілих числах (!) рівняння e * d + (p - 1) (q - 1) * y=1. Тут невідомими є змінні d і y - метод Евкліда якраз і знаходить безліч пар (d, y), кожна з яких є рішенням рівняння в цілих числах. 
  Два числа (e, n) - публікуються як відкритий ключ. 
  Кількість d зберігається в найсуворішому секреті - це і є закритий ключ, який дозволить читати всі послання, зашифровані за допомогою пари чисел (e, n). 
  Як же проводиться власне шифрування за допомогою цих чисел: 
  Відправник розбиває своє повідомлення на блоки, рівні k=[log2 (n)] біт, де квадратні дужки позначають взяття цілої частини від дрібного числа. 
  Подібний блок, як Ви знаєте, може бути інтерпретований як число з діапазону (0; 2k - 1). Для кожного такого числа (назвемо його mi) обчислюється вираз ci=((mi) e) mod n. Блоки ci і є зашифроване повідомлення Їх можна спокійно передавати по відкритому каналу, оскільки операція піднесення до степеня за модулем простого числа, є незворотною математич...