Алгоритм шифрования RSA — как работает функция mod?
Доброго дня!
Я пытаюсь разобраться в работе функции mod.
До сегодняшнего дня считал, что запись типа A mod B в ответе должна давать остаток отделения A на B.
Сегодня наткнулся на пример в учебном пособии по шифрованию:
"Сначала я выбрал два простых числа. В данном случае были выбраны числа p = 11 и q = 13.
Теперь вычисляем n = pq. Имеем n = 11 * 13 = 143.
Теперь нужно вычислить ф(n) = (p - 1)(q - 1) = (11 - 1)(13 - 1) = 10 * 12 = 120.
Выбираем число e так, чтобы оно было простым относительно ф(n). Здесь было выбрано значение e = 7.
Необходимо определить такое d, чтобы (d)(e) = 1 mod ф(n). Следовательно, (d)(7) = 1 mod 120 ; d должно также быть меньше 120. Находим, что d = 103. (103 умножаем на 7 и получается 721. 721 делим на 120 и получаем 6 с остатком 1.)
Секретный ключ: {103, 143}.
Открытый ключ: {7, 143}.
Предположим, что нужно отправить сообщение "9". С помощью формулы шифрования получаем следующее:
Шифрованный текст = (9)7 mod 143 = 48.
При получении зашифрованной информации она подвергается обработке алгоритмом дешифрования:
Открытый текст = (48)103 mod 143 = 9."
У меня два вопроса:
Почему (d)(7) = 1 mod 120, если остаток от деления 1 на 120 будет 1?
И как в этом примере работает функция mod здесь (9)7 mod 143 = 48. и здесь (48)103 mod 143 = 9?
Запись "A = B mod C" тождественна записи "B - остаток от деления A на C".
"A mod B в ответе должна давать остаток отделения A на B" - пережиток Паскаля)