Некоторые примеры использования вынесения общего множителя в криптографии:
- Мультипликативный шифр. www.geeksforgeeks.org В нём большое простое число используется в качестве ключа умножения, а затем модульная арифметика целых чисел применяется для кодирования и декодирования открытого текста. www.geeksforgeeks.org Процесс шифрования осуществляется путём умножения числового значения каждой буквы в открытом тексте на ключ, а затем умножения результата по модулю ключа. www.geeksforgeeks.org
- Алгоритм RSA. proglib.io В нём для создания открытого и закрытого ключей выбираются два случайных, стохастически независимых и простых числа p и q. proglib.io Затем вычисляется их произведение N = p |* q. proglib.io Далее вычисляется φ-функция: φ(N) = (p – 1) |* (q – 1). proglib.io Затем выбирается простое натуральное число e, которое меньше значения φ(N) и является кратным по отношению к нему. proglib.io После этого вычисляется мультипликативная обратная величина k от e по модулю φ(N). proglib.io N и e теперь являются открытыми ключами, которые будут использоваться для шифрования сообщения. proglib.io Обратный ключ для расшифровки зашифрованного сообщения, k, является закрытым ключом. proglib.io
Сложность задачи факторизации используется в некоторых криптографических алгоритмах, например, в системе шифрования RSA. intuit.ru