Первообразные корни и индексы. Порождающий элемент и дискретный логарифм.
В этом параграфе рассмотрены теоретико-числовые основы, ведущие к задачам дискретного логарифмирования над конечным полем, а также приведены некоторые приложения теории конечных групп к таким вопросам как тесты на простоту и построение простых чисел.
Основные понятия и теоремы.
При (a,m)=1 существуют положительные γ с условием aγ≡1(mod m). Наименьшее из таких γ называется показатель, которому a принадлежит по модулю m.
В том, что такие γ существуют, можно убедиться, вспомнив теорему Эйлера (γ=φ(m)).
Возвращаясь к основам общей алгебры, в частности, к теории конечных групп, можно сказать, что показатель, которому которому a принадлежит по модулю m есть то же самое, что порядок элемента a в конечной мультипликативной группе <Um, · mod m>. Далее будем обозначать его Om(a).
Поскольку дальнейшие построения будут тесно связаны с группой <Um, · mod m>, то на протяжении текущего параграфа для краткости будем обозначать эту группу как Um.
Докажем несколько важных теорем, описывающих свойства Om(a):
Теорема 1.
Числа 1=a0, a1, a2, … , несравнимы между собой по модулю m.
Доказательство:
Действительно, из того, что al≡ak(mod m), 0 ≤ k < l < Om(a) следовало бы, что al—k≡1(mod m), 0 < k—l < 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)δar≡ar(mod m)
aβ≡aδw+r≡(aw)δar≡ar(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 порождающий элемент существует, а в каких – нет, и как найти порождающий элемент? На этот вопрос ответим в следующих пунктах данного параграфа.
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). Пусть τ=НОК(δ1,δ2,… ,δr), и τ= - каноническое разложение. Каждый множитель этого разложения делит хотя бы одно из чисел δ1,…,δr. Поэтому можем представить одно из таких чисел как δj=a . Пусть ξj – одно из чисел ряда 1, 2, … , p—1: Op(ξj)=δj.
Тогда, согласно Лемме 1, Op(η)= , где η= .
Согласно Лемме 2, Op(g)=τ= , где g=η1η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 .
□
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)p—1≡1(mod p) p\((g+pt)p—1 –1).
Доказательство:
Имеем:
gp—1=1+pT0
(g+pt)p—1=1+p(T0—gp—2t+pT)=1+pu *
где если t пробегает Zp, то и u пробегает Zp (полную систему вычетов по модулю р). Поэтому существует такое t Zp, для которого u не делится на p. При таком t из (*) получаем:
(g+pt)p(p—1)=(1+pu)p=1+p2u2
………………………… **
где все ui, i=2,3,…α—1 не делятся на р.
Пусть . Тогда (g+pt)δ≡1(mod pα), откуда gδ≡1(mod p) (р—1)\δ , и δ\φ(рα)=рα—1(р—1) . Тогда δ имеет вид δ=рr—1(р—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)p—1—1 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, прежде чем отыскали бы первообразный корень.
Разумеется, мы не отыскали все первообразные корни по данному модулю. Алгоритмы нахождения их весьма трудоемки, особенно тогда, когда требуется найти все или несколько первообразных корней.
Дата добавления: 2015-11-28; просмотров: 2476;