Рабочая программа по дисциплине «Теоретико-числовые методы в криптографии» для студентов специальности «Компьютерная безопасность» ТюмГУ, и задания для самостоятельного выполнения с ответами к ним





НазваниеРабочая программа по дисциплине «Теоретико-числовые методы в криптографии» для студентов специальности «Компьютерная безопасность» ТюмГУ, и задания для самостоятельного выполнения с ответами к ним
страница7/16
Дата публикации18.08.2013
Размер3.85 Mb.
ТипУчебное пособие
100-bal.ru > Математика > Учебное пособие
1   2   3   4   5   6   7   8   9   10   ...   16

§6. Первообразные корни и индексы. Порождающий элемент и дискретный логарифм.


В этом параграфе рассмотрены теоретико-числовые основы, ведущие к задачам дискретного логарифмирования над конечным полем, а также приведены некоторые приложения теории конечных групп к таким вопросам как тесты на простоту и построение простых чисел.

  1. 6.1. Основные понятия и теоремы.


При (a,m)=1 существуют положительные γ с условием aγ≡1(mod m). Наименьшее из таких γ называется показатель, которому a принадлежит по модулю m.

В том, что такие γ существуют, можно убедиться, вспомнив теорему Эйлера (γ=φ(m)).

Возвращаясь к основам общей алгебры, в частности, к теории конечных групп, можно сказать, что показатель, которому которому a принадлежит по модулю m есть то же самое, что порядок элемента a в конечной мультипликативной группе m, · mod m>. Далее будем обозначать его Om(a).

Поскольку дальнейшие построения будут тесно связаны с группой m, · mod m>, то на протяжении текущего параграфа для краткости будем обозначать эту группу как Um.

Докажем несколько важных теорем, описывающих свойства Om(a):

Теорема 1.

Числа 1=a0, a1, a2, … , несравнимы между собой по модулю m.

Доказательство:

Действительно, из того, что alak(mod m), 0 ≤ k < l < Om(a) следовало бы, что alk≡1(mod m), 0 < kl < Om(a), что противоречит определению Om(a).

 

Теорема 2.

Пусть δ= Om(a). Тогда aγaβ (mod m) γ≡β(mod δ).

Доказательство:

Из теоремы 1 следует, что если aγaβ (mod m) , то γ≡β(mod δ).

Пусть теперь γ≡β(mod δ) Тогда, по теореме делимости, найдутся такие числа q, w, r: 0 ≤ r < δ, что γ=δ·q+r, β=δ·w+r. Тогда из того, что aδ≡1(mod m) следует, что

aγaδq+r≡(aq)δarar(mod m)

aβaδw+r≡(aw)δarar(mod m)

Что и требовалось доказать.

 

Теорема 3.

Om(a)\φ(m).

Доказательство:

Следует из Теоремы 2 при β=0 и из теоремы Эйлера (aφ(m)≡1(mod m)).

 

Последняя теорема также может быть доказана как следствие из теоремы Лагранжа (порядок любого элемента в группе делит порядок группы) применительно к группе Um.

Числа, принадлежащие показателю φ(m) (если они существуют), называются первообразными корнями по модулю m.

Если a – первообразный корень по модулю m, то согласно Теореме 1, числа 1=a0, a1, a2, … , aφ(m)-1 несравнимы между собой по модулю m, а раз их φ(m) штук, то они образуют приведенную систему вычетов по модулю m. Тогда a есть ни что иное как порождающий элемент группы Um.

Утверждение

Если существует первообразный корень по модулю m, то мультипликативная группа Um является циклической группой.

Доказательство очевидным образом следует из вышесказанного.

Пример 1.

Рассмотрим группу U11=<{1,2,3,4,5,6,7,8,9,10},· mod m>. Порядок этой группы равен φ(11)=10. Найдем порядки всех элементов в этой группе и отыщем порождающий элемент этой группы, если он существует. Для краткости вместо ab mod 11 будем писать просто ab.

1: 10=1, 11=1. O11(1)=1.

2: 20=1, 21=2, 22=4, 23=8, 24=5, 25=10, 26=9, 27=7, 28=3, 29=6, 210=1. O11(2)=10.

