Обновить
2
-0.3
Сергей Рогач @rserge

C++, алгоритмы, оптимизация быстродействия, ИИ

Отправить сообщение

посмотрите выше в комментариях - там решето уже обсуждалось (GNFS), вроде получилось медленнее для 512 бит, а 876 бит им вообще не взяли факторизацию.

вот только вроде как конкурс закрыли в 2007-м году: https://en.wikipedia.org/wiki/RSA_numbers . Или есть теперь другие конкурсы по факторизации?

спасибо Вам большое что сообщили, я не знал. Сейчас прямо вычисляю, но наверное другое число 2048-битное.

Для начала разберёмся, какой алгоритм использует CADO-NFS: https://chatgpt.com/share/68a3e312-c7c8-8000-abc5-9f7f1cf7bb44 . В кратце, числовое решето.

  1. Этот алгоритм легко распределяется на много потоков и/или машин, поэтому 6-ядерный десктопный Ryzen 3600 должен быть помощнее, чем одноядерный ноутбучный 13980HX.

  2. В моей статье используется совершенно другой алгоритм, а именно выполнимость булевых формул.

Эффективность факторизации трудно оценивать. Тот алгоритм работает за его алгоритмическую сложность, и нахождения числа - вероятностно, как я понимаю. Здесь же в статье используется алгоритм, чья алгоритмическая сложность в худшем случае - невообразимое число даже на квантовых компьютерах. Но эвристики делают его практичным.

Да, для разных чисел может существенно отличаться время работы солвера.

Смотрите ответ выше - формула для RSA-512 стала в 10-15 раз больше чем для RSA-512. Конечно, это вопрос алгоритма решения выполнимости булевых формул - с текущим экспоненциальным алгоритмом и ускоряющими эвристиками, мы никогда не знаем, займёт это неделю или больше чем всё время Вселенной. Плюс для разных чисел сложность может существенно отличаться.

Да, нормально так отличается формула - в 10-15 раз больше переменных и выражений для RSA-2048:

RSA-2048
RSA-2048

Так это ноутбучный проц, только 36 МБ кеша, а пыльный потому что ноут давно в чистку не сдавал. В итоге частота далека от заявленных 5.6 ГГц, а ноут с Ryzen 9955HX3D работает в разы быстрее на том же одном ядре, особенно когда данные в кеш вмещаются.

Да, формулы получаются немаленькие, но некоторые эвристики их берут. В данном случае, для RSA-512 получается формула из 202657 переменных и 1127580 выражений.

Сделал только что применение для этого движка: probqa.com. Сайт служит как система рекомендации игр для пользователей, которые слабо представляют, во что они следующее хотели бы поиграть. Не зная ключевых слов для поиска и описаний тысяч существующих игр, пользователь всё ещё может отвечать на вопросы путём кликанья на один из 5 вариантов ответа, и на каждом шаге получать список наиболее вероятных для него игр, исходя из ранее полученных программой ответов.
Книжки по физике на одну тему или на разные? Язык английский? Для русского не факт что моя программа работает сейчас.
В плане рекомендации, после «Гарри Поттера» действительно я бы лучше стал читать «Звёздные войны» чем Толкиена. По крайней мере фильмы и тот, и другой просмотрел, а «Властелин колец» смотреть не смог, выключил. У Толкиена специфический набор слов — все эти вымышленные персонажи как имена нарицательные. Это почти как другой язык получается.
Согласен что рискованно, и сейчас действительно работ на C++ не так много как на Java и JavaScript. Но кроме C++ хватало, с чем ещё приходилось работать, от ассемблера до JavaScript, только что основным ничего из этого не стало. А вот скучно ли — зависит только от того, чем заниматься.

Информация

В рейтинге
Не участвует
Откуда
Poznan, Wielkopolskie, Польша
Дата рождения
Зарегистрирован
Активность