1. Санкт–Петербургское отделение Математического института
им. В.А. Стеклова РАН
Перестановочные малочлены и их применение в
криптографии
Рыбалкин Михаил
Fp n ������x n + ������x m + ������x k
2011
2. Криптосистема с открытым ключом
Получатель Канал связи Отправитель
Создание функций
шифрования E (x)
Посылка сообщения M
E (x) и D(x)
M ′ = E (M)
Расшифровка M′
M = D(M ′ )
Криптографический протокол RSA (Ривест–Шамир–Адлеман):
Сообщение — число от 0 до n − 1, где n = pq.
Функции E (x) = x e mod n, D(x) = x d mod n.
Рыбалкин Михаил Перестановочные малочлены и их применение в криптографии 2/5
3. Криптосистема с открытым ключом
Получатель Канал связи Отправитель
Создание функций
шифрования E (x)
Посылка сообщения M
E (x) и D(x)
M ′ = E (M)
Расшифровка M′
M = D(M ′ )
Криптографический протокол RSA (Ривест–Шамир–Адлеман):
Сообщение — число от 0 до n − 1, где n = pq.
Функции E (x) = x e mod n, D(x) = x d mod n.
А может ли E (x) иметь другой вид?
Рыбалкин Михаил Перестановочные малочлены и их применение в криптографии 2/5
4. Полиномиальные функции шифрования
E (x) = a0 + a1 x + ... + ak x k mod n
Какой должна быть фукнция E ?
Рыбалкин Михаил Перестановочные малочлены и их применение в криптографии 3/5
5. Полиномиальные функции шифрования
E (x) = a0 + a1 x + ... + ak x k mod n
Какой должна быть фукнция E ?
Биекция на [0..n − 1]
Такие многочлены называются перестановочными.
Малая сложность вычисления
Будем рассматривать малочлены.
Задача обращения должна быть сложной без знания секрета.
Рыбалкин Михаил Перестановочные малочлены и их применение в криптографии 3/5
6. Полиномиальные функции шифрования
E (x) = a0 + a1 x + ... + ak x k mod n
Какой должна быть фукнция E ?
Биекция на [0..n − 1]
Такие многочлены называются перестановочными.
Малая сложность вычисления
Будем рассматривать малочлены.
Задача обращения должна быть сложной без знания секрета.
Нет простых критериев перестановочных многочленов
Рыбалкин Михаил Перестановочные малочлены и их применение в криптографии 3/5
7. Перестановочные двучлены x n + ax m mod p
Пример: x 17 + 104x 53 mod 139
Свойства:
p−1
d= gcd(p−1,m) < 2 log p (?) [Masuda 2007]
Проверка перестановочности — O(d 3 ) [Zieve 2007]
Нахождение обратного — O(d 3 ) [Wang 2009]
Вместо E (x) = (x e mod pq) возьмем E (x) = (x n + ax m mod pq)
Рыбалкин Михаил Перестановочные малочлены и их применение в криптографии 4/5
8. Перестановочные двучлены x n + ax m mod p
Пример: x 17 + 104x 53 mod 139
Свойства:
p−1
d= gcd(p−1,m) < 2 log p (?) [Masuda 2007]
Проверка перестановочности — O(d 3 ) [Zieve 2007]
Нахождение обратного — O(d 3 ) [Wang 2009]
Вместо E (x) = (x e mod pq) возьмем E (x) = (x n + ax m mod pq)
Но (p − 1)(q − 1) имеет много общих делителей с (m − n).
Усложнение функции шифрования с x e на x n + ax m делает протокол
ненадежным.
Рыбалкин Михаил Перестановочные малочлены и их применение в криптографии 4/5
9. Перестановочные трехчлены x n + ax m + bx k mod p
Все трехчлены можно разделить на 3 класса:
(x + a)3
D4 (x, a)
x n + ax m + bx k , где НОД(m − n, k − n) имеет большое значение.
Гипотезы:
Аналогично двучленам (p − 1)(q − 1) имеет много общих
делителей с (m − n) и (k − n)
Малочлены не могут быть использованы в качестве функции
шифрования в RSA.
Рыбалкин Михаил Перестановочные малочлены и их применение в криптографии 5/5