3: 30=1, 31=3, 32=9, 33=5, 34=4, 35=1. O11(3)=5.

4: 40=1, 41=4, 42=5, 43=9, 44=3, 45=1. O11(4)=5.

5: 50=1, 51=5, 52=3, 53=4, 54=9, 55=1. O11(5)=5.

6: 60=1, 61=6, 62=3, 63=7, 64=9, 65=10, 66=5, 67=8, 68=4, 69=2, 610=1. O11(6)=10.

7: 70=1, 71=7, 72=5, 73=2, 74=3, 75=10, 76=4, 77=6, 78=9, 79=8, 710=1. O11(7)=10.

8: 80=1, 81=8, 82=9, 83=6, 84=4, 85=10, 86=3, 87=2, 88=5, 89=7, 810=1. O11(8)=10.

9: 90=1, 91=9, 92=4, 93=3, 94=5, 95=1. O11(9)=5.

10: 100=1, 101=10, 102=1. O11(10)=2.

Действительно, порядки всех элементов делят порядок группы. При этом в группе U11 нашлись порождающие элементы, причем не один, а четыре. Это 2, 6, 7 и 8. Однако не во всех группах Um существуют порождающие элементы, убедимся в этом на следующем примере:

Пример 2.

Рассмотрим группу U8=<{1,3,5,7},· mod 8>, φ(8)=4.

1: 10=1, 11=1. O8(1)=1.

3: 30=1, 31=3, 32=1. O8(3)=2.

5: 50=1, 51=5, 52=1. O8(5)=2.

7: 70=1, 71=7, 72=1. O8(7)=2.

Итак, в группе U8 нет порождающего элемента.

Возникает вопрос – в каких группах Um порождающий элемент существует, а в каких – нет, и как найти порождающий элемент? На этот вопрос ответим в следующих пунктах данного параграфа.

  1. 6.2. Существование первообразных корней по модулю p.



Лемма 1.

Om(x)=ab Om(xa)=b.
Лемма 2.

Om(x)=a, Om(y)=b, (a,b)=1 Om(xy)=ab.

Доказательства этих лемм не представляют принципиальной сложности, поэтому предоставляются читателю в качестве упражнения.
Теорема 1 (Критерий Люка).

В группе Up , p – простое число, существуют порождающие элементы.

Доказательство:

Действительно, пусть δ1, δ2, … , δr – все различные показатели, которым по модулю p принадлежат числа 1,2,…,p—1 (то есть порядки этих чисел в Up). Пусть τ=НОК(δ12,… ,δr), и τ= - каноническое разложение. Каждый множитель этого разложения делит хотя бы одно из чисел δ1,…,δr. Поэтому можем представить одно из таких чисел как δj=a . Пусть ξj – одно из чисел ряда 1, 2, … , p—1: Opj)=δj.

Тогда, согласно Лемме 1, Op(η)= , где η= .

Согласно Лемме 2, Op(g)=τ= , где g1η2…ηk.

Поэтому, согласно Теореме 3, п.1, τ\(p—1).

Но поскольку числа δ1, δ2, … , δr делят τ, то любое из чисел ряда 1, 2, … , p—1 является решением сравнения xτ≡1(mod p), согласно Теореме 2, п.1.

Пользуясь Теоремой 1, §4, п.4, получаем p—1≤τ. Но τ как порядок элемента g не может быть больше, чем p—1, поэтому p—1=τ, а значит g – первообразный корень, или порождающий элемент группы Up .

 
  1. 6.3. Первообразные корни по модулям pα, 2pα.



Теорема (о существовании первообразного корня по модулю pα)

Пусть g – первообразный корень по модулю p, тогда существуют такое число t, что u= не делится на p, и тогда g+pt – первообразный корень по модулю pα α>1.

Замечание

Число u, заданное условием, является целым в силу теоремы Ферма. Действительно, поскольку g Up, то (g,p)=1 (g+pt,p)=1 по теореме Ферма, (g+pt)p1≡1(mod p) p\((g+pt)p1 –1).

Доказательство:

Имеем:

gp1=1+pT0

