КАТЕГОРИИ: Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748) |
Из последнего равенства аналогичным образом для некоторого целого неотрицательного s получаем 4 страница
С другой стороны, у
(остальные члены в биноме Ньютона кратны n). Таким образом, если бы левая часть была равна 1 по модулю n, то выполнялось бы сравнение
А это возможно лишь при условии, что р | (n – 1)/ 2, что невозможно, ибо p | n.
Тест Соловея-Штрассена. На последней теореме основан вероятностный тест на простоту, который выдерживают простые числа с вероятностью 1, а составные – с вероятностью менее ½. Время работы оценивается величиной О(log
Вход: нечетное n. 1. Выбрать случайное х такое, что 1 < x < n- 1. 2. Если 3. Если Определение. Пусть n – нечетное составное число, и пусть n – 1 = 2 b существует число r, 0 то число n называется сильно псевдопростым по основанию b.
Пример. Примерами сильно псевдопростых чисел являются:
781 2047
Теорема. Если n
Доказательство. Учитывая, что в этом случае s = 1, t = (n -1)/2, видим, что число n есть сильно псевдопростое по основанию b тогда и только тогда, когда b
что и требовалось доказать.
Теорема. Если n есть сильно псевдопростое число по основанию b, то оно является и псевдопростым числом Эйлера по основанию b.
Замечание. Утверждение, обратное теореме, неверно. Теорема. Если n есть нечетное составное число, то n является сильно псевдопростым по основанию b для не более чем 1/4 таких оснований, где 0 < b < n.
Тест Миллера-Рабина. На последней теореме и понятии сильно псевдопростого числа основан тест на простоту, который с вероятностью 1 подтверждает простоту числа и с вероятностью менее ¼ ошибается, называя простым число составное. Время работы этого теста оценивается величиной О( Вход: n – нечетное натуральное число, 1. Выбрать случайное х такое, что 2. Если ( продолжать. 3. Вычислить 4. Если продолжать. 5. Вычислять 6. Если
Замечания: 1. При проверке чисел на простоту не всегда нужно ожидать, если есть подозрение, что проверяемое является сильно псевдопростым, что придется иметь дело с очень большими основаниями, по которым это число и является сильно псевдопростым. Например, вычислено, что для чисел не больших 2,5
Такой результат известен, но он зависит от недоказанной пока т.н. расширенной гипотезы Римана (РГР). Его можно сформулировать так:
Теорема (Миллер). Если справедлива РГР и n – составное нечетное число, то n не проходит тест Миллера-Рабина для по крайней мере одного основания b, где 3. В 1986 г. С Голдвассер и Дж. Килиан предложили вероятностный алгоритм, основанный на теории эллиптических кривых, работающий, как ожидается, за полиномиальное время на почти всех входах. Общая схема построения простого числа заданного размера выглядит так: Выбирается случайное натуральное число n такое, что
3. Один метод построения простых чисел. Метод основан на модифицированной теореме Ферма.
Теорема. Пусть
Тогда каждый простой делитель р числа N удовлетворяет сравнению Доказательство. Пусть р – простой делитель числа N, а q – некоторый простой делитель S. Из условий теоремы следует, что в поле F
Обозначим через r порядок элемента а в F
Следствие. Если выполнены условия теоремы и
Действительно, если N равняется произведению не менее двух простых чисел, то каждое из них, согласно утверждению теоремы, не меньше
Противоречие доказывает следствие.
Пусть теперь известно некоторое простое число S. Опираясь на него, будем строить новое простое число N. Выберем для этого случайное четное число R в промежутке
Если выбранное а удовлетворяет указанным соотношениям, то по следствию из последней теоремы число N – простое. Если соотношения не выполняются, то следует выбирать другое число а,и так до тех пор, пока соответствующее, а не будет найдено. Если число
имеет не более
4. Некоторые задачи. Задача 1. Найти все основания b, по которым 15 является псевдопростым числом. (Не принимать во внимание тривиальные основания
Задача 2. Показать, что если одновременно р и 2 р – 1 являются простыми числами и n = p (2 p – 1), то число n является псевдопростым для 50% возможных оснований, именно: для всех b, которые являются квадратичными вычетами по модулю 2 р – 1.
Задача 3. Доказать, что ни одно целое число вида n = 3 p (где р > 3 есть простое число) не может быть псевдопростым по основаниям 2, 5 и 7.
Задача 4. Доказать, что если число n является псевдопростым по основанию 2, то число
Задача 5. Доказать, что если число n является псевдопростым по основанию b и Задача 6. Пусть число n имеет вид р (2 р – 1), где
Задача 7. Доказать, что если число n является псевдопростым по основанию 2, то число
Задача 8. Доказать, что существует бесконечное множество чисел сильно псевдопростых и псевдопростых Эйлера по основанию 2.
Задача 9. Пусть n будет числом Кармайкла 561. (а) Определить количество оснований является псевдопростым Эйлера. (b) Определить количество оснований, по которым число 561 является сильно псевдопростым и выписать эти основания.
Раздел седьмой
1. Задача факторизации. Формулировка задачи выглядит так: Задано: n >1 натуральное. Найти: каноническое разложение числа n, т.е. представить n в виде разложения в произведение степеней простых чисел. В настоящее время неизвестны эффективные алгоритмы решения этой задачи даже, несмотря на то, что она эквивалентна поиску хотя бы одного простого делителя числа n. Лучшие из известных алгоритмов, например, метод квадратичного решета, (включая вероятностные) работают за время
при этом лучшее значение
Границей современных возможностей разложения являются числа порядка Узкая задача факторизации формулируется так: Задано: Найти: р и q. Для такой задачи неизвестно ничего лучшего, чем в общем случае. Некоторые алгоритмы факторизации суженной задачи могут учитывать специфические свойства чисел р и q, поэтому для использования в криптосистемах выбирают т.н. сильные простые. Определение. Простое число р называется сильным простым, если выполняются следующие условия: 1) Число р -1 имеет большой простой делитель r; 2) Число r -1 имеет большой простой делитель; 3) Число р +1 имеет большой простой делитель.
Рассмотрим в качестве примера два алгоритма факторизации, которые применимы для разложения сравнительно небольших чисел.
1) Пробное деление. Это самый элементарный алгоритм факторизации. При его реализации для числа
2) (Р - 1)- метод Полларда. Пусть число Предположим, что нашли
Предположим, что можно подсчитать то же самое по модулям
поскольку С другой стороны, равенство
маловероятно. Следовательно, На псевдокоде этот алгоритм выглядит следующим образом: A = 2; for (j = 2; j <= B; j++) { A = A^ j mod n; } p = (A - 1, n); if (p! = 1 && p!= n) then вывести: «р – делитель n»; else вывести: «результат не получен»; В качестве примерарассмотрим разложение числа n = 15 770 708 441. Выберем В = 180 и прогоним этот алгоритм. В результате получим
Применяя алгоритм Евклида, найдем
Отметим, что в этом примере
Следовательно, Можно показать, что сложность (Р – 1)-метода оценивается как
Значит, выбор К сказанному добавим, что основным приемом в алгоритмах факторизации, который известен весьма давно, является тот, при котором генерируются два целых числа x и y приближенно той же величины, что и n, удовлетворяющих условию
Применяя формулу сокращенного умножения, получим
Если при этом
2. Задача распознавания квадратичности. Формулировка задачи для простого р выглядит так: Задано:
Распознать: существует ли такое у Для решения такой задачи имеются полиномиальные алгоритмы. Один из них связан с вычислением символа Лежандра
3. Задача извлечения корня квадратного по простому модулю. Формулировка задачи для простого р выглядит так: Задано: Найти: такое у Вопрос существования, как показано выше, решается полиномиальным алгоритмом. Поэтому можно считать, что х является квадратичным вычетом. Тогда существует вероятностный алгоритм извлечения корня. Для случая, когда
Вход: р – простое.
Дата добавления: 2014-11-16; Просмотров: 1025; Нарушение авторских прав?; Мы поможем в написании вашей работы! |