![]() |
|
Модераторы: bsa |
![]()
|
|
| Catherine92 |
|
||||||
|
Новичок Профиль Группа: Участник Сообщений: 4 Регистрация: 12.12.2011 Где: Санкт-Петербург Репутация: нет Всего: нет |
Помогите сформировать программу пожалуйста.
Задание:Задача заключается в шифровании (или дешифровании) данных с помощью алгоритма RSA. Во входном файле rsa.in находится три строки. На первой строке находятся два числа n и d. На второй строке находится число k. На третьей строке находится k кодированных чисел a_0 a_1 .. a_(k-1), где k=0..k В выходной файл rsa.out необходимо вывести k дешифрованных (или все-таки шифрованных?) чисел. Это я сделала считывание данных из файла
Ввод обычного числа в длинное, для дальнейших опреаций..
возведения в степень, неявно использующий двоичное представление(вычисляющий его на лету) и ненуждающийся в long2binary():
А как это объединить и заставить работать не знаю( Модератор: не забываем пользоваться кнопочкой "Код" Это сообщение отредактировал(а) bsa - 12.12.2011, 11:05 |
||||||
|
|||||||
| bsa |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 9185 Регистрация: 6.4.2006 Где: Москва, Россия Репутация: 85 Всего: 196 |
Не уверен, что тебе long подойдет для реализации алгоритма RSA. Обычно, используют числа с разрядностью 512 и выше (даже максимальный long long - только 64).
Почитай это: http://www.di-mgt.com.au/bigdigits.html |
|||
|
||||
| cutwater |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 592 Регистрация: 24.6.2008 Репутация: 2 Всего: 10 |
Я бы предложил использовать библиотеки которые включают в себя работу с большими числами.
Это GMP (http://gmplib.org/) и Miracl (http://www.shamus.ie/) Если нужно решение данной задачи не в академических целях, то будет более правильно использовать уже реализованный алгоритм RSA, например в OpenSSL или Crypto++ |
|||
|
||||
| Catherine92 |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 4 Регистрация: 12.12.2011 Где: Санкт-Петербург Репутация: нет Всего: нет |
Данная программа необходима для сдачи экзамена. Но к сожалею моих знаний на данный момент недостаточно для полного её написания( Поэтому и обратилась на форум.
|
|||
|
||||
| bsa |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 9185 Регистрация: 6.4.2006 Где: Москва, Россия Репутация: 85 Всего: 196 |
Ничего себе экзамены...
Catherine92, я тебе дал ссылку на ПРОСТУЮ библиотеку больших чисел. Там среди прочего есть примеры расчета с ее помощью RSA. Посмотри, почитай. Возьми главное и напиши свою программу используя библиотеку, как подсказку. |
|||
|
||||
| Catherine92 |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 4 Регистрация: 12.12.2011 Где: Санкт-Петербург Репутация: нет Всего: нет |
Спасибо, попробую)
|
|||
|
||||
| cutwater |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 592 Регистрация: 24.6.2008 Репутация: 2 Всего: 10 |
[offtop] Да нормальные экзамены. Мы в свое время писали и библиотеки для работы с большими числами и реализации алгоритмов шифрования на них на лабораторных. |
|||
|
||||
| Catherine92 |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 4 Регистрация: 12.12.2011 Где: Санкт-Петербург Репутация: нет Всего: нет |
может кому пригодиться |
|||
|
||||
![]()
|
| Правила форума "C/C++: Для новичков" | |
|
|
Запрещается! 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, JackYF, bsa. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | C/C++: Для новичков | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |