Квадратичные сравнения. Символы Лежандра и Якоби и их свойства. — КиберПедия 

Опора деревянной одностоечной и способы укрепление угловых опор: Опоры ВЛ - конструкции, предназначен­ные для поддерживания проводов на необходимой высоте над землей, водой...

Наброски и зарисовки растений, плодов, цветов: Освоить конструктивное построение структуры дерева через зарисовки отдельных деревьев, группы деревьев...

Квадратичные сравнения. Символы Лежандра и Якоби и их свойства.

2020-07-07 128
Квадратичные сравнения. Символы Лежандра и Якоби и их свойства. 0.00 из 5.00 0 оценок
Заказать работу

Рассмотрим квадратичные сравнения по модулю простого нечетного числа p

.                                                   (2)

Определение 1. Пусть (a, p) = 1. Число a   называется квадратичным вычетом по mod p, если сравнение (2) разрешимо. Число a   называется квадратичным невычетом по mod p, если сравнение (2) неразрешимо.

30 Пусть (a, m) = 1. Число a   является квадратичным вычетом по mod p тогда и только тогда, когда

.                                                  (3)

Определение 2. Пусть (a, p) = 1. Символом Лагранжа числа a   по mod p называется символ ,читаемый a по p, который равен 1, если a - квадратичный вычет по mod p, и равен -1, если a - квадратичный невычет по mod p.

Из 30 следует, что

.                                               (4)

Символ Лагранжа обладает следующими свойствами:

10 Если a º b (mod p), то .

20 .

30 Если (ab,   p) = 1, то .

40 Если (a,   p) = 1, то .

50 Если (ab,   p) = 1, то .

60  .

70    (дополнительная теорема к закону взаимности).

80 Если p, q – различные нечетные простые числа, то

 (теорема Гаусса, квадратичный закон взаимности).

 

Задание по части 1. Алгоритмы генерации первообразных корней.

  1. Написать программу генерации простых чисел Жермен. Протестировать программу.

Потребуются программы a:=nextprime(a); isprime(p) из ЛР 2.

2. Написать программу нахождения первообразного корня простого числа Жермен. Протестировать программу. Использовать программу нахождения первообразного корня: with(numtheory),  primroot(),  которая имеется в Maple.

Потребуются программа BigStMod из ЛР 2.

  1. Определить среднее время работы программы для нахождения перевообразных корней для простых чисел Жермен порядка 2^512.

 

Алгоритм Диффи-Хелмана.

Создание общего секретного ключа для КС с секретным ключом.

Рассмотрим случай двух абонентов A  и B.

1. Один из абонентов, например A определяет большое число p и вычисляет для него первообразный корень g.

2. Абонент A пересылает по открытому каналу числа p, g абоненту B.

3. Абонент A выбирает случайное число a, 1< a < p -1 и вычисляет число с º ga (mod p).

4. Абонент B выбирает случайное число b, 1< b < p -1 и вычисляет число d º gb (mod p).

5. Абонент A пересылает по открытому каналу число с абоненту B.

6. Абонент B пересылает по открытому каналу число d абоненту A.

7. Абонент A вычисляет число k 1º da (mod p), 0< k 1< p.

8. Абонент B вычисляет число k 2º cb (mod p), 0< k 2< p.

Так как k 1º da º (gb) a º gba º gab º (ga) b º cb º k 2 (mod p), и 0< k 1< p, 0< k 2< p, то 0< k 1= k 2. Следовательно, абоненты A  и B получили общий секретный ключ k = k 1= k 2., который не пересылался по открытому каналу связи.

Крипто аналитику необходимо по числам p, g, c, d, пересылаемым по открытым каналам связи необходимо вычислить общий секретный ключ, а для этого ему будет необходимо вычислить числа a или b, т.е. вычислить a º ind g c (mod p -1) или b º ind g d (mod p -1). Последнее связано с решение трудной задачи «Проблемы дискретного логараифма».

Потребуются программы:

Возведение целого числа в степень по модулю.

Программа вычисления простого числа Жермен.

Программа вычисления первообразного корня для простого числа Жермен.

 

Криптосистема Эль-Гамаля.

Генерация ключей.

Для группы пользователей выбирается большое число p (простое число С.Жермен) и вычисляет для него первообразный корень g.

Получатель секретного сообщения, например, B производит генерацию открытого ключа и закрытого ключа:

1) выбирает секретное число с;

2) вычисляет соответствующее ему открытое число d: d º gc (mod p), 0< d < p;

3) определяет закрытый (секретный) ключ (p, g, c), оставляя его себе;

4) открытый ключ ((p, g, d)) сообщаются всем отправителям сообщений.

Шифрование

  1. Шифруемое сообщение представляется в виде последовательности чисел X 1, X 2,… (0≤ Xi < p, i =1.2,…)

2   Каждый блок Xi, i =1.2,… шифруется по правилу:

1) формируется случайное число k; 0< k < p -1;

2) вычисляется число

Yi º g k (mod p), 0< Yi < p,                                                 (1)

3) вычисляется число

Zi º Xi d k (mod p), 0< Zi < p,                                                 (2)

  1. Получателю B отправляется последовательность чисел Y 1, Z 1, Y 2, Z 2,….,  которая представляет собой зашифрованное сообщение.

Расшифровывание.

Зашифрованное сообщение Y 1, Z 1, Y 2, Z 2,….,  расшифровывается по правилу:

Xi º Z i Yi - c º Z i Yi p -1- c (mod p),                                                  (3)

Ниже доказывается, что полученная последовательность чисел X 1’, X 2’,… (0≤ Xi ’ < p, i =1.2,…), совпадает с исходной последовательностью X 1, X 2,…, которая преобразуется в исходный текст.

Теорема 1. Шифрование с открытым ключом корректно, т.е. в предыдущих обозначениях Xi ’= Xi.

Доказательство. Из (1), (2), (3) получаем

Xi º Z i Yi - c º Z i Yi p -1- c º Xi (gc) k (g k) p -1- c º Xi gc k g k (p -1)- kc º Xi (g p -1) k º Xi (mod p).

Так как 0≤ Xi < p и 0≤ Xi ’ < p, то Xi ’= Xi для всех i =1.2,…. 

Сложностью крипто анализа в КС Эль-Гамаля является сложность решения проблемы дискретного алгоритма.

Потребуются программы.

Возведение целого числа в степень по модулю.

Программа вычисления простого числа Жермен.

Программа вычисления первообразного корня для простого числа Жермен.

Программа преобразования текста в числа с основанием счисления p.

Программа преобразования числа с основанием счисления p в текст.

Написать программы.

Программа генерации ключей El-Gamalia.

Программа решения линейного сравнения по модулю.

Программа шифрования El-Gamalia.

Программа расшифровывания El-Gamalia.

.

Криптосистема Шамира.

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

Пусть два абонента A и B соединены открытой линией связи. Пусть A хочет передать сообщение T абоненту B так, чтобы никто не узнал его содержимого.

1. A выбирает случайное большое простое число p и пересылает его по открытому каналу связи B.

2. A выбирает случайное большое число a взаимно простое с p -1 1< a < p -1 и вычисляет число с, решая сравнение ac º 1 (mod p -1), 1< c < p -1.

3. B выбирает случайное большое число b взаимно простое с p -1 1< b < p -1 и вычисляет число d, решая сравнение bd º 1 (mod p -1), 1< d < p -1.

Передаваемое сообщение представляется в виде последовательности чисел X 1, X 2,… (0≤ Xi < p, i =1.2,…). При этом для кодирования каждого из чисел Xi лучше выбирать случайно новые пары (a, c) и (b, d).

В настоящее время такой шифр, как правило используется для передачи чисел, меньших p, например, для передачи секретных ключей.

Опишем протокол передачи каждого из чисел Xi

1. A выбирает пару (a, c).

2. A вычисляет число Yi º Xi a (mod p), 0< Yi < p, и пересылает его B.                                                   

3. B выбирает пару (b, d).

4. B вычисляет число Zi º Yi b (mod p), 0< Zi < p, и пересылает его A.    

5. A вычисляет число Ui º Zi c (mod p), 0< Ui < p, и пересылает его B.                                                   

6. B вычисляет число Vi º Ui d (mod p), 0< Vi < p (ниже доказывается, что число Vi совпадает с числом Xi.  

Теорема. 1) В результате реализации протокола Шамира получим Vi = Xi.

2) крипто аналитик не может узнать, какое сообщение было передано.

Доказательство. Из условий под пар (a, c) и (b, d) следует, что

ac = 1 + k (p -1), bd = 1 + l (p -1), где k, l Î Z.

Тогда при Xi делящемся на p имеем Vi = Xi =0, а при Xi не делящемся на p имеем

Vi º Ui d º (Zi c) d º Zi cd º (Yi b) cd º (Yi bd) c º (Yi 1+ 1(p- 1)) c º (Yi (Yi p- 1) l) c º (Yi) c º (Xi a) c º º Xi ac º Xi 1 + k (p -1)  º Xi Xi (p -1) k   º Xi (mod p),

Так как 0≤ Xi < p и 0≤ Vi < p, то Vi = Xi для всех i =1.2,….

Доказательство второго утверждения основано на предположении, что злоумышленник, пытающийся определить Xi должен сначала определить c, из условия Ui º Zi c (mod p), 0< Zi < p, затем вычислить Xi из условия Yi c º Xi ac º Xi (mod p), 1< Xi < p. 

Потребуются программы.

Возведение целого числа в степень по модулю.

Программа преобразования текста в числа с основанием счисления p.

Программа преобразования числа с основанием счисления p в текст.


Поделиться с друзьями:

История создания датчика движения: Первый прибор для обнаружения движения был изобретен немецким физиком Генрихом Герцем...

Опора деревянной одностоечной и способы укрепление угловых опор: Опоры ВЛ - конструкции, предназначен­ные для поддерживания проводов на необходимой высоте над землей, водой...

Автоматическое растормаживание колес: Тормозные устройства колес предназначены для уменьше­ния длины пробега и улучшения маневрирования ВС при...

Механическое удерживание земляных масс: Механическое удерживание земляных масс на склоне обеспечивают контрфорсными сооружениями различных конструкций...



© cyberpedia.su 2017-2024 - Не является автором материалов. Исключительное право сохранено за автором текста.
Если вы не хотите, чтобы данный материал был у нас на сайте, перейдите по ссылке: Нарушение авторских прав. Мы поможем в написании вашей работы!

0.027 с.