(g+pt)p1=1+p(T0gp2t+pT)=1+pu *

где если t пробегает Zp, то и u пробегает Zp (полную систему вычетов по модулю р). Поэтому существует такое t Zp, для которого u не делится на p. При таком t из (*) получаем:

(g+pt)p(p1)=(1+pu)p=1+p2u2



………………………… **



где все ui, i=2,3,…α—1 не делятся на р.

Пусть . Тогда (g+pt)δ≡1(mod pα), откуда gδ≡1(mod p) (р1)\δ , и δ\φ(рα)=рα1(р—1) . Тогда δ имеет вид δ=рr1(р1), где 1 r α.

Но (*) и (**) показывают, что сравнение верно при r = α и неверно при r < α, то согласно Теореме 3 п.1., δ=рα1(р—1) =φ(рα), и (g+pt) – первообразный корень по модулю рα.

 

Теорема 2.

Пусть g – первообразный корень по модулю рα, α≥1. Нечетное g0 из чисел g, g+рα будет первообразным корнем по модулю 2рα .

Доказательство:

Заметим, что g+рα будет являться первообразным корнем по модулю рα, а также φ(рα)=φ(2рα)=с. Нетрудно проверить, что сравнения g0r≡1(mod рα) и g0r≡1(mod 2рα) могут выполняться лишь одновременно. Первое сравнение выполняется при r=c и не выполняется при r<c (так как g0 – первообразный корень по модулю рα), следовательно второе сравнение верно при r=c и неверно при r<c. Значит g0 – первообразный корень по модулю 2рα.

 

Доказанные теоремы вкупе с теоремой о существовании первообразных корней по модулю p позволяют сделать следующий

Вывод: Существуют первообразные корни по модулям рα, 2рα для всех α. Если известен первообразный корень по модулю р, то, пользуясь Теоремами 1 и 2 настоящего пункта, можно найти первообразный корень по модулям рα, 2рα.

Пример.

p=71, наименьший первообразный корень по модулю 71 есть 7.

Найти первообразный корень по модулю 71α и 2·71α для всех α.

Согласно Теореме 1, нужно найти такое t, чтобы (g+pt)p11 0(modp2).

Будем перебирать t:

t=0. g+pt=g=7.

770—1 mod 5041 = (710)7 –1 mod 5041 = 28147—1 mod 5041 =

= (28142)3 ·2814—1 mod 5041 = 42262·4226·2814—1 mod 5041=

= 3854·4226·2814 –1 mod 5041 = 1562 ≠ 0.

Итак, 7 – первообразный корень по модулю 71α для всех α.

Поскольку 7 – нечетное число, то, согласно Теореме 2, 7 - первообразный корень по модулю 2·71α для всех α.
Вообще говоря, нам повезло, первое же испытанное число t подошло. В другом случае, возможно, пришлось бы перебирать несколько t, прежде чем отыскали бы первообразный корень.

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


  1. 6.4. Нахождение первообразных корней по простому модулю.



В настоящем пункте будем рассматривать число n, причем n—1= * - каноническое разложение на простые сомножители.

Теорема

On(a)=n—1 1) an1≡1(mod n);

2) , 1(mod n).

Доказательство:

Пусть On(a)=n—1. Тогда (1) выполняется в силу определения порядка элемента в группе. Кроме того, , 1 ≤ < n—1= On(a), откуда в силу определения порядка элемента, выполняется (2).

Пусть теперь выполнены (1) и (2). Покажем, что On(a)=n—1.

В силу (1), On(a)\(n—1). В силу (2), On(a) не делит . Значит, On(a)=n—1.

 

Результатами только что доказанной теоремы можно пользоваться для нахождения порождающего элемента группы Up, причем проверять стоит только второй пункт, так как первый для простого модуля выполняется автоматически согласно теореме Ферма. Кроме того, можно вывести правило: если a1, a2 не являются порождающими элементами группы Up, то a1a2 также не является порождающим элементом Up. Отсюда делаем вывод о том, что наименьший порождающий элемент группы Up – простое число.

Пример

p=71. p—1=70=2·5·7.

