Я учусь в старшей школе и пишу статью об RSA, и я делаю пример с очень маленькими простыми числами. Я понимаю, как работает система, но я не могу вычислить закрытый ключ, используя расширенный алгоритм Евклида.
Вот что я сделал до сих пор:
- Я выбрал простые числа p=37 и q=89 и вычислил N=3293.
- Я вычислил (p-1)(q-1)=3168
- Я выбрал число e так, чтобы e и 3168 были относительно простыми. Я проверяю это с помощью стандартного алгоритма Евклида, и он работает очень хорошо. мой е=25
Теперь мне просто нужно вычислить закрытый ключ d, который должен удовлетворять ed=1 (mod 3168)
Используя расширенный алгоритм Евклида, чтобы найти такое d, что de+tN=1, я получаю -887•25+7•3168=1. Я отбрасываю 7 и получаю d=-887. Однако попытка расшифровать сообщение не работает.
Я знаю из своей книги, что d должно быть 2281, и это работает, но я не могу понять, как они получают это число.
Кто-нибудь может помочь? Я пытался решить эту проблему в течение последних 4 часов и везде искал ответ. Я выполняю расширенный алгоритм Евклида вручную, но, поскольку результат работает, мои расчеты должны быть правильными.
Заранее спасибо,
Мадс
x
, сначала вычислить обратное значение, а затем возвести его в степень (-x
) (-x
положительно, так какx
отрицательно). - person President James K. Polk   schedule 13.12.2010