Криптография и свобода

ОглавлениеДобавить в закладки К обложке

то, поскольку 2n–2n-1 = 2n-1, то (6) будет справедливо и при значении y1 = y+2n-1. Таким образом, элемент p(2n-1)(2n-1) не может быть нечетным.

Предположим, что некоторая i-я строка целиком ненулевая. Это означает, что среди значений j,j1,…,j2n-1, получаемых по формуле

jk =П(k+i)- П(k) (7)

содержатся все ненулевые элементы из Z/2n, а какой-то один элемент встретился ровно 2 раза.

Просуммируем соотношение (7) по всем k от 0 до 2n-1. Поскольку П – подстановка, то в правой части суммы получается 0, следовательно, сумма всех значений jk также должна быть нулевой.

Но среди j,j1,…,j2n-1 содержатся все ненулевые элементы из Z/2n, а какой-то один элемент встретился ровно 2 раза. Поскольку сумма (по модулю 2n) всех ненулевых элементов кольца Z/2n равна 2n-1(2n-1) = 2n-1, то элементом, встретившимся два раза, должно быть 2n-1.

Тогда, в силу свойства pij = p(2n-i)(2n-j) для любого значения i должно выполняться

pi2n-1 = p(2n-i)2n-1 = 2

и при i<>2n-1 получается, что в 2n-1 столбце как минимум 2 элемента равны 2. Следовательно, если некоторая i-я строка при i<>2n-1 целиком ненулевая, то 2n-1 столбец заведомо содержит хотя бы один нулевой элемент, т.е. множество (GП)2 не является 2-транзитивным ни при какой подстановке П.

И еще отсюда сразу же вытекает, что общее число нулей в матрице P(П) не может быть меньше, чем 2n-3. В этом случае в матрице ровно две ненулевых строки, расположенных симметрично друг от друга, а в средней строке с номером 2n-1 ровно одно нулевое значение посередине: p(2n-1)(2n-1) = 0.

Подобными же методами легко показать, что в общем случае множество (GП)k является 2-транзитивным при k>2 в том и только том случае, когда матрица P(П)k-1 не содержит нулей. В частности, множество (GП)3 является 2-транзитивным тогда и только тогда, когда матрица P(П)2 не содержит нулей.

Стало ясно, в каком направлении вести математические раскопки теории шифров на новой элементной базе: изучать матрицы P(П) для различных подстановок П. Здесь сразу же выделялись плохие подстановки – это линейные преобразования вида

П(x) = ax+b

В этом случае при любом фиксированном i<>0 система (2) имеет решение только при одном значении j<>0, такая матрица заведомо не будет положительной ни в какой степени и свойство 2-транзитивности недостижимо. Число нулей у такой матрицы будет максимальным.

А можно ли построить подстановки с минимально возможным числом нулей в матрице P(П)? Этот вопрос уже гораздо интереснее, простого и тривиального ответа на него нет. Пока. Но в следующих главах этой книги ситуация проясниться и в конечном итоге получится очень красивый результат.

Но это больше теоретические дебри. С точки зрения практического применения гораздо важнее знать, чего можно ожидать от матрицы P(П) при случайном и равновероятном выборе П. И здесь были доказаны очень важные теоремы о том, что в среднем ненулевых элементов в этой матрице будет примерно 2/3, что с вероятностью, близкой к 1, при случайном и равновероятном выборе П матрица P(П)2 не будет содержать нулевых элементов, а группа <g,П> будет совпадать с симметрической. В общем, все то, что требуется для использования подстановки П в качестве случайного разового ключа.

Вот такая была предыстория работ по шифрам на новой элементной базе. А ребята из НИИ Автоматики, по мотивам всех этих результатов, придумали следующую схему блочного шифра, работающего на основе байтового регистра сдвига и использующего только самые типовые операции с байтами, которые заложены в архитектуру появлявшихся тогда микропроцессоров. Эту схему назвали «Ангстрем-3».

В ней два регистра сдвига, работающих с байтами. В первый регистр сдвига длиной 8 байт записывается 8-байтовый блок открытого текста, во второй – ключ, или как его еще можно здесь назвать входное слово, длины Т для первого регистра. Схема крутится Т тактов, после чего заполнение первого регистра выдается в качестве 8 байтового блока шифртекста. Типичный блочный шифр, все операции сложения – в кольце Z/256, реализация – изумительно простая, если писать программу, то это буквально две-три строки.


Логин
Пароль
Запомнить меня