2012-10-07 2 views
0

Я довольно новичок в программировании и провел курс криптографии на Coursera, прежде чем я изучил Python. Недавно, в качестве проекта, я хотел написать свой собственный код для алгоритма RSA. Я только что закончил писать процесс шифрования, который является как таковой:Время вычисления для RSA?

enter image description here

Однако программа работает сейчас и занимает много времени. Я заметил, что ключи и модулы потребовали много времени для вычисления из-за огромных размеров. Поскольку я новичок во всем этом, я не знаю достаточно и задавался вопросом, есть ли способ ускорить этот процесс?

Если мой код требуется для публикации, я могу это сделать, однако я бы предпочел более общий ответ о том, как ускорить код.

Thanks

+1

Да, код необходим для нас, чтобы помочь вам. – Femaref

+3

Используете ли вы трехпараметрическую форму встроенной функции 'pow' Python? Если нет, вы можете посмотреть на это. ('help (pow)') –

+2

SO не является подходящим местом для запроса «общего ответа». –

ответ

2

Я тоже прошел курс по курсуре. Вы должны проверить следующие библиотеки, это может значительно увеличить ваши расчеты:

1.) http://userpages.umbc.edu/~rcampbel/Computers/Python/lib/numbthy.py (check the powmod function) 
2.) gmpy2 (gmpy2.readthedocs.org/en/latest/mpz.html) 
3.) mpmath (code.google.com/p/mpmath/) 
Смежные вопросы