6.3.2. Алгоритм rsa.
Алгоритм RSA стоїть біля витоків джерел асиметричної криптографії. Він був запропонований трьома дослідниками-математиками Рональдом Рівестом (R. Rivest) , Аді Шаміром (A. Shamir) і Леонардом Адльманом (L. Adleman) у 1977-78 роках.
Першим етапом будь-якого асиметричного алгоритму є створення пари ключів: відкритого і закритого та поширення відкритого ключа “в усьому світі”. Для алгоритму RSA етап створення ключів складається з наступних операцій:
Вибираються два простих (!) числа p та q
Обчислюється їхній добуток n(=p*q)
Вибирається довільне число e (e<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 і є зашифроване повідомлення Їх можна спокійне передавати по відкритому каналі, оскільки операція підняття в степінь по модулі простого числа, є необоротною математичною задачею. Зворотна їй задача зветься “логарифмування в скінченому полі” і є на кілька порядків більш складною задачею. Тобто навіть якщо зловмисник знає числа e і n, те по ci прочитати вихідні повідомлення mi він не може ніяк, крім як повним перебором mi.
А от на прийомній стороні процес дешифрування все-таки можливий, і допоможе нам у цьому збережене в таємниці число d. Досить давно була доведена теорема Ейлера, окремий випадок якої стверджує, що якщо число n представимо у вигляді двох простих чисел p і q, то для будь-якого x має місце рівність (x(p-1)(q-1))mod n = 1. Для дешифрування RSA-повідомлень скористаємося цією формулою.
Піднімемо обидві її частини до степені (-y): (x(-y)(p-1)(q-1))mod n = 1(-y) = 1. Тепер помножимо обидві частини на x: (x(-y)(p-1)(q-1)+1)mod n = 1*x = x.
А тепер згадаємо як ми створювали відкритий і закритий ключі. Ми підбирали за допомогою алгоритму Евкліда d таке, що e*d+(p-1)(q-1)*y=1, тобто e*d=(-y)(p-1)(q-1)+1. А отже в останньому виразі попереднього абзацу ми можемо замінити показник степені на число (e*d). Одержуємо (xe*d)mod n = x. Тобто для того щоб прочитати повідомлення ci=((mi)e)mod n досить звести його в степінь d за модулем m: ((ci)d)mod n = ((mi)e*d)mod n = mi.
Насправді операції підняття до степені великих чисел досить трудомісткі для сучасних процесорів, навіть якщо вони здійснюються за оптимізованими за часом алгоритмами. Тому звичайно весь текст повідомлення кодується звичайним блоковим шифром (набагато більш швидким), але з використанням ключа сеансу, а от сам ключ сеансу шифрується саме асиметричним алгоритмом за допомогою відкритого ключа одержувача і поміщається в початок файлу.
Питання для самоконтролю
В чому полягає захист інформації від несанкціонованого доступу?
Що вивчає наука криптографія?
Дайте характеристику симетричних криптографічних систем.
Охарактеризуйте асиметричні криптографічні системи.
Що таке електронний цифровий підпис?
Чим регулюється правове забезпечення електронного цифрового підпису в Україні?
Для чого призначена сертифікація ключів?
У чому полягає процедура аутентифікації та авторизації користувачів?
Які вимоги ставляться до паролів?
Комп’ютерні віруси та антивірусні програми.
Програмні засоби захисту та резервування інформації
- Тема 1 9
- Тема 2 18
- Тема 3 24
- Тема 4 70
- Тема 5 106
- Тема 6 156
- Тема 7 197
- Тема 8 219
- Тема 9 267
- Тема 10 306
- Тема 11 341
- Тема 12 368
- Тема 1 предмет, методи і завдання дисципліни
- 1.1. Предмет і зміст дисципліни
- 1.2. Класифікація та покоління еом
- 1.3. Значення комп’ютерної техніки у галузі економіки та менеджменту
- 1.4. Властивості інформації
- Тема 2 теоретичні основи економічної інформатики
- 2.1.Дані, інформація і знання
- 2.2. Економічна інформація
- Тема 3 системне забезпечення інформаційних процесів
- 3.1. Основні компоненти персонального комп’ютера (пк)
- 3.2. Стандарти безпеки для моніторів
- 3.3. Периферійні пристрої персонального комп’ютера
- 3.4. Програмне забезпечення пеом
- 3.5. Короткий огляд сучасних операційних систем
- 3.6. Короткий огляд прикладного програмного забезпечення
- 3.7. Кількісна оцінка інформації і даних
- 3.8. Системи числення і способи переведення чисел із однієї системи числення в іншу
- Програмне забезпечення пеом
- Тема 4 мережні технології
- 4.1. Класифікація мереж. Топологія мереж
- 4.2. Еталонна модель взаємодії відкритих систем. Програмне забезпечення комп’ютерних мереж
- Шари моделі osi та її програмне забезпечення
- Класифікація мереж. Топологія мереж.
- Мережеві прикладні задачі.
- Тема 5 застосування інтернету в економіці
- 5.1. Організація, структура, принципи роботи та сервіси Internet
- 5.2. Мережеві прикладні задачі
- 5.3. Історія виникнення Internet
- 5.4. Протоколи ір і tcp
- 5.5. Доменна система імен
- 5.7. Передача файлів за допомогою ftp
- 5.8. Електронна пошта
- 5.9. Навігація в www за допомогою Internet Explorer
- 5.10. Пошук в Internet
- 5.11. Основи електронної комерції
- 5.11.1. Електронна комерція.
- 5.11.2.Аукціони.
- 5.11.3. Фінансові та банківські послуги.
- 5.11.4. Платіжні системи в Інтернет.
- Тема 6 організація комп’ютерної безпеки та захисту інформації
- 6.1. Причини виникнення необхідності в захисті інформації
- Архіватори
- 6.1.1. Архіватор winrar.
- Антивірусні програми
- 6.2. Захист від комп’ютерних вірусів Що таке комп’ютерний вірус?
- 6.2.2. Антивірусна програма AntiViral Toolkit Pro (avp) (http://www.Avp.Ru).
- 6.3. Особливості захисту інформації у відкритих системах
- Схеми електронного підпису
- 6.3.2. Алгоритм rsa.
- Тема 7 основи web-дизайну
- 7.1. Приклад документа в html
- 7.2. Заголовки документів
- 7.3. Заголовки розділів документів
- 7.4. Абзаци
- 7.5. З’єднання з іншими документами
- 7.7. Звернення до певних розділів інших документів
- 7.8.5. Вкладені списки
- 7.9. Авторський стиль редагування
- 7.10. Цитати
- 7.11. Адреси
- 7.12. Стилі
- 7.12.1 Логічні стилі
- 7.12.2. Фізичні стилі
- 7.12.3. Спеціальні символи
- 7.13. Переривання рядка
- 7.14. Горизонтальна лінія
- 7.15. Внутрішні малюнки
- Список елементів html
- Тема 8 програмні засоби роботи зі структурованими документами
- 8.1. Системи обробки тексту
- 8.2. Загальна характеристика текстового процесора ms Word
- 8.3. Вікно прикладної програми ms Word
- 8.4. Робота з текстом у редакторі microsoft word’xp: набір та редагування тексту
- 8.4.1. Основні засоби ms Word. Для набору, редагування та форматування тексту згідно з дест по ндр.
- 8.4.2. Засоби копіювання, переносу, пошуку, заміни та автоматичного коригування тексту
- 8.5. Форматування тексту
- 8.5.1. Встановлення та зміна параметрів сторінки.
- 8.5.2. Завдання форматів у програмах обробки тексту.
- 8.5.3. Форматування символів.
- 8.5.4. Форматування абзаців.
- 8.5.5. Форматування списків.
- 8.6. Робота з таблицями, формулами та графікою
- 8.6.1. Створення структури, модифікація та оформлення таблиць.
- 8.6.2. Набір та редагування формул
- 8.6.3. Засоби Word для роботи з графікою.
- 8.6.4. Шаблони та стилі. Створення змісту документів.
- Тема 9 програмні засоби роботи з базами та сховищами даних
- 9.1. Структури даних
- 9.2. Реляційна модель бази даних
- 9.3.Основи реляційної алгебри
- Відношення
- Відношення - частка
- 9.4. Створення бази даних (таблиць і зв’язків між ними)
- Створення структури таблиць Створення бд за допомогою субд Access починається із створення структури таблиць і установки зв’язків між таблицями.
- 9.5. Робота з базами даних у Microsoft Excel
- 9.5.1. Сортування даних
- 9.5.2. Форми даних
- 9.5.3 Установлення інтервалу критеріїв.
- 9.5.4. Автофільтр
- 9.5.5. Розширений фільтр.
- 10.1.2. Вікно властивостей проекту.
- 10.1.3. Вікно для редагування коду процедури.
- 10.1.4. Вікно редагування форм (UserForm).
- 10.2. Програмування в excel
- 10.2.1. Синтаксис і дані мови vba.
- 10.2.2. Оператори мови vba.
- Оператор віднімання (-)
- Оператор множення (*)
- Оператор ділення (/)
- Ділення по модулю (Mod )
- Арифметичні оператори vba
- Логічний оператор and
- Логічний оператор or
- Логічний оператор not
- Логічний оператор xor
- Логічний оператор eqv
- Логічний оператор imp
- Логічні оператори vba
- 10.2.3. Діалогові вікна vba.
- 10.3.1.Об’єкт Application, його властивості та методи.
- 10.3.2. Об’єкт Workbook, його властивості і методи.
- 10.3.3. Об’єкт Worksheet, його властивості і методи.
- 10.3.4. Об’єкт Range, його властивості і методи.
- 10.3.5. Об’єкт CommandBar (Командна панель), його властивості і методи.
- 10.3.6. Конструкція оператора With мови vba.
- 10.3.7. Конструкція оператора For Each мови vba.
- 10.4. Управління файлами за допомогою vba
- 10.5. Виконання макросу
- 10.5.1. Виконання макросу у Word.
- Перший макрос
- Код макросу
- Етапи запису макросу
- Завдання стартових умов для макросу
- Запуск макрорекордера і привласнення імені макросу
- 10.5.2. Запис макросу в Excel
- Завдання стартових умов
- Призначення імені і збереження макросу
- Запис дій
- Тема 11 експертні та навчальні системи
- 11.1.Основні поняття, компоненти та архітектура
- 11.2. Функціональні можливості й характеристика експертних систем (ес)
- 11.3. Системи дистанційного економічного навчання
- Особливості використання засобів дистанційного навчання в кейсовому методі
- Особливості використання засобів дистанційного навчання в кейсовому методі.
- Функціональні можливості й характеристика експертних систем (ес).
- Особливості використання засобів дистанційного навчання в кейсовому методі. Тема 12 перспективи розвитку інформаційних технологій
- 12.1. Класифікація інформаційних систем
- 12.2. Галузі застосування інформаційних систем в економіці
- 12.3. Інтегроване автоматизоване виробництво, планування і управління
- 12.4. Інтегровані економічні інформаційні системи
- Список рекомендованої літератури основна література
- Додаткова література