avatar
Untitled

Guest 28 29th Nov, 2019

MARKUP 3.40 KB
                                           
                         в ходе данной лабораторной работы мы приобрели практические навыки по использованию ассиметричных шифров на примере наиболее распространенного алгоритма RSA. Используя этот алгоритм, мы сгенерировали пару ключей - открытый и секретный. С помощью открытого ключа мы смогли зашифровать собственное имя и фамилию. С помощью закрытого ключа провели операцию расшифровывания, и полученный результат совпал с исходным сообщением. Изученный алгоритм построения системы RSA выглядит следующим образом:
1) Получатель выбирает два произвольных больших простых числа Р и Q и вычисляет значение модуля по формуле N = P * Q.
2) Получатель вычисляет функцию Эйлера ϕ (N) = (P-1) * (Q-1) и выбирает случайным образом значение открытого ключа Кв с учетом выполнения условий: 1 < Кв ≤ ϕ (N), НОД( КB, ϕ (N)) = 1.
3) Получатель вычисляет значение секретного ключа kв, используя расширенный алгоритм Евклида при решении сравнения kв ≡ Кв-1 (mod ϕ(N)).
4) Отправитель разбивает исходный открытый текст М на блоки, каждый из которых может быть представлен в виде числа Мi = 0, 1, 2,..., N-1.
5) Отправитель шифрует текст, представленный в виде последовательности чисел Мi по формуле   и отправляет криптограмму С1, С2, Сз, ..., Сi ... пользователю В.
6) Получатель расшифровывает принятую криптограмму С1, С2, Сз, ..., Сi…, используя секретный ключ kв по формуле  .
Также был отмечен нюанс выбора размера блока, так как в случае шифрования каждого символа отдельно имеет место по сути шифр простой замены, и никакого ассиметричного шифрования там нет. Для того, чтобы этого избежать, необходимо разбить сообщение на блоки. Размер блока выбирается следующим образом: для кодирования значения N необходимо определенное количество битов; все закодированные блоки по значениям всегда меньше значения N; следовательно, во избежание неопределенности при заполнении максимального значения битов, нам нужно взять на 1 бит меньше.
                      
                                       
To share this paste please copy this url and send to your friends
RAW Paste Data
Recent Pastes