2014 Теоретические основы прикладной дискретной математики №2(24)
УДК 519.4
ВОССТАНОВЛЕНИЕ ПОЛИНОМИАЛЬНО УСЛОЖНЁННОЙ ЛИНЕЙНОЙ РЕКУРРЕНТЫ МАКСИМАЛЬНОГО ПЕРИОДА НАД КОЛЬЦОМ ГАЛУА ПО СТАРШЕЙ КООРДИНАТНОЙ ПОСЛЕДОВАТЕЛЬНОСТИ
Е. М. Серебряков Центр специальных разработок, г. Москва, Россия E-mail: [email protected]
Рассматриваются усложнения линейной рекуррентной последовательности (ЛРП) максимального периода над кольцом Галуа GR(qn,pn) с помощью некоторого многочлена E(x) над этим кольцом, а также приводится алгоритм восстановления исходной рекурренты по старшей координатной последовательности полиномиально усложнённой ЛРП.
Ключевые слова: ЛРП максимального периода, полиномиальное усложнение, старшая координатная последовательность, восстановление начального вектора.
Введение
В криптографии актуальным остается вопрос о восстановлении линейной рекуррентной последовательности максимального периода (в частности, её начального отрезка) над кольцом Галуа по её старшей координатной последовательности. Ранее рядом авторов исследовалась старшая координатная последовательность un-i ЛРП максимального периода и и приводились соответствующие алгоритмы восстановления и по un-1. А. А. Нечаевым предложен алгоритм восстановления ЛРП максимального периода и над кольцом вычетов R = Z2n по её старшей координатной последовательности, впоследствии А. С. Кузьминым приведён алгоритм восстановления ЛРП максимального периода и над кольцом R = Zpn для произвольного p ^ 3.
В ряде работ отечественных [1, 2] и зарубежных авторов [3-6] уже исследовалась возможность восстановления усложнённой последовательности, причём усложнения задавались с помощью «инъективных отображений», то есть отображений, которые допускают однозначное восстановление исходной ЛРП по её усложнению.
Цель этой работы — для полиномиального усложнения ЛРП максимального периода и над кольцом Галуа GR(qn,pn) произвольным многочленом E(x) Е R[x] степени k ^ 1 построить алгоритм восстановления начального отрезка исходной рекурренты по значениям старшей координатной последовательности усложнённой ЛРП.
1. Постановка задачи
Всюду далее R = GR(qn,pn) —кольцо Галуа характеристики pn, состоящее из qn элементов, где n Е N, p простое, q = pr. Согласно [7], множество pR всех делителей нуля есть идеал кольца R. Обозначим через R = R/pR = GF(q) поле вычетов кольца R. Эпиморфизм ip : R ^ R, действующий по правилу <р(а) = а для всех а Е R, естественным образом можно продолжить на кольцо многочленов R[x]. Образ любого многочлена F (x) Е R [x] при таком эпиморфизме будем обозначать через F (x) Е R [x]. Подмножество K кольца R называется координатным множеством кольца R, если
его элементы образуют полную систему вычетов по модулю идеала рЯ. Примером координатного множества является р-адическое координатное множество (координатное множество Тейхмюллера) Г(Я) = {а € Я : а9 = а}. Для Я = ОК(рга,рга) = Ърп ещё одним интересным примером координатного множества является р-ичное координатное множество £(Я) = {0,1,... ,р — 1}. Известно [8], что любой элемент а € Я однозначно представляется в виде
а = ао + ра1 + ... + рга-1ага_ь (1)
где at € К, £ = 0,1,... , п— 1. Для всех £ € {0,... , п— 1} определим функции : Я ^ К
следующим образом: 7К(а) = а*, где а* определяется равенством (1).
Функция 7К называется £-й координатной функцией в координатном множестве К. Естественным образом введём на множестве К операции, положив для любых а, Ь € К
а ф Ь = 7К (а + Ь) , а ® Ь = 7К (аЬ).
Тогда (К; ф, ®) = СЕ(д) — поле, изоморфное Я?, причём изоморфизм ф : К ^ Я? задаётся соотношением ф(а) = а, где а € К. Изоморфизм ф также естественным образом продолжается на множество всех последовательностей Кнад множеством К. Образ любой последовательности V € Кпри таком изоморфизме будем обозначать через V € Я . Стоит отметить, что по последовательности V € Я можно однозначно восстановить последовательность V € Кте.
В качестве результата умножения многочлена Е (ж) = ^ /гхг € Я [ж] на последовало
тельность и € Яте определим последовательность V = ^(х)и из множества Яте, знаки которой определяются следующим образом:
v(г) = ^ /ги(г + г), г ^ 0.
т'^0
Пусть Е (х) € Я [х] — многочлен максимального периода, имеющий степень т и период Т(^) = (дт — 1)рп-1 [9]. Обозначим Ьд(^) = {и € Яте : ^(х)и = (0)} множество последовательностей, аннулируемых многочленом Е (х). Из работы [9] известно, что период любой рекурренты из Ьд(^) удовлетворяет неравенству Т(и) ^ (дт — 1)рп-1. Последовательность с периодом Т(и) = (дт — 1)рп-1 назовём ЛРП максимального периода (МП).
Пусть всюду далее и € Ьд(^) —ЛРП максимального периода. Для любого много-
к
члена Е(х) = ^2 е7-х7 € Я[х] определим последовательность г = Е(и) € Яте со знаками 7=0
к
г(г) = ^2 е7-и(г)7 для всех г ^ 0. Последовательность Е(и) назовем полиномиальным 7=о
усложнением рекурренты и с помощью многочлена Е(х) над кольцом Я.
Для любой ЛРП V € Яте определим последовательность V* = 7К(V) = (7^(v(0)), 7КН1)),...), которая называется £-й координатной последовательностью рекурренты V в координатном множестве К. Последовательность V* является ЛРП над К, так как она периодическая. Последовательность vra_1 назовём старшей координатной последовательностью ЛРП V.
В данной работе будем решать следующую задачу: по известной старшей координатной последовательности гп-1 = 7^. 1(г) полиномиально усложнённой рекурренты восстановить исходную ЛРП максимального периода и. Отметим, что в работе [10]
эта задача решена для произвольного кольца Галуа R = GR(qn,pn) и координатного множества K с некоторыми естественными ограничениями при E(x) = x.
Усложнения ЛРП u можно задавать с помощью функций Ф : Rn ^ K следующим образом:
v(i) = Ф(uo(i),... ,Un-l(i)).
Такие отображения индуцируют отображения семейств последовательностей Ф : Lr(F) ^ Kте, которые называются «сжимающими отображениями». Как уже отмечалось, некоторые из таких отображений позволяют однозначно восстановить исходную ЛРП по её усложнению. Поставленную задачу можно свести к отображениям такого вида с помощью следующей леммы.
Лемма 1. Знак координатной последовательности полиномиально усложнённой ЛРП z = E(u) представляется в виде zt(i) = Ф(и0(і),... , ut(i)), i ^ 0, t Є {1,... , n — 1},
где
Ф(хо,хі,... ,xt) = E'(xo)xt + n(xo,xi,... ,xt-i), n(xo,xi,... ,xt-i) Є K[xo,xi,... ,xt-i].
Доказательство. Рассмотрим E(x) над кольцом R/pi+iR, где x = xo + px1 + + ... + pxt (mod pi+i):
pt+i k / t \ k cl..
e(x) = £ ej E pxH = e e —¡——-pji+2j2+...+tjtxo0... xjt.
s=o \j=o J s=o jo+...+jt=s jo1 . . . jt1
В этой сумме нас интересуют ненулевые слагаемые при pt. Очевидно, что этому условию удовлетворяют лишь те слагаемые, у которых либо jt = 0, либо jt = 1, jo = s — 1, ji = ... = jt-i = 0. Разбивая таким образом по jt внутреннюю сумму на две части, Ф^,... , xt) можно представить в виде
Ф^, . . . , xt) = Е es ( sptxo-ixt + Е _j——■--------------Гp7l+2j2+...+(t-i)jt-1 xo0 .. . x'-i1
s=o у jo+...+ji-i=s jo 1 . . . jt-1!
Значит, YtK(Ф(xo,... ,xt)) = E'(xo)xt + n(xo,... ,xt-i). ■
Заметим, что в [2] доказана принципиальная возможность восстановления исходной рекурренты, усложнённой с помощью функции Ф^, . . . , xn-i), полученной в лемме 1, однако нет конструктивного алгоритма восстановления.
2. Сечения
Одним из подходов к изучению свойств координатных последовательностей является метод сечений. Определим умножение элемента а Є K на элемент f Є R равенством fa = yk (ra). Тогда K есть R-алгебра и можно умножать любую последовательность над K на многочлен из R[x], а также рассматривать любую периодическую последовательность w над K как ЛРП над полем R. Под сечением будем понимать умножение последовательности на некоторый многочлен, в результате чего получается более простая рекуррента. Обозначим Tt = pt(qm — 1), t = 0,1,... , n — 1, to = т. В работе [11] доказана следующая лемма.
Лемма 2. Пусть F(x) Є R[x] —многочлен максимального периода. Тогда существуют многочлены Ф^+%) Є R[x], t Є {0,... , n — 1}, такие, что
xTt — e = P+^+^x) (mod F(x)), t є{0,...,п — 1},
Ф(t+1)(x) = 0, degФ(t+1) (x) < m,
причём, если p ^ 3, t ^ 1, то Ф(t)(x) = Ф(t+1)(x) (mod pt+i).
Очевидно, что многочлены Ф(4)(х), где t Є {1,...,n}, определены неоднозначно, поэтому выберем их и зафиксируем. Последовательность u(t) = Ф(і)(х)м назовём t-й производной последовательностью рекурренты u. Нетрудно видеть, что u(t) —ЛРП максимального периода [8]. В работе [11] также доказано, что
41} = u0t), t ^1, (3)
«(°2) = и?\ t ^ 2.
Далее считаем, что элементы координатных множеств K = {a1,...,aq} и Г(Д) = = {в1,... , вд} упорядочены так, что at = в* (mod p), t = 0,... , q — 1.
Известно [12], что существует единственный многочлен Фк (x) = фд-1х9-1 + ... + +ф1х + ф0 Є R[x], такой, что Фк(в*) = at, t Є {0,...,q — 1}, при этом Фк(x) = = x (mod p) и ф0 = 0. Многочлен Фк(x) называется интерполяционным многочленом координатного множества K. Обозначим через
ФК(x) = ф*-1 xq-1 + ... + фх Є R[x]
такой многочлен, что Фк(x) = x + рФК(x).
dF
Пусть F(x1,...,xk) Є R[x1,...,xk]. Тогда через —— будем обозначать формаль-
dxj
ную частную производную многочлена F по переменной xj для всех j Є {1,... , k}.
dF
Эти производные являются многочленами из R[x1,... , x&]. Через —— (а1,... , ) бу-
dxj
дем обозначать значение частной производной в точке (а1,... , ak) Є . В работе [12] доказана следующая лемма.
Лемма 3. Для любого F(x1,...,xk) Є R[x1 ,...,xk] существует такой многочлен F*(x1,... , xk), что F(x1,... , xk)q = F(xf,... , x|) + pF*(x1,..., xk), и для любых й1, ..., ak Є K~
k dF
Yf (F(«1,..., ak)) = —F*(«1,..., ak) + E («1,..., «fc)ФК(«¿) — m
i=1 dxi (4)
— ФК (F (ab...,ak )) (mod p),
в частности, для любых a, b Є K p-1 1
Yf (a + b) = -----Г7Г ahj bh(p-j) + Ф# (a) + ФК (b) — ФК (a + b) (mod p). (5)
j=1 j!(p — j)!
Для любого s Є {1,... ,n} обозначим b(s) = E'(u)u(s) Є Rœ, где E'(x) —производная многочлена E (x). Пусть также b(s) = Yf (b(s)), s Є {1,... ,n}, t = 0,1. Исследуем некоторые свойства последовательности b(s). Так как b0s)(i + т) = b0s)(i) для всех i ^ 0, то T(b0s)) | т для всех s Є {1,... , n}.
Лемма 4. При всех t Є {2,...,n + 1} для координатной последовательности bf 1) = Yf (E'(u)u(t-1)) верно следующее равенство:
б',-1) = Е'(«о)ФК (u0t-1)) — ФК (E'(uo )u0t-1)) — E (uo)«0‘-1)+ (6)
+Е''(ио)ФК(«o)u0‘-1) + E''(uo)u0i-i)u1 + E'(uo)u1i-1) (mod p),
где E*(x) Є R[x] —такой многочлен, что E'(x)q = E'(xq)+ pE*(x); E''(x) —производная многочлена E'(x).
Доказательство. Обозначим v = E'(u), w = u(t ^, vj = yK(v), Wj = yK (w),
j = 0,1. Тогда имеем
Г1} = YiK (vw) = YK ((Vo + pvi )(W0 + pwi)) =
= yK(vowo + p(viwo + vowi)) = yK(vowo) + viwo + vowi (mod p).
Заметим, что
vow1 = E'(uo)uf 1) (mod p). (8)
Найдём yK(vowo). Возьмём в условиях леммы 3 в качестве F(x1,x2) многочлен x1x2 Є Є R[x1 ,x2], тогда из равенства (4) имеем
Yi (vowo) = WoФK(vo) + voФК(wo) - ФК(vowo) =
= u0t-1^K(E/(uo)) + ^ЫФК(u0t-1)) - ФК(E/(uo)u0t-1)) (mod p).
(9)
k
Так как E'(x) = E jejx'-1, то j=i
k k . k
v = E'(u) = E je' (uo + Pu1)j-1 = E jejuo-1 + pu1 E j (j — 1)ejuo-2 = ,1A,
j=1 j=1 '=2 (10)
= E'(uo) + pE''(uo)u1 (mod p2).
Теперь, используя соотношения (10) и взяв в (4) в качестве F(x1,...,xk) многочлен E'(x), получаем
Í11)
Í12)
vi = YiK (E'(uo)) + E''(uo)ui =
= —E' (uo)+E"(uo)^K(uo) - ФК(E'(uo)) + E''(uo)ui (mod p).
Умножая (11) на wo = uo* i), находим
viwo = —E* (uo)uo ^ + E"(uo)^K (uo)uo ^ — (E'(uo ))uo ^ +
+ E//(uo)uo*-i)ui (mod p).
Подставляя (8), (9) и (12) в соотношение (7), получаем (6). ■
Для r, t £ N обозначим
| 1, если r = t,
¿(r = t) = <
0, если r = t.
Обозначим h = pr-:L. Перейдём к построению сечений координатных последовательностей.
Теорема 1. Для координатных последовательностей ЛРП z = E(u) справедливы следующие соотношения: для t = 1,... , n — 1
(xTt-1 — e)zt = E'(u)uo*) (mod p); (13)
для t = 2,... , n — 1
(xTt-2 — e)z* = YK(zt-i + b(t-i)) + 1 ¿(t = 2)E"(u)(uot-i))2 (mod p); (14)
для j = 1,... , p — 1, t = 1,... , n — 1
(xTt-1 — e)jzj = j! (b?) = j! ^E'(uo)uo*^ (mod p); (15)
для j = 1 , . . . , p — 1 , t = 1 , . . . , n — 1
(xTt-1 — e)j-izj = j!z, (bot))j + (bot))j (mod p); (16)
для t = 2, . . . , n — 1
(xT _ e)p--p-2z, = (z,_i (6o,-i))p_i)h + p ~ *+ 2'~i (Г4)’”“ —
q—i ___ s! . ( ( -Л S—jl (17)
— E E .! ! .!zj— i К ) + С(p,t) (modp),
s=p—1 jl+...+jp=s, j1! ...jp! V 7 jl^o ,j2>o,...jp>o
где
C(p t) = i E'(uo)$(i)(x)uoi) + E''(uo) (uoi0 , если p = 3,t = 2,
0 в остальных случаях.
Доказательство. Докажем равенство (13). Учитывая, что T(ut) = т, [8], по лемме 1 получим T (zt) | т*. Тогда
(xTt-1 — e)z = pt(xTt-1 — e)zt (mod pt+1). (18)
С другой стороны, из соотношения (2) следует, что (xTt-1 — e)u = ptuot) (mod pt+1), или
u(i + Tt—i) = u(i) + ptuot)(i) (mod pt+1). (19)
Теперь, используя равенство (19), имеем для всех i ^ 0
k
(xTt-1 — e)z(i) = z(i + т,—i) — z(i) = E ej (u(i + Tt—i)j — u(i)j) =
j=o
k
= E jeju(i)j—iptuot)(i) = ptE'(u(i))uot)(i) (mod pt+i). j=o o o
Сравнивая соотношения (18) и (20), получаем равенство (13).
Докажем равенство (14). Используя (2), получаем
(xTt-2 — e)u = pt—iu(t—1) = pt—iuo*—1) + ptuit—1) (mod pt+i).
Тогда для всех i ^ 0
u(i + Tt—2)j = (u(i) + pt—1uo*—1)(i) + ptu(1t—1)(i^ ' = u(i)j + ju(i)j —1 ^pt—1uo*—1)(i) +
(20)
+ ptu(1t 1)(i^ + 22 u(i)j 2 1uot 1)(i)+ ptuf ^(i)) = u(i)j + (21)
+ju(i)j 1 (p* 1uot 1)(i) + ptu(1t 1)(i)) + i(t = 2^2)u(i)j У (4* 1)(i))2 (mod pt+1).
Используя соотношение (21), получаем
(xTt-2 — e)z(i) = z(i + Tt—2) — z(i) = Eej (u(i + Tt—2)j — u(i)j) =
j=o
= Eej ju(i)J 1 (pt 1u0t 1)(i)+ ptu1t 1)(i) ) + ¿(t 2ptu0t 1)(i)2
3=0
= p* 1E'(u(i))uot 1)(i)+ ptE/(u(i))u1t 1)(i) + 1 ¿(t = 2)ptE//(u(i))(uot 1)(i))2 (mod pt+1).
С другой стороны, используя соотношения Т(zt) | Tt для всех t £ {0,...,n — 1} и равенство zt(i + Tt—1) = yK (zt(i) + E/(u(i))u(t)(i^, вытекающее из (13), получаем
(xTt-2 — e)z(i) = (xTt-2 — e) (p* — 1zt—1(i) + ptzt(i)) =
= p*—1 (zt— i(i + Tt—2) — zt—i(i)) + p*(xTt-2 — e)zt(i) = (23)
= pt— 1(YK (zt— i(i) + E/(u(i))u(t— 1)(i)) — z*—i(i)) + p*(xTt-2 — e)zt(i) (mod pt+1).
Сравнивая (23) с соотношением (22), получаем
p(xTt-2 — e)zt =
= E/(u)uot—1) + pE/(u)u(1t—1) + 1 ¿(t = 2)pE//(u)(uot —1))2 — yK (zt — 1 + E/(u)u(t—1)) + z*— 1 = = pYK(zt— 1 + E/(u)u(t—1)) + 2¿(t = 2)pE"(u)(uot—1))2 (mod p2).
В итоге (xTt-2 — e)zt = yK (zt— 1 + E/(u)u(t 1)) + -¿(t = 2)E"(u) 1^ (mod p),
что и требовалось доказать.
Докажем сравнение (15). Для всех i ^ 0 и s £ 1,p — 1, используя соотношение (13) и условие Т(bo)|Tt—1, имеем
(24)
(xTt 1 — e)zts(i) = zts(i +T*—1) — zts(i) = (z*(i) + bot)(i))s — zts(i) =
= sVj(i)(bot)(i))s—j = g(zt(i),bot)(i)) (modp),
j=o j t o o где g(x,y) £ K[x,y]; degx g ^ s — 1; degy g ^ s.
Поэтому нетрудно видеть, что для любого s £ {1,... ,p — 1} при l > s
(xTt-1 — e)^zts = 0 (mod p).
Используя (24), методом математической индукции покажем, что для всех j £ {1, . . . , p — 1 } и s £ { 1 , . . . , j } выполняется
(xTt-1 — e)szj =j (j —1)...(j — s +1)zj—s (bo*^ +
+|j(j — 1) ... (j — s)zj—s—1 (bot)) + g(s) (zt, bo*)) (mo
где g(s)(x,y) £ K[x,y]; degx g(s)(x,y) ^ j — s — 2.
Проверим основание индукции при s = 1. Имеем
(25)
(xrt-1 - e)zj = (zt + b0t)) - zj = jzj 1 b0t) + j(j 2 1) zj 2 (b0t)) + g(1) (zt,b0t)) (mod p),
где degx g(1)(x,y) ^ j - 3.
Пусть равенство (25) верно для s, проверим его справедливость для s + 1. Имеем
(xTt-1 — e)s+1zj =j(j —1)...(j — s +1) (bot)) ((j — s)zj—s—i^ot) +
+(j — j s —1} zj-^2 (bot) )2 + gr’febo*’)) +
+2j(j — 1)... (j — s) (bot))s+1 ((j — s — 1)zj—s—2bot) +
+g(s+1) (zt, &ot))) + g(s+1) (zt, &ot)) (mod p),
где degx g(s+1) ^ j — s — 3; degx g(s+1) ^ j — s — 3; deg^ g(s+1) ^ j — s — 3 Сгруппируем слагаемые с одинаковыми степенями zt:
s+1
(xTt-1 — e)s+1zj = j(j — 1)...(j — s)zj (s+1) (^) +
s^j(j —1)...(j — s — 1)zj-s-2 (bot)) + g(s+1) (z^ &o°) (mod p).
Таким образом, сравнение (25) верно. Подставляя в него s = k — 1 и s = k, получаем сравнения (15) и (16) соответственно.
Докажем сравнение (17). Напомним, что b(t) = E/(u)u(t), ЬГ*) = yK(b(t)), r £ {0,1}, t £ {1,... , n}. Тогда = E/(uo)uo*) (mod p). Используя равенство (14), получаем
(xTt 2 — e)zt = YK (zt—1 + bo* 1^ + bi 1) + 2¿(t = 2)E"(uo) ^ ^ (mod p). (26)
Рассмотрим последовательное (p — 2 раза) умножение (xTt-2 — e) на последовательность YK (z*—1 + bo*—1^. Из (5) имеем yK (zt—1 + ^t—^ = A + D (mod p), где
A = £j!(p1- j)!zj—1 (b0‘-I))(P-j)h • D = (zt—i) + П (b0,-I)) — (z— + bot—1)) .
Используя (25), методом математической индукции докажем, что для всех s £ {1, . . . , p — 2} верно
_ (p — 1)h ... (p — s)h _(p—s—1)h (, (t— 1))(s+1)h
(xTt-2 — e)sA = ^-------(p—)---------^zt(--s-1)h j +
, (s + 2h-1)(p — 2)h ... (p — s — 1)h z(p-s-2)h (b(t-i))(s+2)h + (27)
+ 2h(p — 2)! Zt-1 V&o 7 + (27)
+g(s) (zt-i,bot-1^ (mod p),
где g(s)(x,y) Є K[x,y]; degx g(s) ^ (p — s — 3)h.
Пользуясь тем, что характеристика поля K делит h, и используя сравнение (25) при s = 1 и k = j, j Є {1,... ,p — 1}, получаем для всех i ^ 0
(xT‘-2 — e)zj—1 (i) = Zt-1 (І + T,_2)jh — z,_i(i)jh = (2l-i(i + T,_2)J — z,_i(i:)j )h =
= ((iT‘-2 — e)zj-i(i))h = jhzi-l(г)(j-1)h60‘_1)(г)h+ (28)
+j"j— 1)hz.-i«0-2^?-4«2'“ + g (z.-i(i), 6o£-1)(i)) (mod p),
где g(x,y) Є K[x,y]; degx g ^ (j — 3)h
+
Выделим в А следующие два слагаемых:
л _ 1 г(р-1)- (ь(*-1))- I 1 г(р-2)- (ь(1-1))2- I 9'°) (~ Ь(1-1))
А _(р-^^ 1ь° ; +2(Р-2)!^ г° ; +9 I*-1 Л ;,
где 9(0)(ж,у) € К[х,у]; degx9(0) ^ (р — 3}Н. Теперь, пользуясь тем, что Т(6°* 1)}|г4-2, докажем базу индукции, используя (28). Имеем
(*т-2 — е)А = —— (б°‘-1^ (хт-2 — ф'--4'“ + ——(ь°‘-1)) (хт-2 — е)г,(--2)Л+
+{.гт'-2 — е)9(0) (г,-ЬЬ°‘-1)) = Т)Т (Г4)" ((Р — 1)Л-,(--2)й (ь°‘-1))" +
+ (Р — ^ — 2>'4--3)Л (Ь°‘- 1))2й + 9,° (*«-.,Ь°‘-1))) +
(Ь(*-1))2^ .
2(р — 2)! ((Р — 2}- г,--3)Л (Ь°*-1^ + 921) (г*-1,ь°*-1))) + 3(1) (**-1,&°*-1^ (mod р),
где 9(1)(х,у),921)(х,у),9(1)(х,у) € К[х,У]; 9(1) ^ {Р — 4}Н; 9(1) ^ (р — 4}Н;
9(1) ^ {Р — 4}Н
Группируем коэффициенты при одинаковых степенях г4-1:
/ т4 2 \ Л — (Р — Т)^ (р-2)^ ^(*-1))2^ ,
(х ‘-2 — е)А = (р — Т)Т *1-1 ) (&° ^ +
(Р — ^(Р — 2}- + (Р — 2П (р-з)- (а(*-1))3\ л(ц ^ ,(*-1)'
2-{р — 1)! 2(р — 2)! ' 1-1
^ 4-13)^ (ь°* 1)) + 9(1) (**-1,ь°* 1)) (mod Р}
где 9(1){х,У} € К[х,У]; 9(1) ^ (Р — 4}Н
Пользуясь тем, что Н нечётное, получаем
^ - е)А = (Р — ^*(р-2)^ (6(*-1)Г + (2^-1 + Т)(Р — 2}-*(р-з)- Л(*-1))3- + (х е)А _ (р — 1)! *1-1 V0 ) + 2-{р — 2)! *1-1 1&° 1 +
+9(1) (**-1, Ь°*-1^ (mod р),
где 9(1)(х,У) € К[х,У]; 9(1) ^ (Р — 4}Н
Используя сравнение (28), проверим шаг индукции:
(хТ'-2 — е)*+1А = {р — 1}-^^ — ^ (6°‘-1))(’+1)Й (хт‘-2 — е)г'--•'-1)'1+
+ (. + 2--1ХР2—(Р)— 2Х — * — 1}- (ь°«-1))(‘+2)Л (*т,-2 — е)=<-1 -»+
+{хт-2 — е}9(") (-_1,Ь°е-1)) = (Р— 1|Р—1)'~ 8>> (6°‘-1))('+1)Й х
х ({р — 8 — ЦЧ- ‘-2)л (Г”)“ + (Р —8~ 1}—Г 8~ 2)> г,'-- (Г”)2'“ +
, 7(s+ib b(t—1))) . (s + 2h—.)(p — 2)h ... (p — s — ^
+g1 (zt—1,bo 4 + 2'(p — 2)! X
x (bot—1))(s+2)^(p — s — 2)'z*—s—3)h (bot—1))' +
+ g(s+1) (zt—1 ,bot—1))) + g(s+1) (zt—i,bot—1)) (mod p),
где gjs+1)(x,y),g(s+1)(x,y),g(s+1)(x,y) £ К[x,y]; deg^gjs+1) ^ (p — s — 4)h; deg^g(s+1) ^ ^ (p — s — 4)h; degx g(s+1) ^ (p — s — 4)h.
Раскрывая скобки и группируя коэффициенты при одинаковых степенях zt—., получаем
(xt,-2 — e).«A = (p — 1)h ■■■ (p — ^ — s — 1)h '—2)h (bii-4)^2*'“ +
(p — 1)!
+ (p — 1)h ... (p — s — 2)h z(p—s—3)h (b(t—1))(s+3)h + + 2'(p — 1)! zt—1 tbo 1 +
(s + 2' 1)(p — 2)h ... (p — s — 2)h (p—s—3)h (u(t— I))(s+3)h (s+1) ( ^(t—1)) f A ^
+-------------2h(p — 2)!-----------------zt(—i ) (bo ^ + g( + ) (zt—i,bo ^ (mod p),
где g(s+1)(x,y) £ К[x,y]; degx g(s+1) ^ (p — s — 4)h. Отсюда следует справедливость сравнения (27).
Аналогично методом математической индукции доказывается, что для всех s £ {1, ...,p — 2}
q—1 r! -fa- n\r—j1
(xTt-2 — e)sD = — Y, E T-j-----:---Tzj—1 (bo M (mod p). (29)
r=s+1 j1+...+js+2=r, j1! ...js+2! ' '
j1^o,j2>o,...,js+2>o
Подставляя s = p — 2 в равенства (27) и (29) и используя теорему Вильсона, получаем
(.tT- — e)p—2A = ^—i (¡Г4)'"1) + p ~ 22+h 2' 1 (bo* — I))q (mod p),
q — i r! • / / i\\ r—j1
(xTt-2 — e)p—2D = — E E ■ ! ! ■ ! zj— 1 (bo*— M (mod p).
r=p—1 j1+...+jp =r, j1! ...jP! ' '
j1^o,j2>o,...,jp>o
Таким образом,
(xTt-2 — e)p—2yik (z*—i + bot—1)) = ^z*—1 (bot—1))P ) + p—2т++^— (bot—1))P —
1 bo
q—1 r! • ( (t_i))r—j1 (30)
— E E —-^zj— 1 ibo M (mod p).
r=p—1 j1+...+jp=r, j1! ...jP! V 7
j1^o,j2>o,...,jp >o
Теперь вычислим (xTt-2 —e)p—2b.* 1). С учётом леммы 4 видно, что в соотношении (6) все слагаемые, кроме последних двух, имеют период, делящий T, поэтому
(xTt-2 — e)p—2bit—1) = E //(uo)uot—1) (xTt-2 — e)p—2ui +
/, i\ (31)
+ E/(uo)(xTt-2 — e)p—2u(i — ) (mod p).
Пользуясь равенствами (3) и соотношениями Т(u.) |t. и (xT — e)u. = u0^ (mod p) получаем
.u(1)
(xTt 2 — e)u1
uo ), если t = 2,
0, если t > 2.
Так как T(uoi)) | To, имеем
(xT- — e)P—2„i = i u°I)■ если p = 3’4 = 2- (32)
0 в противном случае.
(33)
В итоге из равенств (32) вытекает
E//(„o)«o-I)(xT-> — e)p—2„i Л если p = 3-4 = 2
o 0 в противном случае.
Рассмотрим (xT4-2 — e)u.* 1):
(xT4-2 — e)u.t—1) = (xT4-2 — e)YK (u(t—1)) = (xT4-2 — e)YK (Ф(*—1)(x)u) =
= (xTt-2 — e)YK (Ф(1) (x)u) = (xTt-2 — e)YK (Ф(1)(x)(u0 + pu.)) =
= (xTt-2 — e)YK (Ф(1) (x)uo + pФ(1)(x)u1) = (xTt-2 — e)YK (Ф(1)(x)u0) +
+ (xTt-2 — e) ^(1)(x)u.) (mod p).
Так как период последовательности yK ^(1)(x)u0) делит t, то, используя соотношения Т(u.) | т. и (xT — e)u. = uoi) (mod p), получаем
(34)
, T . (t_ 1) , T n Ф(1)(x)u0), если t = 2,
(x 4 2 — e)ui ) = (x 4 2 — e^( )(x)u1 = <
I 0 в противном случае.
Пользуясь (34) и соотношением Т(u01)) | т, получаем
E/(uo)(*T-» — e)P—^u.*—.) = (p = V = 2 (35)
I 0 в противном случае.
С учётом (33) и (35) равенство (31) примет вид
(x t4-2 — e)p—2b(*— 1) = i E' (u0)ф(1)(x)u01) + E//(u0)(u01) )2, если t = 2, p = 3, (36)
1 0 в противном случае.
Таким образом, с использованием сравнения (26) имеем
(xTt-2 — e)p—.z* = (xTt-2 — e)p—2yK(z* + b0t—1)) + (xTt-2 — e)p—2bit—1) (mod p). (37)
Объединяя результаты (30), (36) и (37), получаем
pt-1—pt-2. = Л ^(*—i))p—.)\ p — 2 + 2'—1 (A(t—i))ph
(xT — e)pt-1-pt-2 Zt = ( Zt-1 ( &ot-1M ) + -------2h------( b
— E # E zj-1 (bot-1^r-j1 + e(p,t),
r=p-1 j1+...+jp = r, j1! ...jP! v '
J1^o,j2>o,...,jp>o
где
. E/(u0)Ф(1)(x)u01) + E//(uo)(u01))2, если t = 2,p = 3, 4(p,t) ^ „
0 в противном случае.
Теорема доказана.
3. Алгоритм восстановления
Прежде чем перейти к алгоритму восстановления, приведем еще несколько результатов. Для всех t Є N обозначим
t = Е Vi(t)p\ Vi(t) Є {0,... ,p — 1}, wp(t) = E ^¿(t),
i^o i^o
t = E Pi(t)qS Pi(t) Є{0,...,5 — 1} (t) = E Pi (t) ,
i^0 i^0
где vi(t) —коэффициент при pi в p-ичном разложении; pi(t) — коэффициент при qi
в q-ичном разложении; wp(t) — p-ичный вес числа t; (t) — q-ичный вес числа t.
Для доказательства основного результата потребуется ещё одна лемма.
Лемма 5 [13]. Пусть а Є N, k1,..., ka Є N0, k = k1 + ... + ka, є — максимальная
k!
степень простого числа p, делящая полиномиальный коэффициент —-------- —-. Тогда
ki!... ka!
_ Wp(ki) + ... + Wp(ka) — Wp(k)_ а) Є = p — 1 ;
б) k ! k' k ! = (—p)£ П —(k Vm(k)! (k )! (mod p£+1).
k1! ... ka! m^0 vm(k1)! . . . vm(ka)!
Так как F (x) Є і? [x] —примитивный многочлен, то существует корень ш этого многочлена в расширении Галуа S = GF(qm) поля і?. Известно, что любая последовательность из Lr (F) представляется в виде линейной комбинации биномиальных последовательностей с корнями из множества корней многочлена F(x) Є i?[x].
k _
Лемма 6. Пусть E(x) = erxr и deg E(x) = kf Є {1,..., q — 1}. Тогда последо-
xr
r=o
(1)
вательность oo представляется в виде
boi) = (s + 1)es+iu0 ® u01) ® l, s Є{0,...,k/ — 1}, (^¿(x),^s(x)) = e,
где l Є Kте; ^¿(x) —минимальный многочлен ЛРП l; ^s(x) —минимальный многочлен ЛРП uQuQ1).
Доказательство. Из определения bQ1) получаем
к/-1
oQ1) = E^uo) ® u01) = Е ф(г + 1)^r+iu0 ® u01).
r=0
Для доказательства леммы достаточно показать, что для двух разных r1,r2 Є {0, ... , k/ — 1} выполняется (^r1 (x), ^r2 (x)) = e, где (x) — минимальный многочлен последовательности uQl u01), i = 1, 2. Воспользуемся биномиальным представлением ли-
(i)
нейных рекуррент u0 и u0 :
m-1 m-1
u0(i)= E (Сш^ (mod p), u>(i)= E (Сш^ш^ (mod p),
j=o o j=o
где ш — корень F(x) в поле S Є Є S d Є {0,...,т — 1} — такое, что xd =
= Ф(1)(x) (mod F’(x)). Для любого r Є {0,... , k/ — 1} представим ЛРП uQ ® uQ1) в виде сумм биномиальных последовательностей:
m — 1 /m — 1
r! E ia9“+9‘ „t , i E ia9“+9‘
uQ(i) ® uQ1)(i) = E _j-----:------г Є “=0 ш9^ш ) (mod p), i ^ 0.
jo+...+jm — 1=r, j0! . . . jm-1! t€{0,...,m-1}
/m-1 \ (1)
Отсюда следует, что wq I Е j«qa + q* ) = г + 1- Значит, u0 ® u0 ) представляется в виде
\а=0 /
линейной комбинации биномиальных последовательностей с коэффициентами из S и
корнями вида ш*, где t Є {0,... , т — 1}, wq(t) = r +1- Таким образом, множества корней в поле разложения многочленов ^ri (x) и ^r2 (x) не пересекаются при r1 = r2; значит, они взаимно просты. ■
Лемма 7. Пусть знаки последовательности u0 представляются в виде функции след u0(i) = ^(£шг) (mod p), где £ Є S', i ^ 0- Тогда для любого s Є {0,... , q — 2} последовательность u0 W ^0^ над координатным множеством K представляется в виде
U0 ® u0 ) = І1 Ф І2,
где /1,/2 Є Kте; ^¿1 (x) —минимальный многочлен последовательности /1; ^¿2 (x) — минимальный многочлен последовательности Z2; Z1 = tr(£s+1^i(s+1)+d) (mod p) и
(^i (x),^i2(x)) = 'Доказательство. Из доказательства леммы 6 следует, что для любого s Є {0, ... , q — 2} последовательность u0 ® u01) представляется в виде
m —1 /m —1 \
u0(i) ® u0 )(i) = Е _j---:-----т£“=0 ш9 ^“=° ' (mod p), i ^ 0.
jo+...+jm—l=s, j0! . . . jm-1!
i€{0,...,m-1}
С другой стороны, период последовательности u0 ® u01) делит т0 = qm — 1- Так как эта последовательность над полем K и q взаимно просто с т0, то её минимальный многочлен ^(x) есть произведение попарно различных унитарных неприводимых многочленов, степени которых делят m, а сама последовательность представляется в виде суммы
^0(6) W u0
r€C
где C — множество минимальных представителей q-циклотомических классов, на которые разбивается множество {0,... , т0 — 1}- Слагаемое вида аш(5+1)г появляется в (38) при условии
q* + jo + qj1 + ... + qm-1 jm-1 = S + 1 (mod qm — 1).
Такое возможно тогда и только тогда, когда t = 0, j0 = s, j = ... = jm-1 = 0-Значит, a = £s+1wd- ■
Индексом нелинейности ненулевого одночлена Zx* будем называть число ind Zx* = = wp(t) [10]- Для нулевого многочлена индекс нелинейности положим равным — то-Индексом нелинейности ind^(x) ненулевого многочлена ^(x) будем называть максимум индексов нелинейности его мономов- Поскольку интерполяционный многочлен произвольного координатного множества K имеет степень, не превышающую q — 1, то
1 ^ ind Фк(x) ^ (p — 1)r.
Отметим, что, согласно [14], многочлен E(x) как функция над конечным полем R из q элементов может быть представлен многочленом E(x) над этим же полем, степень которого не превышает q — 1- Поэтому в дальнейшем считаем, что deg E(x) ^ q — 1-
Получим теперь основной результат-
u0(i) W u01)(i) = tr(arшГІ) (mod p), i ^ 0, (38)
к
Теорема 2. Пусть Е(ж) = Е Є Я [ж], и Є Яд(Я) —ЛРП максимального пери-
«=0
ода, г = Е(и) и выполнены следующие условия:
Е;(ж) не имеет корней в поле Я; (39)
тё Фк (ж) ^ р — 1; (40)
существует такое 5 Є {0,... , к — 1}, что (в + 1, дт — 1) = 1 и ё8+1 = 0.
Тогда по последовательности гп-1 = 7^. 1(Е(и)) однозначно восстанавливается начальный отрезок и(0),..., и(т — 1).
Доказательство. Приведём конструктивный алгоритм восстановления и(0),..., и(т — 1) по гп-1.
Этап I. Полагая в соотношении (13) і = п — 1, находим последовательность бО^. По условию существует такое в Є {0,... , к — 1}, что коэффициент многочлена е8+і = 0. Согласно лемме 6, ЛРП бО^ представляется в виде Ьо^ = (в + 1)е5+1и0 ® иО^ ® I, причём минимальный многочлен ^ (ж) ЛРП I взаимно прост с минимальным многочленом ЛРП иО ® иО^. Отсюда по известной последовательности бО^ однозначно восстанавливается последовательность иО ® иО^.
Согласно лемме 7, по ЛРП иО ® иО^ можно восстановить последовательность ^г(£8+1о^ш(8+1)г), і ^ 0, а по ней £5+1. Пользуясь тем, что (в + 1,дт — 1) = 1, находим величину £. Таким образом, последовательность иО восстановлена.
Этап II. Поскольку иО — ЛРП МП, то последовательность иО^ —её сдвиг, и она также является рекуррентой максимального периода с периодом тО = — 1. Тогда
существует такое іО Є МО, что иО^(іО + і) = 0 для всех і Є {0,..., т — 1}.
Этап III. Из условия (40) следует, что тё ФК(ж) ^ Р — 1, т. е. ф* = 0 только при и>р(в) ^ р — 1. Согласно лемме 5, полиномиальный коэффициент во внутренней сумме сечения (17) не равен 0 по модулю р при условии ^р(і\) + ... + и>р(ір) = и>р(в). Это возможно только при І1 = 0, і2 = 1, . . . , ір = 1. Тогда в двойной сумме в (17)
остаются только слагаемые вида в!ф* ^бО* 1^ .
Пользуясь тем, что для всех і Є {2,... , п — 1} и і Є {0,... , т — 1} верно ^(іо + і) = = ьО1)(іО+і) = Е' (иО(іО + і)) иО1}(іО+і) = 0, так как Е;(иО(іО +і)) = 0 в силу условия (39) теоремы и иО1)(іО + і) = 0 по выбору іО, и полагая в сечении (17) последовательно
і = п — 1, п — 2,..., 2, находим г8(іО + і) для всех в Є {1,..., п — 2} и і Є {0,..., т — 1}. Знаки последовательности £(р, і) и двойной суммы однозначно вычисляются по из-
(1)
вестным знакам последовательностей иО и иО .
Находим гО = Е(иО). Таким образом, узнаем значения ЛРП г над кольцом Я в тактах іО,іО + 1,..., іО + т — 1.
Этап IV. Теперь для каждого і Є {0,... , т — 1} по известным знакам г*(іО + і),
і Є {1,... , п — 1}, используя результат леммы 1 и условие (39), находим знаки последовательностей и*(іО + і), і Є {1,... , п — 1}.
Этап V. Начальный вектор (и(0),... , и(т — 1)) вычисляется по известному вектору (и(іО), и(іО + 1),..., и(іО + т — 1)) с использованием закона рекурсии. ■
Заметим, что условие иО1)(іО + і) = 0 для всех і Є {0,... ,т — 1}, введённое на этапе II алгоритма, можно ослабить: для восстановления начального вектора ЛРП и достаточно найти знаки и(і) в тактах і1,...,іт, таких, что система вычетов по модулю Е(ж) многочленов ж*1,.. .,ж*т линейно независима над Я. Поэтому в последова-
тельности достаточно найти m ненулевых значений ), j = 0,... ,m — 1, для
которых система вычетов по модулю Е(ж) многочленов ж*1,.. .,ж*т линейно независима над R. При этом на этапе V начальный вектор (u(0),... , u(m — 1)) вычисляется по известному вектору (u(i1), u(i2),... , u(im)) следующим образом:
(u(0),..., u(m — 1)) = (u(ii), м(г2),..., u(im))A-1,
где A = (S(F)n e,... , S(F)ime); S(F) —сопровождающая матрица многочлена F(ж); e = (e, 0,... 0). Матрица A обратима в указанных условиях.
k
Следствие 1. Пусть K = r(R), E(ж) = Е esxs G R[x], u G LR(F) — ЛРП макси-
s=0
мального периода, z = E(u) и выполнены следующие условия:
1) E'(ж) не имеет корней в поле R;
2) существует такое s G {0,... , k — 1}, что (s + 1, qm — 1) = 1 и es+1 = 0.
Тогда по последовательности zn-1 = yK 1(E(u)) однозначно восстанавливается начальный отрезок u(0),..., u(m — 1).
Следствие 2. Пусть R = Zpn, K — произвольное координатное множество коль-
k
ца R, E(ж) = Е esxs G R[x], u G (F) — ЛРП максимального периода, z = E(u) и
s=0
выполнены следующие условия:
1) E'(ж) не имеет корней в поле R;
2) существует такое s G {0,... , k — 1}, что (s + 1, qm — 1) = 1 и es+1 = 0.
Тогда по последовательности zn-1 = yK 1(E(u)) однозначно восстанавливается начальный отрезок u(0),..., u(m — 1).
Отметим, что при дополнительных требованиях ограничение (39) на E'(ж) в условиях теоремы 2 можно ослабить.
Для любого i ^ 0 знак производной последовательности можно представить в виде u01}(i) = tr(f Ф(1)(ш)шг) = tr(£wdw*), где d G {0,..., т —1}. Найдём такие d G {0,... , т — 1}, при которых G R. Очевидно, что это включение выполняется только при условии (qm — 1) | d(q — 1). Этому соотношению удовлетворяют только числа вида d = y(1 + +q + ... + qm-1), y G {1,... , q — 1}. Для таких d можно воспользоваться свойством линейности функции след и представить рекурренту u0^ в виде u0^ = cu0, где с — некоторая константа из R. Таким образом, верно следующее следствие.
Следствие 3. Пусть в условиях теоремы 2 для многочлена максимального периода F(ж) G R^] определено число d G {0,... , т — 1}, такое, что <1 (1)(ж) = ж^ (mod Ё(ж)), и выполнены следующие условия:
1) существует такое r G R, что E'(f) = 0;
2) d представляется в виде d = y(1 + q + ... + qm-1), y G {1,...,q — 1};
3) ind (ж) ^ p — 1;
4) существует такое s G {0,... , k — 1}, что (s + 1, qm — 1) = 1 и es+1 = 0.
Тогда по последовательности zn-1 = yK 1(E(u)) однозначно восстанавливается начальный отрезок u(0),..., u(m — 1).
Автор выражает благодарность Д. Н. Былкову за помощь в написании статьи и уточнении некоторых результатов.
ЛИТЕРАТУРА
1. Кузьмин А. С., Маршалко Г. Б., Нечаев А. А. Восстановление линейной рекурренты над примарным кольцом вычетов по её усложнению // Математические вопросы криптографии. 2010. Т.1. №2. С. 31-56.
2. Былков Д. Н. Класс усложнений линейных рекуррент над кольцом Галуа, не приводящий к потере информации // Проблемы передачи информации. 2010. Т. 46. №3. С. 51-59.
3. Tian T. and Wen-Feng Q. Injectivity of compressing map on primitive sequences over Z/(pe) // IEEE Trans. Inform. Theory. 2007. V. 53. No. 8. P. 2960-2966.
4. Xuan-Yong Z. and Wen-Feng Q. Uniqueness of the distribution of zeros of primitive level sequences over Z/(pe) // Finite Fields Their Appl. 2005. V. 11. No. 1. P. 30-44.
5. Xuan-Yong Z. and Wen-Feng Q. Compression mappings on primitive sequences over Z/ (pe) // IEEE Trans. Inform. Theory. 2004. V. 50. No. 10. P. 2442-2448.
6. Xuan-Yong Z. and Wen-Feng Q. Further result of compressing maps on primitive sequences modulo odd prime powers // IEEE Trans. Inform. Theory. 2007. V53. No. 8. P. 2985-2990.
7. Нечаев А. А. Код Кердока в циклической форме // Дискретная математика. 1989. Т. 4. №1. С. 123-139.
8. Кузьмин А. С., Нечаев А. А. Линейные рекуррентные последовательности над кольцами Галуа // Алгебра и логика. 1995. Т. 3. №2. С. 169-189.
9. Нечаев А. А. Цикловые типы линейных подстановок над конечными коммутативными локальными кольцами // Математич. сб. 1993. Т. 184. №3. С. 21-56.
10. Кузьмин А. С., Нечаев А. А. Восстановление линейной рекуррентной последовательности над кольцом Галуа по её старшей координатной последовательности // Дискретная математика. 2011. Т. 23. №2. С. 3-31.
11. Кузьмин А. С., Куракин В. Л., Нечаев А. А. Псевдослучайные и полилинейные последовательности // Труды по дискретной математике. 1997. Т. 1. С. 139-202.
12. Куракин В. Л. Функция переноса в первый разряд в кольце Галуа // Дискретная математика. 2012. Т. 24. №2. С. 21-36.
13. Куракин В. Л. Представления над кольцом Zpn линейной рекуррентной последовательности максимального периода над полем GF(p) // Дискретная математика. 1992. Т. 4. №4. С. 96-116.
14. Глухов М. М., Елизаров В. П., Нечаев А. А. Алгебра. Т. 2. М.: Гелиос, 2003.