Форум программистов, компьютерный форум, киберфорум
C# .NET
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.66/29: Рейтинг темы: голосов - 29, средняя оценка - 4.66
Заблокирован

Алгоритм RSA. Зашифровать введенное с клавиатуры сообщение, используя открытый ключ

17.02.2014, 06:52. Показов 6280. Ответов 5
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Доброе время суток, форумчане!

Прощу помощи!!! Дело жизни и смерти!

На днях выдали лабораторное задание, которое сказали реализовать именно в С#, с которым мне не доводилось работать раньше! Так что меня можно считать новичком! Прощу вашей помощи в решении этой задачи! Выручайте!!!

Задание такое:
1. Создать программную реализацию алгоритма RSA.
2. Зашифровать введенное с клавиатуры сообщение, используя открытый ключ.
3. Расшифровать сообщение, используя закрытый ключ.


Перед решением этой работы сделал некий анализ и для себя составил такой список последовательных действий:
1 Насколько я понял выбираются два простых числа p и q . (Например, p=7 и q=17).
2. Вычисляется n = p ٠ q. (n = 119).
3. Определяется φ(n)=(p – 1)( q – 1). (φ(n)=96).
4. Выбор числа e, взаимно простого с φ(n), причем e < φ(n). (e =5).
5. Вычисляется d = e−1modϕ (n).
(Определяется такое d, что d ٠ e = 1mod 96 и e < 96. Соответствующим значением будет d = 77, так как 77 ٠5 = 385 = 4 ٠ 96+1).
6. Открытым ключом является {e, n}. ({e, n}={5, 119}).
7. Закрытым ключом является {d, n}. ({d, n}={77, 119}).
8. Шифрование C = Me modn (Если M=19, то 195mod119 = 66) .
9. Дешифрование M = Cd modn (6617 mod119 = 19) .

Выручайте!!! Как все это реализовать в С#? Буду очень благодарен за любую помощь!!!

Добавлено через 12 часов 0 минут
Прощу кому-нибудь откликнуться!!! HELP!
0
Лучшие ответы (1)
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
17.02.2014, 06:52
Ответы с готовыми решениями:

Зашифровать сообщение, используя слово-ключ "mehmat"
надо зашифровать сообщение, используя слово-ключ &quot;mehmat&quot;, 6 букв в слове. допустим, надо зашифровать слово &quot;love&quot;,...

Не удается преобразовать ключ в токен -- Недействительный открытый ключ сборки
Задал вчера строго имя сборки(есть файл .pfx), сегодня хочу через sn вывести открытый ключ, пишет &quot;Не удается преобразовать ключ в...

RSA, как найти закрытый ключ имея открытый ключ, p и q
Прив, задание такое - Как найти закрытый ключ d, если мы знаем открытый ключ e, который равен 5, и простые числа p и q, которые равны 2 и...

5
Почетный модератор
Эксперт .NET
 Аватар для NickoTin
8725 / 3677 / 404
Регистрация: 14.06.2010
Сообщений: 4,513
Записей в блоге: 9
17.02.2014, 13:38
Лучший ответ Сообщение было отмечено Nurzone как решение

Решение

Исходный код и полное описание: RSA Library with Private Key Encryption in C#
2
Заблокирован
17.02.2014, 15:59  [ТС]
NickoTin, Огромное вам спасибо за то, что уделили мне время! Очень интересная и познавательная статья! В самой программе уже разобрался, осталось детально изучить код! Честно признаюсь, для новичка это сложновато... да и сам автор в описании пишет, что программа очень сильная и сложная... Хотелось бы более легкая форма реализации этой задачи... У меня есть еще один маленький вопрос к вам. Где можно найти подобные статьи хоть на английском языке по этой теме на С#? Точнее какие именно сайты вы бы посоветовали бы?! =) Вами предложенный вариант превосходен, но немного сложноват для новичка! Еще раз ОГРОМНОЕ ВАМ СПАСИБО!!! =)
0
Заблокирован
17.02.2014, 16:01
NickoTin, хорошая статья! Мне самой интересно это тема! заинтересовала, я тоже новичок, но можно ли ее реализовать в более легкой форме? А за материал спасибо!
0
Почетный модератор
Эксперт .NET
 Аватар для NickoTin
