Криптография и свобода
Шрифт:
Такие подстановки естественно назвать логарифмическими, а точку х, при которой П(х) = logФр – выколотой точкой логарифмической подстановки П.
Здесь и всюду далее нам будут встречаться два разных типа арифметических операций сложения и вычитания: в кольце Z/N и в поле GF(N+1). Операции в кольце Z/N будем обозначать обычными символами “+” и “-“, а операции в поле GF(N+1) – o и соответственно.
Теорема 1.
Пусть П – логарифмическая подстановка, х1х2,
Тогда если ни одна из точек х1+i,x1,х2+i,x2 не является выколотой, то П(х1+i)- П(x1) П(х2+i)- П(x2).
Доказательство.
Предположим, что П(х1+i)- П(x1)= П(х2+i)- П(x2), тогда ФП(х1+i)- П(x1)=ФП(х2+i)- П(x2).
Поскольку все точки не являются выколотыми, то отсюда вытекает, что (Фх1+i+roр)(Фх2+roр)=(Фх2+i+roр)(Фх1+roр).
Раскрывая скобки и сокращая одинаковые члены в левой и правой частях равенства, получаем
р (Фx1+i+roФx2+r)= р(Фx2+i+roФx1+r)
Поскольку р – ненулевой элемент, то отсюда вытекает, что
Фx1+r(Фi 1)= Фx2+r(Фi 1)
Поскольку i – произвольный ненулевой элемент Z/N, а Ф – примитивный элемент GF(N+1), то Фi1, откуда вытекает, что х1=х2.
Теорема 2. Пусть П – логарифмическая подстановка.
Тогда для любого ненулевого значения iЄZ/N\{0} из условия, что ни одна из точек x, x+i не является выколотой вытекает, что П(х+i)- П(x) i.
Доказательство.
Пусть П(х+i)- П(x) = i. Тогда ФП(х+i)- П(x)= Фi, откуда Фx+r+ioр=Фi(Фx+roр), следовательно, р=рФi. Отсюда следует, что i=0.
Раскинулось поле широко! Операции возведения в степень и логарифмирования в конечном поле позволили ловко избавиться от неопределенности в разности значений подстановки и легко, просто элементарно решить задачу построения матрицы P(П) с минимальным числом нулей. Заметим, что если в определении логарифмических подстановок отказаться от условия, что р – произвольный ненулевой элемент поля GF(N+1), то при р=0 мы получаем обычные линейные подстановки, у которых число нулей в P(П) максимально!
Осталось совсем чуть-чуть: разобраться с выколотой точкой.
Для произвольного ненулевого фиксированного iЄZ/N рассмотрим отображение множества Z/N в Z/N вида:
Mi(х) = П(х+i)- П(х),
где П – логарифмическая подстановка. Тогда, в силу теоремы 1, количество различных значений в множестве {Mi(х), xЄZ/N\{x,x– i}}равно мощности этого множества, т.е.N-2, причем, в силу теоремы 2, это множество в точности совпадает с {Z/N\{i}}. В частности, при любом iN/2 существует такое значение х, xЄZ/N\{x,x– i},
Теорема 3. Пусть П – логарифмическая подстановка.
Тогда если при некотором iN/2 в i-ой строке матрицы P(П) справедливо piN/2>1, то эта строка не содержит нулевых элементов.
Доказательство.
В силу теоремы 2 достаточно доказать, что pii0. Условие piN/2>1означает, что либо Mi(х)=N/2, либо Mi(х– i)=N/2. Зафиксируем то, которое равно N/2, а другое оставшееся значение обозначим через M. Суммируя, как и ранее мы уже делали в этой книге, значения Mi(х) по всем xЄZ/N, получаем:
N/2(N-1) – i + M + N/2 = 0.
Отсюда вытекает, что M=i, следовательно, pii0.
По коням! Пора заняться средней строчкой.
Начнем с самого любимого элемента – pN/2,N/2. Ранее мы уже отмечали, что этот элемент должен быть всегда четным (рассуждения для случая N=2n легко обобщаются для произвольного четного N). Следовательно, в логарифмической подстановке возможны только два значения pN/2,N/2: 0 или 2. Допустим, что pN/2,N/2=2. В силу теоремы 2 эти значения может давать только выколотая точка x0 и x+N/2, т.е.
П(х+N/2)- П(х)= П(х+N/2+N/2)- П(х+N/2)= П(х)- П(х+N/2)=N/2.
Отсюда вытекает, что 2П(х+N/2)=2П(х).
Рассмотрим два случая.
1. р=1, следовательно, П(х)=0. Тогда П(х+N/2)=N/2. Имеем:
ФП(х0+N/2)= ФN/2 Фx0+N/2+roр=ФN/2 ФN/2(1 Фx0+r)= р ФN/2(1oр)= р 2ФN/2 = 1.
Возводя обе части последнего равенства в квадрат и учитывая, что ФN=1, получаем такое равенство возможно только в тривиальном поле из 3 элементов.
2. р1, следовательно, П(х) =N/2, П(х+N/2)=0, откуда
ФП(х0+N/2)= 1 Фx0+N/2+roр=1 р(1 ФN/2)= 1 ФN/2= 1 р– 1.
Возводя это равенство в квадрат, получаем значение р:
р=2– 1
С учетом условия П(х) =N/2 получаем: logФ2– 1 = N/2, откуда 2– 1 =ФN/22– 2 =1. Такое также возможно только в тривиальном поле из 3 элементов.
Следовательно, во всех реальных практически значимых случаях pN/2,N/2=0. Тогда найдется по крайней мере одна строка i, в которой pN/2,i2, и по теореме 3 в ней не будет нулей. Общее число нулей в такой матрице, с учетом уже упоминавшейся ее симметричности, будет равно N-3. Это минимально возможное количество нулей и оно оказалось достижимым!