Заглавная страница Избранные статьи Случайная статья Познавательные статьи Новые добавления Обратная связь КАТЕГОРИИ: АрхеологияБиология Генетика География Информатика История Логика Маркетинг Математика Менеджмент Механика Педагогика Религия Социология Технологии Физика Философия Финансы Химия Экология ТОП 10 на сайте Приготовление дезинфицирующих растворов различной концентрацииТехника нижней прямой подачи мяча. Франко-прусская война (причины и последствия) Организация работы процедурного кабинета Смысловое и механическое запоминание, их место и роль в усвоении знаний Коммуникативные барьеры и пути их преодоления Обработка изделий медицинского назначения многократного применения Образцы текста публицистического стиля Четыре типа изменения баланса Задачи с ответами для Всероссийской олимпиады по праву Мы поможем в написании ваших работ! ЗНАЕТЕ ЛИ ВЫ?
Влияние общества на человека
Приготовление дезинфицирующих растворов различной концентрации Практические работы по географии для 6 класса Организация работы процедурного кабинета Изменения в неживой природе осенью Уборка процедурного кабинета Сольфеджио. Все правила по сольфеджио Балочные системы. Определение реакций опор и моментов защемления |
Криптографічна система RSA (Rivest-Shamir-Adleman) ⇐ ПредыдущаяСтр 3 из 3
Авторами алгоритму RSA, запропонованого в 1977 р., є Р.Рівест (Rivest), А.Шамір (Shamir) і А.Адлеман (Adleman). Надійність алгоритму базується на складності факторизації (розкладення на множники) великих чисел і складності обчислення дискретних алгоритмів (знахождення x при відомих a, b і n із рівняння ax = b (mod n)). Алгоритм RSA складається з трьох частин: генерування ключів, шифрування і дешифрування.
1. Генерування ключів.
Оберемо два великих різних простих числа p і q (Натуральне число називається простим, якщо воно ділиться тільки на себе і на 1.) та знайдемо їх добуток n = pq. Обчислимо функцію Ейлера j(n) за формулою j(n) = (p-1)(q-1). Закритий ключ d обираємо з умов d < j(n) і d взаємно просте з j(n), тобто d і j(n) не мають спільних дільників. Відкритий ключ e обираємо з умов e < j(n) і de = 1 (mod j(n)). Остання умова означає, що різниця de - 1 повинна ділитись на j(n) без залишку. Для визначення числа e слід підібрати таке число k, що de - 1 = j(n)*k. В алгоритмі RSA (e, n) – відкритий ключ, (d, n) – секретний ключ.
2. Шифрування.
Вихідне повідомлення розбивається на блоки Mi однакової довжини. Кожен блок представляється у вигляді великого десяткового числа, менше n, і шифрується окремо. Шифрування блока M (M – десяткове число) здійснюється за наступною формулою
Me = C (mod n),
де C – шифрблок, що відповідає блоку відкритого повідомлення M. Шифрблоки з`єднуються в шифрограму.
3. Дешифрування.
При дешифруванні шифрограма розбивається на блоки відомої довжини і кожен шифрблок дешифрується окремо за наступною формулою
Cd = M (mod n). Додаток Д
Таблиця простих чисел Додаток Е Функція хешування
Функцією хешування (хеш-функцією або вкорочуючей функцією) називається перетворення даних, що переводить рядок бітів M довільної довжини в рядок бітів h(M) деякої фіксованої довжини (кілька десятків чи сотень біт).
Хеш-функція h(M) повинна задовольняти наступним умовам: 1. хеш-функція h(M) повинна бути чутливою до будь-яких змін вхідної послідовності M; 2. для даного значення h(M) повинно бути неможливо знайти значення M; 3. для даного значення h(M) повинно бути неможливо знайти значення M’ ¹ M таке, що h(M‘) = h(M).
Ситуація, за якої для різних вхідних послідовностей M, M‘ співпадають значення їх хеш-образів: h(M) = h(M‘), називається колізією. При побудові хеш-образу, вхідна послідовність M розбивається на блоки Mi фіксованої довжини і оброблюється поблочно за формулою
Hi = f(Hi-1, Mi).
Хеш-значення, що обчислюється при введенні останнього блоку повідомлення, стає хеш-значенням всього повідомлення. В якості прикладу розглянемо спрощений варіант хеш-функції із рекомендацій МККТТ Х.509: Hi = (Hi-1 + Mi )2 mod n,
де n = pq, p і q – великі прості числа, H0 - довільний початковий вміст, Mi - i -тий блок повідомлення M = M1 M2 … Mk.
Додаток Ж Електронний цифровий підпис
Цифровий підпис у цифрових документах грає ту ж роль, що і підпис, поставлений від руки в документах на папері: це дані, що приєднуються до повідомлення, котре передається, та підтверджують, що власник підпису склав чи завірив це повідомлення. Отримувач повідомлення за допомогою цифрового підпису може перевірити, що автором повідомлення є саме власник підпису і що в процесі передачі не було порушено цілісність отриманих даних. При розробці механізму цифрового підпису виникають наступні задачі: ·створити підпис таким чином, щоб її неможливо було підробити; ·мати можливість перевірки того, що підпис дійсно належить вказаному власнику; ·мати можливість запобігти відмові від підпису.
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Последнее изменение этой страницы: 2017-02-21; просмотров: 198; Нарушение авторского права страницы; Мы поможем в написании вашей работы! infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 3.144.212.145 (0.006 с.) |