Для того чтобы a являлся порождающим элементом, необходимо и достаточно, чтобы выполнялись условия: a10 1(mod n), a14 1(mod n), a35 1(mod n).

Будем испытывать числа из U71. Вместо ab mod 71 для краткости будем писать ab.

2: 210 =30, 214 =54, 235=1. 2 не является порождающим элементом.

3: 310 =48, 314 =54, 335=1. 3 не является порождающим элементом.

5: 510 = 1. 5 не является порождающим элементом.

7: 710 =45, 714 =54, 735=70. 7 – порождающий элемент.

Итак, наименьший порождающий элемент группы U71 (или первообразный корень по модулю 71) есть 7.

  1. 6.5. Существование и количество первообразных корней.


Первообразные корни существуют не для всякого модуля. Действительно, как было показано в Примере 2 п.1, не существует первообразных корней по модулю 8.
Теорема 1

Первообразные корни по модулю m существуют m=2, 4, pα или 2pα, где p – простое нечетное число.
Теорема 2

Количество первообразных корней по модулю m, если они существуют, есть φ(φ(m)).
Пример:

Определить количество первообразных корней по модулю 10.

10 = 2·5=2р. Первообразные корни существуют. Найдем их количество.

φ(φ(10))=φ(4)=2.

Проверим результат. U10={1, 3, 7, 9}

O10(1)=1;

32=9, 33=7, 34=1. O10(3)=4=φ(10). 3 – первообразный корень.

72=9, 73=3, 74=1. O10(7)=4=φ(10). 7 – первообразный корень.

92=1. O10(9)=2.

Действительно, нашлись два первообразных корня по модулю 10.
Теорема 3

Пусть с=φ(m), q1, q2, … , qk – различные простые делители с. Тогда g: (g,m)=1 – первообразный корень по модулю m не выполняется ни одно из сравнений , i=1,2,…,k.



Теорема, доказанная в предыдущем пункте, является частным случаем данной теоремы при простом n.

  1. 6.6. Дискретные логарифмы.


Если g – первообразный корень по модулю m (порождающий элемент Um), то, если γ пробегает полную систему вычетов по модулю φ(m), то gγ пробегает приведенную систему вычетов по модулю m.

Для чисел a: (a,m)=1 введем понятие об индексе, или о дискретном логарифме.

Если agγ (mod m), то γ называется индексом, или дискретным логарифмом числа а по основанию g по модулю m.

В теории чисел принято употреблять слово «индекс» и писать γ=indga, но в криптографии применяют сочетание «дискретный логарифм» и пишут γ=logga. Поскольку на протяжении настоящего пособия не раз встретится упоминание о так называемой задаче дискретного логарифмирования, будем употреблять последний вариант названия и написания. Тем более, что дискретные логарифмы обладают некоторыми свойствами логарифмов непрерывных:

Свойство 1: Дискретный логарифм разнозначен в полной системе вычетов по модулю φ(m).

Свойство 2: loggabhlogga+loggb+…+loggh (mod φ(m)).

Свойство 3: loggannlogga(mod φ(m)).

Доказательство этих свойств не представляет сложности и является прямым следствием определений дискретного логарифма и первообразного корня.

  1. 6.7. Проблема Диффи-Хеллмана.


Пусть даны простое число р и g - первообразный корень по модулю р. Существует полиномиальный алгоритм возведения числа в степень по любому модулю, поэтому задача вычисления x=gy mod p считается легкой задачей. Вычисление же обратной функции y=loggx mod (p—1) считают сложной задачей, поскольку на данный момент не найдено полиномиальных алгоритмов ее решения. Впрочем, не доказано и принципиальной невозможности построить такой алгоритм.

Проблема Диффи-Хеллмана – это формализация проблемы дискретного логарифмирования. Звучит она следующим образом:

Пусть известны p, α, δ, γ, где p – простое число, α – порождающий элемент группы Up, δ,γ Up.

Требуется найти: mod p.

Поскольку на данный момент задача дискретного логарифмирования не относится к числу решаемых за полиномиальное время, то проблема Диффи-Хеллмана считается сложной. Любая шифрсистема, чье дешифрование вычислительно эквивалентно решению данной проблемы, является условно стойкой.

  1. 6.8. Условная стойкость шифра Эль Гамаля.