8725 / 3677 / 404
Регистрация: 14.06.2010
Сообщений: 4,513
Записей в блоге: 9
17.02.2014, 17:51
Цитата Сообщение от Nurzone Посмотреть сообщение
Где можно найти подобные статьи хоть на английском языке по этой теме на С#? Точнее какие именно сайты вы бы посоветовали бы?!
Codeproject, блоги MSDN, другие какие-то блоги.. Каких-то определенных мест я не выделяю, что нужно то и ищу.
Цитата Сообщение от Nurzone Посмотреть сообщение
Вами предложенный вариант превосходен, но немного сложноват для новичка!
Я бы посоветовал сразу изучать хорошие примеры, хоть и сложные, чем простые, но неудачно реализованные.
Строчка за строчкой, постепенно, принесут намного больший результат, чем "тяп-ляп" и готовый пример в одном файле.

Вот вариант проще, но на первый взгляд понять там что-то сложнее чем в этом сложном примере.

http://amirshenouda.wordpress.... ing-rsa-c/
1
Заблокирован
17.02.2014, 19:12  [ТС]
NickoTin, Спасибо еще раз за все советы! Буду досконально во всем разбираться теперь! =)
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
17.02.2014, 19:12
Помогаю со студенческими работами здесь

Открытый ключ RSA 1024
всем привет ) если зайти на сайт с https соединением щелкнуть на замочек и посмотреть информацию о сертификате то одна из строк в таблице...

Открытый ключ RSA из Googl Play как его вставить в еклипс
подскажите есть ли видео обучающее, как вставить открытый ключ RSA (ЛИЦЕНЗИОННЫЙ КЛЮЧ с гугл плея) в еклипсе. инфа есть конечно на гугл...

Зашифровать алгоритмом RSA имея паблик ключ
Вообщем проблема такая, пытаюсь авторизоваться на игровом сервере, в 1 пакете приходит публичный RSA ключ которым потом надо зашифровать...

Алгоритм RSA. Если открытый текст больше 20 символов, то текст не расшифровывается
Есть реализованный алгоритм RSA на Delphi. Все работает нормально. Но только если открытый текст больше 20 символов, то текст не...

RSA алгоритм. Закрытый ключ больше или меньше открытого ключа?
Товарищи, ответьте пожалуйста на вопрос. Закрытый ключ больше или меньше открытого ключа? В методичке прочитал, что закрытый больше...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Новые блоги и статьи
Thinkpad X220 Tablet — это лучший бюджетный ноутбук для учёбы, точка.
Programma_Boinc 23.12.2025
Thinkpad X220 Tablet — это лучший бюджетный ноутбук для учёбы, точка. Рецензия / Мнение Это мой обзор планшета X220 с точки зрения школьника. Недавно я решила попытаться уменьшить свой. . .
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта Симптом: После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
Как объединить две одинаковые БД Access с разными данными
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов На странице: https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/ нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином. Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов. . . .
Ломающие изменения в C#.NStar Alpha
Etyuhibosecyu 20.11.2025
Уже можно не только тестировать, но и пользоваться C#. NStar - писать оконные приложения, содержащие надписи, кнопки, текстовые поля и даже изображения, например, моя игра "Три в ряд" написана на этом. . .
Мысли в слух
kumehtar 18.11.2025
Кстати, совсем недавно имел разговор на тему медитаций с людьми. И обнаружил, что они вообще не понимают что такое медитация и зачем она нужна. Самые базовые вещи. Для них это - когда просто люди. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru