Как зашифровать строку алгоритмом rsa? Здравствуйте, я понимаю сам алгоритм rsa, но не понимаю его программной реализации.
Ведь когда я шифрую переменную типа char, то у меня значение должно быть около 2 тысяч, но char лежит в границах от [0;255] именно поэтому когда я переменной присваиваю около 2 тысяч, она берётся по модулю 256 и становится невозможно расшифровать шифрованный текст.

21 Авг 2019 в 07:14
222 +1
0
Ответы
1

Для шифрования строки алгоритмом RSA, вам необходимо следовать следующим шагам:

Выберите два больших простых числа p и q.Вычислите произведение n = p * q.Вычислите значение функции Эйлера от числа n: phi(n) = (p - 1) * (q - 1).Выберите открытую экспоненту e, которая является взаимно простым числом с phi(n) и меньше его.Вычислите закрытую экспоненту d, такую что (e * d) mod phi(n) = 1.

Теперь вы можете шифровать и расшифровывать сообщения следующим образом:

Для шифрования строки message с помощью открытого ключа (e, n) преобразуйте каждый символ строки в число m (где m < n), затем зашифруйте это число с помощью операции c = m^e mod n. Таким образом, в результате вы получите зашифрованную строку ciphertext.

Для расшифрования зашифрованной строки ciphertext с помощью закрытого ключа (d, n) вычислите исходное число m по формуле m = c^d mod n, затем преобразуйте число m обратно в символы и получите исходное сообщение.

Надеюсь, эти шаги помогут вам понять программную реализацию алгоритма RSA для шифрования строки. Если у вас остались дополнительные вопросы, не стесняйтесь задавать их.

20 Апр 2024 в 13:05
Не можешь разобраться в этой теме?
Обратись за помощью к экспертам
Гарантированные бесплатные доработки в течение 1 года
Быстрое выполнение от 2 часов
Проверка работы на плагиат
Поможем написать учебную работу
Прямой эфир