Шифр ElGamal – симметричный шифр, основанный на теоретико-числовой проблематике. Напомним его конструкцию.

Параметры системы: p – простое число, α– порождающий элемент группы Up;

Закрытый ключ для расшифрования: a – целое число, 1 ≤ a < p1;

Открытый ключ для шифрования: β = αa mod p.

Пусть имеется открытый тест x Up. Для шифрования берут случайное число k Zp1 и вычисляются y1k mod p, y2=xβk mod p. Затем пара (y1,y2) пересылается обладателю секретного ключа, а k уничтожается.

Для расшифрования необходимо вычислить x=y2(y1a)-1mod p.

Действительно, в результате расшифрования получим открытый текст:

y2(y1a)-1mod p=xβkka) -1 mod p= xαakka) -1mod p=xα0 mod p=x.

Проблема дешифрования заключается в вычислении сообщения по шифрограмме без использования секретного ключа.

Теорема

Проблема дешифрования для шифра ElGamal и проблема Диффи-Хеллмана вычислительно эквивалентны.

Доказательство:

Действительно, пусть A есть алгоритм решения проблемы Диффи-Хеллмана,

A(p, α, δ, γ)= mod p.

Тогда дешифрование для шифра ElGamal осуществляется следующим образом:

x=y2A(p, α, y1, β)-1

(поскольку A(p, α, y1, β)= A(p, α, αk, αa)= mod pak mod p=β mod p).

Обратно, пусть B есть алгоритм дешифрования для шифра ElGamal, то есть

B(p, α, β, y1, y2)=x=y2(y1 )-1 mod p.

Тогда проблема Диффи-Хеллмана решается следующим образом:

δ =B(p, α, γ, δ, 1)-1

 



1   2   3   4   5   6   7   8   9   10   ...   16

Похожие:

