Lt304888.ru

Туристические услуги

Общий метод решета числового поля

29-05-2023

Общий метод решета числового поля (GNFS англ. general number field sieve) — метод факторизации целых чисел. Метод является наиболее эффективным алгоритмом факторизации целых чисел [1]. Эвристическая оценка сложности факторизации числа n (содержащего log2 n бит) выражается формулой

[2]

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

Общий и специальный методы решета числового поля являются улучшением метода квадратичного решета.


Содержание

Основные принципы

Описание работы метода даже в первом приближении сложно. Поэтому остановимся на описании принципов лежащих в его основе

  • Метод факторизации Ферма для факторизации натуральных нечетных чисел n, состоящий в поиске таких целых чисел x и y, что , что ведет к разложению .
  • Нахождение подмножества множества целых чисел, произведение которых — квадрат[3]
  • Факторная база: набор , где pi — простые числа такие, что для некоторого B.
  • Просеивание[3]

Основная идея состоит в том, чтобы вместо перебора чисел и проверки, делятся ли их квадраты по модулю n на простые числа из базы, следует перебирать по очереди простые числа из базы и сразу для всех чисел вида проверять, делятся ли они на очередное p и его степени.

Метод основан на решете Эратосфена (откуда и получил своё название). Решетом служат простые числа факторной базы и дополнительно их небольшие степени, и при просеивании мы числа не вычёркиваем, а делим на эти простые. Те числа, что перейдут в 1, будут B-гладкими.

Рекордные достижения

Известные разложения наибольших чисел были получены в 1999 году. Это было сначала 140-значное RSA-число[4], и затем 155-значное[5], на которое потребовалось более 8000 mips лет.

Программные реализации

Проект под названием NFSNET работал с 2002[6] до по крайней мере 2007 года. Он использовал вычислительные мощности добровольцев через Интернет.[7]

До 2007 года наиболее успешной реализацией считалось программное обеспечение разработанное и распространяемое Центром математики и информатики в Нидерландах, который был доступен только под относительно закрытой лицензией. В 2007 году Джэйсон Пападопулус разработал более быструю открытую реализацию как часть msieve[8]. Обе реализации пригодны для работы в кластере.

Примечания

  1. [1]
  2. A Tale of Two Sieves (PDF) (December 1996), стр. 1473–1485.
  3. ↑ Факторизация больших целых чисел и криптография.
  4. Cavallar S., Dodson B., Lenstra A. K., Leyland P. C., Lioen W. M., Montgomery P. L., Murphy B., te Riele H. J. J., Zimmerman P. Factorization of RSA-140 using the number field sieve / CWI Report MAS-R9925, September 1999.
  5. Cavallar S., Lioen W. M., te Riele H. J. J., Dodson B., Lenstra A. K., Montgomery P. L., Murphy B. et al. Factorization of 512-bit RSA-modulus / CWI Report MAS-R0007, February 2000.
  6. NFSNET: the first year. Presentation at EIDMA-CWI Workshop on Factoring Large Numbers (December 12, 2003). Архивировано из первоисточника 5 сентября 2012. Проверено 9 августа 2011.
  7. Welcome to NFSNET (April 23, 2007). Архивировано из первоисточника 22 октября 2007. Проверено 9 августа 2011.
  8. SourceForge.net: Msieve — Project Web Hosting — Open Source Software

Общий метод решета числового поля.

© 2020–2023 lt304888.ru, Россия, Волжский, ул. Больничная 49, +7 (8443) 85-29-01