Алгоритм шифрования RSA
Алгоритм работы RSA
Отправитель выбирает два очень больших простых числа p и q и вычисляет два произведения N=P*Q и M=(P-1)(Q-1).
Затем он выбирает случайное число D, взаимно простое с M, и вычисляет E, удовлетворяющее условию D*E=1 mod M.
После этого он публикует D и N как свой открытый ключ шифрования, сохраняя E (в паре с N) как закрытый ключ.
Чтобы зашифровать данные по известному ключу {D,N}, необходимо сделать следующее:
разбить шифруемый текст на блоки, каждый из которых может быть представлен в виде числа S(i)=0,1, ... ,N-1;
зашифровать текст, рассматриваемый как последовательность чисел S(i) по формуле S'(i)=(S(i)D) mod N.
Чтобы расшифровать эти данные, используют секретный ключ {E,N}, необходимо выполнить следующие вычисления: S''(i)=S(i)=(S'(i)E) mod N.
В результате будет получено множество чисел S''(i), которые представляют собой исходный текст.
Схема использования ЭЦП RSА.
Сначала необходимо вычислить пару ключей (секретный ключ и открытый ключ). Для этого отправитель (автор) электронных документов вычисляет два больших простых числа Р и Q, затем находит их произведение N=Р*Q и значение функции (N)=(Р-1)(Q-1).
Отправитель сжимает сообщение M при помощи криптографической хеш-функции h в целое число m=h(M).
Отправитель вычисляет значение цифровой подписи S для сообщения M на основе ранее полученного значения хеш-образа m и значения своего закрытого (секретного) ключа подписи KC. Для этого используется преобразование, аналогичное преобразованию, выполняемому при расшифровывании по алгоритму RSA: S=mЕ(modN).
Пара (M, S) передается партнеру-получателю как электронный документ М, подписанный цифровой подписью S, причем подпись S сформирована обладателем секретного ключа E.
После приема пары (М, S) получатель вычисляет хэш-значение сообщения М двумя разными способами. Прежде всего он восстанавливает хэш-значение m', применяя криптографическое преобразование подписи S с использованием открытого ключа D: m'=SD(modN).
Кроме того, он находит результат хэширования принятого сообщения М с помощью такой же хэш-функции h(): m=h(M).
Если соблюдается равенство вычисленных значений, т.е. SD(modN)=h(M), то получатель признает пару (М, S) подлинной.
Варианты заданий
2. Рассмотреть следующие алгоритмы хэш-функции: MD2, MD4, MD5, SHA-1 и ГОСТ 34.311-95.
Если не удалось найти и скачать доклад-презентацию, Вы можете заказать его на нашем сайте. Мы постараемся найти нужный Вам материал и отправим по электронной почте. Не стесняйтесь обращаться к нам, если у вас возникли вопросы или пожелания:
Email: Нажмите что бы посмотреть