Рабочая программа по дисциплине «Теоретико-числовые методы в криптографии» для студентов специальности «Компьютерная безопасность» ТюмГУ, и задания для самостоятельного выполнения с ответами к ним iconПрограмма дисциплины «Численные методы» для специальности 090102. 65 «Компьютерная безопасность»
Программа предназначена для преподавателей, ведущих данную дисциплину, учебных ассистентов и студентов специальности 090102 «Компьютерная...
Рабочая программа по дисциплине «Теоретико-числовые методы в криптографии» для студентов специальности «Компьютерная безопасность» ТюмГУ, и задания для самостоятельного выполнения с ответами к ним iconРабочая программа для студентов очной формы обучения специальности...
Иванов Д. И. Алгебра. Учебно-методический комплекс. Рабочая программа для студентов очной формы обучения, специальности 090301. 65...
Рабочая программа по дисциплине «Теоретико-числовые методы в криптографии» для студентов специальности «Компьютерная безопасность» ТюмГУ, и задания для самостоятельного выполнения с ответами к ним iconУчебно-методический комплекс рабочая программа для студентов специальности...
Учебно-методический комплекс. Рабочая программа для студентов специальности 090102. 65 – «Компьютерная безопасность», очной формы...
Рабочая программа по дисциплине «Теоретико-числовые методы в криптографии» для студентов специальности «Компьютерная безопасность» ТюмГУ, и задания для самостоятельного выполнения с ответами к ним iconРабочая программа для студентов направления 090301. 65 Компьютерная...
Хохлов А. Г. Математический анализ. Учебно-методический комплекс. Рабочая программа для студентов направления 090301. 65 Компьютерная...
Рабочая программа по дисциплине «Теоретико-числовые методы в криптографии» для студентов специальности «Компьютерная безопасность» ТюмГУ, и задания для самостоятельного выполнения с ответами к ним iconПрограмма дисциплины Операционные системы для специальности 090102....
Программа предназначена для преподавателей, ведущих данную дисциплину, учебных ассистентов и студентов специальности «090102 Компьютерная...
Рабочая программа по дисциплине «Теоретико-числовые методы в криптографии» для студентов специальности «Компьютерная безопасность» ТюмГУ, и задания для самостоятельного выполнения с ответами к ним iconРабочая программа для студентов направлений: 090301. 65 «Компьютерная безопасность»
...
Рабочая программа по дисциплине «Теоретико-числовые методы в криптографии» для студентов специальности «Компьютерная безопасность» ТюмГУ, и задания для самостоятельного выполнения с ответами к ним iconЗадания для самостоятельного выполнения
Для успешной подготовки к сдаче итогового теста попробуйте выполнить задания по основным темам курса
Рабочая программа по дисциплине «Теоретико-числовые методы в криптографии» для студентов специальности «Компьютерная безопасность» ТюмГУ, и задания для самостоятельного выполнения с ответами к ним icon6454 Задания к контрольной работе по дисциплине
Задания к контрольной работе по дисциплине «Педагогические коммуникации» (гос 2000) и методические указания для их выполнения для...
Рабочая программа по дисциплине «Теоретико-числовые методы в криптографии» для студентов специальности «Компьютерная безопасность» ТюмГУ, и задания для самостоятельного выполнения с ответами к ним iconУчебно-методический комплекс содержит учебно-методический план, темы...
В. И. Гренц. Безопасность жизнедеятельности. Учебно-методический комплекс, рабочая учебная программа для студентов специальности...
Рабочая программа по дисциплине «Теоретико-числовые методы в криптографии» для студентов специальности «Компьютерная безопасность» ТюмГУ, и задания для самостоятельного выполнения с ответами к ним iconУчебно-методический комплекс содержит учебно-методический план, темы...
В. И. Гренц. Безопасность жизнедеятельности. Учебно-методический комплекс, рабочая учебная программа для студентов очного и заочного...
Рабочая программа по дисциплине «Теоретико-числовые методы в криптографии» для студентов специальности «Компьютерная безопасность» ТюмГУ, и задания для самостоятельного выполнения с ответами к ним iconМетодические указания для ее выполнения по дисциплине Конфликтология...
Задания к контрольной работе и методические указания для ее выполнения по дисциплине «Конфликтология в профессиональной деятельности»...
Рабочая программа по дисциплине «Теоретико-числовые методы в криптографии» для студентов специальности «Компьютерная безопасность» ТюмГУ, и задания для самостоятельного выполнения с ответами к ним iconРабочая программа составлена в соответствии с требованиями фгос впо...
Платонов М. Л. Дополнительные главы теории чисел. Учебно-методический комплекс. Рабочая программа для студентов специальности 090900....
Рабочая программа по дисциплине «Теоретико-числовые методы в криптографии» для студентов специальности «Компьютерная безопасность» ТюмГУ, и задания для самостоятельного выполнения с ответами к ним iconИнформационное письмо Уважаемые коллеги! Приглашаем Вас принять участие...
Задания к контрольной работе и методические указания для ее выполнения по дисциплине «Конфликтология в профессиональной деятельности»...
Рабочая программа по дисциплине «Теоретико-числовые методы в криптографии» для студентов специальности «Компьютерная безопасность» ТюмГУ, и задания для самостоятельного выполнения с ответами к ним iconМетодические указания для выполнения самостоятельных работ По учебной дисциплине
Методические указания и задания для студентов по выполнению самостоятельных работ по дисциплине «Бурение нефтяных и газовых скважин»для...
Рабочая программа по дисциплине «Теоретико-числовые методы в криптографии» для студентов специальности «Компьютерная безопасность» ТюмГУ, и задания для самостоятельного выполнения с ответами к ним icon«Компьютерная графика»
Рабочая программа по дисциплине «Компьютерная графика» предназначена для реализации Государственного образовательного стандарта спо...
Рабочая программа по дисциплине «Теоретико-числовые методы в криптографии» для студентов специальности «Компьютерная безопасность» ТюмГУ, и задания для самостоятельного выполнения с ответами к ним iconРабочая программа По дисциплине: сд. 05 П ожарная техника для специальности...
Рабочая программа составлена на основании гос спо №13-3203Б от 08. 02. 2002г и учебного плана для очной формы обучения стф 13-3203Б...


Школьные материалы


При копировании материала укажите ссылку © 2013
контакты
100-bal.ru
Поиск