Рейтинг:-1

Почему RSA не использует составные числа?

флаг kr

В настоящее время я пишу математическую статью о важности простых чисел в шифровании RSA. Я понимаю, что генерирует д х р = Н (где p и q — простые числа) прост для компьютера, однако разложение N на два его простых числа маловероятно за разумное время.

Как упоминалось ранее, я обращаюсь к важности простых чисел. Я думаю, что причина их важности заключается в том, что если RSA использует составные числа, их можно разбить на более мелкие числа, поскольку они составные, что упрощает факторизацию, однако я не уверен, что это правильное рассуждение.

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

kelalaka avatar
флаг in
Отвечает ли это на ваш вопрос? [RSA с модульным произведением многих простых чисел] (https://crypto.stackexchange.com/questions/11287/rsa-with-modulus-product-of-many-primes). Он называется Multi-Prime RSA, и даже существует стандарт для него. Обратите внимание, что исходный модуль RSA уже является составным числом и имеет специальное имя; [полупростой] (https://en.wikipedia.org/wiki/Semiprime)
Jackwannsee avatar
флаг kr
@kelalaka Я прочитал прикрепленную вами ветку, однако я все еще в замешательстве, поскольку спрашивал, можно ли использовать составные числа, а не кратные простые числа, такие как * n = p x q x r * (где p, q и r - простые числа)
kelalaka avatar
флаг in
Произвольное составное число будет иметь много мелких делителей. Ищите это.
kelalaka avatar
флаг in
Вы спрашиваете что-то вроде этого; выбрать случайное число $N$, если оно простое, отбросить его. Теперь мы можем использовать это как модуль RSA? Конечно 1) если вы можете разложить $N$ на множители, чтобы найти $\phi(N)$, если вы можете разложить на множители всех, так что никакой безопасности 2) убедитесь, что это не гладкое число.
Jackwannsee avatar
флаг kr
@kelalaka нет, но спасибо за ответ на мой вопрос. Я спрашивал, меняет ли использование непростых чисел для p и q эффективность/безопасность шифрования RSA. Меня не волнует, является ли * N * простым или не простым
Рейтинг:1
флаг in

Чтобы создать пару закрытых открытых ключей, нам нужно знать факторизацию N. Если мы выберем N как случайное составное число, мы ничем не лучше злоумышленника. Если мы сможем найти факторы, сможет и атакующий.

Если мы выберем p и q как случайные числа, нам нужно будет разложить их на множители, чтобы найти множители N, это может быть легко или сложно. Но, в конце концов, мы хотим, чтобы N было трудно разложить на множители. Мы хотим, чтобы N не имел малых множителей, которые помогут его разложить на множители.

С тем чтобы обеспечить: а. Генератор секретного ключа знает множители N б. Злоумышленник не может легко найти любой фактор N

Мы выбираем случайные большие простые числа p,q и перемножаем их, чтобы получить N.

Существуют также варианты RSA с несколькими простыми числами, в которых для создания N используется более двух простых чисел, но мы по-прежнему начинаем с больших простых чисел.

Jackwannsee avatar
флаг kr
Я понимаю вариант RSA с несколькими простыми числами, однако я не буду рассматривать его в своей статье из-за количества слов. Тем не менее, я все еще в замешательстве, поскольку мой первоначальный вопрос не о выборе случайного числа, равного N, однако, если использование составных чисел, которые объединяются для получения N, все еще возможно/безопасно в отношении шифрования RSA. Я надеюсь, что то, что я говорю, имеет смысл, я все еще новичок в шифровании.
Meir Maor avatar
флаг in
Если вы выберете составные p и q, вы можете получить N, который легко разложить на множители. Он почти наверняка будет включать малые множители. С другой стороны, генератору ключей может быть трудно учитывать p и q.
Jackwannsee avatar
флаг kr
Для ясности, N легче факторизовать, поскольку наличие непростых чисел (составных чисел) упрощает факторинг, поскольку его можно разбить на более мелкие числа (невозможно с простыми числами, так как это только само и 1), уменьшая время вычислений? Кроме того, уменьшает ли использование простых чисел время вычислений для создания как закрытого, так и открытого ключа?
Meir Maor avatar
флаг in
Чтобы сгенерировать пару ключей, вы должны знать факторизацию N. Если вы выбрали p,q, вы уже знаете это. Если они составные, вы должны сначала разложить их на множители, что может быть очень сложно.

Ответить или комментировать

Большинство людей не понимают, что склонность к познанию нового открывает путь к обучению и улучшает межличностные связи. В исследованиях Элисон, например, хотя люди могли точно вспомнить, сколько вопросов было задано в их разговорах, они не чувствовали интуитивно связи между вопросами и симпатиями. В четырех исследованиях, в которых участники сами участвовали в разговорах или читали стенограммы чужих разговоров, люди, как правило, не осознавали, что задаваемый вопрос повлияет — или повлиял — на уровень дружбы между собеседниками.