|
0 / 0 / 0
Регистрация: 22.02.2018
Сообщений: 25
|
||||||
Алгоритм возведения в степень по модулю14.07.2018, 01:04. Показов 8625. Ответов 19
Метки нет (Все метки)
Доброго времени суток! Пишу алгоритм для декодирования шифра RSA. В этом алгоритме требуется возводить очень большое число в очень большую степень по очень большому модулю. Написал алгоритм, верность его математически доказана.
Подскажите, пожалуйста, где ошибка.
0
|
||||||
| 14.07.2018, 01:04 | |
|
Ответы с готовыми решениями:
19
Алгоритм для быстрого возведения в степень Как работает алгоритм возведения числа a в степень n ? Написал программу для возведения числа X в степень N по модулю P. Как можно уменьшить макс. время работы программы? |
|
1469 / 1010 / 456
Регистрация: 30.10.2017
Сообщений: 2,799
|
|
| 14.07.2018, 01:29 | |
|
Я в RSA не шарю, но имейте ввиду, что
unsigned long long вмещает числа в диапазоне [0, 18 446 744 073 709 551 615].
0
|
|
|
0 / 0 / 0
Регистрация: 22.02.2018
Сообщений: 25
|
|
| 14.07.2018, 01:33 [ТС] | |
|
Дело в том, что все числа, которые могут появится в возведении в степень, намного меньше предела unsigned long long. Проверено. Тут проблема в чём-то другом. А что до самого RSA - так тут его знания и не нужны, тут просто алгоритм возведения в степень по модулю.
0
|
|
|
1394 / 1023 / 325
Регистрация: 28.07.2012
Сообщений: 2,813
|
|
| 14.07.2018, 01:45 | |
Сообщение было отмечено Mad_Programmer как решение
Решение
1
|
|
|
1469 / 1010 / 456
Регистрация: 30.10.2017
Сообщений: 2,799
|
||||||
| 14.07.2018, 01:47 | ||||||
0
|
||||||
|
Злостный нарушитель
10304 / 5726 / 1269
Регистрация: 12.03.2015
Сообщений: 26,525
|
|
| 14.07.2018, 01:52 | |
|
0
|
|
|
1469 / 1010 / 456
Регистрация: 30.10.2017
Сообщений: 2,799
|
|
| 14.07.2018, 01:53 | |
|
Verevkin, первое, второе, четвертое число передается в аргументах, третее он хочет видеть в возвращаемом значении.
0
|
|
|
Злостный нарушитель
10304 / 5726 / 1269
Регистрация: 12.03.2015
Сообщений: 26,525
|
|
| 14.07.2018, 01:56 | |
|
0
|
|
|
1469 / 1010 / 456
Регистрация: 30.10.2017
Сообщений: 2,799
|
|
| 14.07.2018, 01:59 | |
|
Verevkin, степень, равно, остаток от деления.
Добавлено через 2 минуты Verevkin, он правда неверно написал. Надо было 4051753 ^ 6111579 mod 9173503 = 111111
0
|
|
|
7438 / 5030 / 2892
Регистрация: 18.12.2017
Сообщений: 15,692
|
|
| 14.07.2018, 02:07 | |
|
4051753 ^ 6111579 значительно превышает максимальное значение типа unsigned long long
Поправьте если ошибаюсь - например взяли числа меньше 10^100000 - получили 1 с 100000 нулями
0
|
|
|
Злостный нарушитель
10304 / 5726 / 1269
Регистрация: 12.03.2015
Сообщений: 26,525
|
||
| 14.07.2018, 02:07 | ||
|
a ^ b % с = 111111 выразить это: a ^ b = ?
0
|
||
|
1469 / 1010 / 456
Регистрация: 30.10.2017
Сообщений: 2,799
|
|
| 14.07.2018, 02:08 | |
|
Yetty, лишнее отсекается остатком от деления. Но у него переполнение при двойном произведении, как выше написали.
Добавлено через 29 секунд Verevkin, надо просто посчитать a ^ b % c
0
|
|
|
Злостный нарушитель
10304 / 5726 / 1269
Регистрация: 12.03.2015
Сообщений: 26,525
|
|
| 14.07.2018, 02:11 | |
|
0
|
|
|
1469 / 1010 / 456
Регистрация: 30.10.2017
Сообщений: 2,799
|
|
| 14.07.2018, 02:12 | |
|
Verevkin, 111111 - это возвращаемое значение, которое он ожидает. Он изначально число 111111 зашифровал, а теперь этой функцией расшифровывает.
0
|
|
|
1394 / 1023 / 325
Регистрация: 28.07.2012
Сообщений: 2,813
|
|
| 14.07.2018, 02:16 | |
|
0
|
|
|
Злостный нарушитель
10304 / 5726 / 1269
Регистрация: 12.03.2015
Сообщений: 26,525
|
|
| 14.07.2018, 02:17 | |
|
0
|
|
|
7438 / 5030 / 2892
Регистрация: 18.12.2017
Сообщений: 15,692
|
|
| 14.07.2018, 02:18 | |
|
0
|
|
|
1469 / 1010 / 456
Регистрация: 30.10.2017
Сообщений: 2,799
|
|||||||
| 14.07.2018, 02:22 | |||||||
|
nonedark2008, странная какая то нотация. Есть пример? Потому как его пример, например, тут по другому написан.
https://ru.wikipedia.org/wiki/RSA Добавлено через 2 минуты Yetty, чтобы не вникать в его рекурсию я просто в начало его функции добавил эту строку и убедился, что числа не сильно растут.
0
|
|||||||
|
1394 / 1023 / 325
Регистрация: 28.07.2012
Сообщений: 2,813
|
|||
| 14.07.2018, 10:20 | |||
a сравнимо c b по модулю числа m. Лучше в учебнике по дискретной математике почитать.Добавлено через 2 минуты
0
|
|||
|
1469 / 1010 / 456
Регистрация: 30.10.2017
Сообщений: 2,799
|
||
| 14.07.2018, 11:02 | ||
0
|
||
| 14.07.2018, 11:02 | |
|
Помогаю со студенческими работами здесь
20
Придумать алгоритм вычисления квадратного корня, не использую функции возведения в степень Алгоритм быстрого возведения в степень по модулю Подскажите алгоритм возведения числа в степень по модулю Алгоритм Возведения в Степень
Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
SDL3 для Web (WebAssembly): Работа со звуком через SDL3_mixer
8Observer8 08.02.2026
Содержание блога
Пошагово создадим проект для загрузки звукового файла и воспроизведения звука с помощью библиотеки SDL3_mixer. Звук будет воспроизводиться по клику мышки по холсту на Desktop и по. . .
|
SDL3 для Web (WebAssembly): Основы отладки веб-приложений на SDL3 по USB и Wi-Fi, запущенных в браузере мобильных устройств
8Observer8 07.02.2026
Содержание блога
Браузер Chrome имеет средства для отладки мобильных веб-приложений по USB. В этой пошаговой инструкции ограничимся работой с консолью. Вывод в консоль - это часть процесса. . .
|
SDL3 для Web (WebAssembly): Обработчик клика мыши в браузере ПК и касания экрана в браузере на мобильном устройстве
8Observer8 02.02.2026
Содержание блога
Для начала пошагово создадим рабочий пример для подготовки к экспериментам в браузере ПК и в браузере мобильного устройства. Потом напишем обработчик клика мыши и обработчик. . .
|
Философия технологии
iceja 01.02.2026
На мой взгляд у человека в технических проектах остается роль генерального директора. Все остальное нейронки делают уже лучше человека. Они не могут нести предпринимательские риски, не могут. . .
|
|
SDL3 для Web (WebAssembly): Вывод текста со шрифтом TTF с помощью SDL3_ttf
8Observer8 01.02.2026
Содержание блога
В этой пошаговой инструкции создадим с нуля веб-приложение, которое выводит текст в окне браузера. Запустим на Android на локальном сервере. Загрузим Release на бесплатный. . .
|
SDL3 для Web (WebAssembly): Сборка C/C++ проекта из консоли
8Observer8 30.01.2026
Содержание блога
Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
|
SDL3 для Web (WebAssembly): Установка Emscripten SDK (emsdk) и CMake для сборки C и C++ приложений в Wasm
8Observer8 30.01.2026
Содержание блога
Для того чтобы скачать Emscripten SDK (emsdk) необходимо сначало скачать и уставить Git: Install for Windows. Следуйте стандартной процедуре установки Git через установщик. . . .
|
SDL3 для Android: Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 29.01.2026
Содержание блога
Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами. Версия v3 была полностью переписана на Си, в. . .
|