265e6d87b1a8e58f0549fb36b90f8c7a.ppt
- Количество слайдов: 42
Математика и криптография
Защита информации Криптография Математика
Что такое криптография? А) Наука о способах преобразования информации с целью ее защиты от посторонних. Б) Область научных и инженерно-технических исследований и практической деятельности, которая занимается разработкой, анализом и обоснованием стойкости криптографических средств защиты информации от угроз со стороны противника. Основные задачи криптографии – обеспечение секретности, целостности, аутентификации, невозможности отказа, неотслеживаемости
Классические шифры Шифр простой замены. A={a 1, …, a. N} – алфавит открытого текста, B={b 1, …, b. N} – алфавит шифртекста. Ключ – функция (подстановка) : A B, SN Текст m 1 m 2 … m. T Шифр (m 1) (m 2) … (m. T) Обратное преобразование – 1. Число ключей = N! Сохраняются частоты букв и структура текста: А. Конан-Дойль, Э. По Шифр Цезаря: сдвиг по алфавиту на 3 буквы: (a)=d, (b)=e, (c)=f, (d)=g, (e)=h, …
Классические шифры Шифр Виженера (XVI век) Ключ – лозунг k 0 k 1…k. L– 1 в алфавите A={a 1, …, a. N} = ZN. Открытый текст M={m 1 m 2…}, Шифртекст C = {c 1 c 2…}: ct = mt + kt mod L, t =1, 2, … Обратное преобразование вычитание а б в г д а а б в г д б б в г д е в в г д е ж Вернам (1926): лозунг бесконечной длины г г д е ж з д д е ж з и
Классические шифры Сложение с ключом по модулю – простая замена В шифрах Виженера и Вернама выбором этих замен (подстановок) управляет лозунг. Дисковый шифратор – устройство, которое способом, зависящим от ключа, вырабатывает последовательность наборов подстановок ( t 1, t 2, …, tk), t =1, 2, … Текст M={m 1, m 2, …} шифруется произведениями t = tk tk– 1… t 1 : ct = t mt, t = 1, 2, … Обратное преобразование – с помощью t– 1 Пример: Энигма
Задача анализа Известны: шифртекст, конструкция шифратора и, возможно, открытый текст. Сколько потребуется времени для того, чтобы найти ключ? Шифр простой замены на небольшом алфавите вскрывается быстро. Шифр типа Энигмы вскрыть трудно, если подстановки t выбираются нерегулярно и равновероятно. Эти свойства должны обеспечиваться конструкцией шифратора.
Шифр Теоретическая схема Неизвестные свойства Атаки Практическая реализация Атаки Теперь Атаки В будущем
Современные Математические методы Вычислительные алгоритмы Технические возможности Будущие Будущая Надежность конкретного метода защиты информации Современная
Этапы развития криптографии 1) До II мировой войны: классические шифры 2) От II мировой войны до 70 -х годов: интенсивная радиопереписка. Электронные шифраторы. Шеннон – основатель криптографии как науки 3) От 70 -х годов: резкое увеличение спроса на защиту информации. Электронные сети связи. Криптография используется вне государственного сектора. Открытые конференции и публикации. Массовое привлечение профессиональных математиков
CRYPTO: 1981 – … EUROCRYPT: 1982 – … ASIACRYPT: 1990 – … Fast Software Encryption: 1994 – … Selected Areas in Cryptography: 1994 – … Public Key Cryptography: 1998 – … INDOCRYPT: 2000 – … Journal of Cryptology Designs, Codes and Cryptology Internet………. Труды по дискретной математике 1997 – … МАБИТ: 2001 –. . .
Защищенный канал
Теорема Шеннона о совершенном шифре P{μ = m} = Pот(m), P{θ = k} = PK(k), P{μ = m, ξ = x} = ∑k K: Tk(m)=x Pот(m) PK(k), P{ξ = x} = ∑m Zот P{μ = m, ξ = x}, P{μ = m|ξ = x} = P{μ = m, ξ = x}/ P{ξ = x}. Шифр совершенный, если для всех m Zот и x Zшт P{μ = m|ξ = x} = P{μ = m}. Теорема. а) Если шифр совершенный, то |K|≥|Zот|. б) При |K| = |Zот| существует совершенный шифр.
Пример совершенного по Шеннону шифра Пусть Zот = K = {0, 1, …, N– 1}, PК(θ) = 1/N, θ K, ξ =Tθ(m) = m + θ (mod N). Тогда P{μ = m, ξ =x} = Pот(m)PК(x–m) =1/N Pот(m), P{ξ = x} = ∑m 1/N Pот(m) = 1/N и поэтому P{μ = m|ξ = x} = Pот(m), т. е. шифр совершенный. Если A = {0, 1, …, N– 1} – алфавит, M={m 1, m 2, …, m. L} – текст, θ 1, θ 2, . . . , θL – независимые случайные величины, равномерно распределенные на A, то ξ 1, ξ 2, . . . , ξL, где ξj = mj + θj (mod N), j = 1, …, L, – реализация совершенного шифра. Ключ {θ 1, θ 2, . . . , θL} имеет ту же длину, что текст M.
Математические модели и реальность (Ω, F, P): Ω – множество элементарных событий F – σ-алгебра измеримых подмножеств (событий) P – вероятностная мера на F Случайная величина – измеримая функция ξ: Ω R Утверждения описывают свойства мер событий. а) Конкретный набор чисел – не объект теории вероятностей. Свойства набора чисел и набора функций не могут полностью совпадать. б) С вероятностной точки зрения все реализации набора независимых величин, равномерно распределенных на A = {0, …, N– 1}, равноправны.
Псевдослучайные числа Датчик псевдослучайных чисел: устройство, преобразующее короткое начальное значение (ключ) в последовательность большой длины. Применения: статистическое моделирование, метод Монте-Карло, криптография Желательные свойства датчика: а) большая длина периода, б) неотличимость отрезков псевдослучайных чисел от отрезков реализаций независимых случайных величин, имеющих равномерное распределение.
Псевдослучайные числа – 2 Примеры. а) Линейный конгруэнтный датчик xn+1 = axn + b (mod N); yn = xn/N [0, 1). б) Линейная рекуррентная последовательность над конечным полем F (например, над ZN, GF(2 m)) xn+k = a 0 xn+a 1 xn+1+…+ak– 1 xn+k– 1. Характеристический многочлен f(u) = uk – ak– 1 uk– 1 –. . . – a 1 u – a 0 F [u]. в) Регистр сдвига с переносом yn = xn mod 2, где xn+1 ≡ 2 xn (mod N), n = 0, 1, . . . {xn} – знаки 2 -адического числа M/N
Псевдослучайные числа – 3 Теоретико-числовые датчики г) xn+1=a(xn)– 1+b GF(pr ), p – простое, yn=xnp–r [0, 1], xn=(xn, 1, xn, 2, …, xn, r ), zn=xn, 1 p– 1+xn, 2 p– 2+…+xn, r p–r [0, 1] д) xn+1 (xn)e (mod pr ), p – простое, НОД(e, (pr ))=1 Рассеяние (discrepancy) последовательностей: {xn [0, 1] } {Xn=(xdn+1, xdn+2, …, xdn+n) [0, 1]d}, M(N; b 1, …, bd) = |{n [1, …, N]: Xn [0, b 1] … [0, bd]}|, DN=max{ |1/N M(N; b 1, …, bd) – b 1…bd|: 0
Псевдослучайные числа - 4 Условия максимальности периода а) xn+1 = axn + b (mod N) имеет период N (b, N)=1, p|N p|a– 1, 4|N 4|a– 1. б) xn+k = a 0 xn+a 1 xn+1+…+ak– 1 xn+k– 1 mod p имеет период pk– 1 многочлен f(u) Zp[u] примитивен min{d: ud– 1 делится на f(u)} = pk– 1 f(u) порождает группу поля GF(pk)*. Условия примитивности многочлена = ? в) Регистр сдвига с переносом имеет период N– 1, если N – простое и 2 – первообразный корень по модулю N.
Псевдослучайные числа - 5 Необходимые статистические и другие свойства а) Исследование условий, при которых свойства псевдослучайных последовательностей могут заметно отличаться от свойств «настоящих» случайных последовательностей б) Отсев «плохих» наборов параметров датчиков с помощью стандартных и специальных статистических критериев (наборы тестов Д. Кнута, NIST, Diehard, Testu 0 -1 и др. ) в) Исследование возможности восстановления начального состояния датчика по частично наблюдаемым выходным значениям
Псевдослучайные числа – 6 Нетривиальное свойство G. Marsaglia Random numbers fall mainly in the planes. – Proc. Nat. Acad. Sci. USA, 1968 xn+1 axn (mod N) xn+k akxn (mod N). Если существуют такие целые числа c 0, …, ck, что c 0+c 1 a+… +ck– 1 ak– 1+ckak 0 (mod N), то c 0 xn+c 1 xn+1+… +ck– 1 xn+k– 1+ckxn+k 0 (mod N), т. е. векторы (xn, xn+1, …, xn+k) {0, 1, …, N– 1}k+1 Rk+1 лежат на |c 0|+|c 1|+… +|ck– 1|+|ck| гиперплоскостях c 0 xn+c 1 xn+1+… +ck– 1 xn+k– 1+ckxn+k = m. N, m =1, 2, … Как правило, от xn переходят к yn=g(xn, xn+1, …, xn+r)
Формализации понятия случайности Мизес, Черч, Колмогоров, Мартин-Лёф, . . . A – конечный алфавит, A* – множество всех конечных слов над A, f : A* – вычислимое отображение. Слово y A* – описание слова x A*, если f(y)=x. Сложность Lf(x) слова x относительно f – минимальная длина описания x. Отображение f: A* A* не хуже g: A* A*, если существует такое C=Cf, g< , что Lf(x)
Формализации понятия случайности – 2 Криптографический подход к псевдослучайности Датчик псевдослучайных чисел с качеством S(n) – семейство {Fn } конечных автоматов. Автомат Fn по случайному набору Xn= {x 1, …, xn } {0, 1}n строит набор Yn={y 1, …, yk(n)} {0, 1}n. Zn={ζ 1, …, ζk(n)} – независимые случайные величины, P{ζm=0}= P{ζm=1}=1/2, m=1, 2, …, и Wn: {0, 1}k(n) {0, 1} – любая статистика. Если Tn – сложность вычисления Wn и |P{Wn(Zn)=1} – P{Wn(Yn)=1}| = n, то Tn / n > S(n), где S(n) – заданная функция.
Формальная модель датчика Датчик псевдослучайных чисел – конечный автономный автомат F = (S, Y, f, g): S – множество состояний, Y – выходной алфавит, f : S S – функция переходов, g : S S – функция выхода, sn+1 = f(sn), yn = g(sn), n = 0, 1, … Выходные последовательности конечных автоматов можно назвать детерминированными. Они всегда периодичны знаки =3, 1415926. . . – не детерминированная последовательность! Число функций f : S S равно |S||S|. Как правило, функция порождает период порядка |S|1/2. g g. K – модель поточного шифратора
Однонаправленные функции Семейство функций fn : Xn Yn– однонаправленное (one-way), если для любого x Xn сложность вычисления fn(x) с ростом n растет медленно, а минимальная по y Yn сложность решения уравнения fn(x)=y растет быстро. Гипотеза: fp(x)= x (mod p) и f(p, q)=pq – однонаправленные функции (задачи дискретного логарифмирования и факторизации вычислительно сложны). Теорема. Если существует однонаправленная функция, то с ее помощью можно построить хороший датчик псевдослучайных чисел.
Развитие шифра простой замены Текст – двоичная последовательность – разбивается на блоки длины n (n= 64, 128, …); блоки – буквы алфавита, состоящего из 2 n букв. Устройство, реализующее (зависящие от ключа θ) подстановки fθ на таком алфавите, называется блочным шифратором. Сложность решения систем уравнений {fθ(mk) = ck} относительно θ должна быть высокой, т. е. f должна быть близка по свойствам к однонаправленной функции. Обоснованием – нижние оценки сложности, но их либо нет, либо они «теоретические» .
Блочный шифратор AES (с 2002 г. ) Блок=128 бит (16 байтов по 8 бит) A=||aik||i, k=1, …, 4. Проводится 10 циклов преобразования по 4 этапа а) aik (aik)– 1 в поле GF(28), к полученной матрице применяется аффинное преобразование; б) элементы i-й строки сдвигаются на i позиций вправо, i = 1, 2, 3, 4; в) (a 1 k, a 2 k, a 3 k, a 4 k)T a 4 kx 3+a 3 kx 2+a 2 kx+a 1 k GF(28)[x] умножается на 03 x 3+01 x 2+01 x+02 по модулю x 4+1 и образует новый k-й столбец; г) матрица складывается с матрицей, которая зависит от ключа из 128 бит и от номера цикла.
Криптография с открытым ключом Противник B M e(PA) d(SA) =e(PA, M) PA M A SA K d(SA, e(PA, M)) = M = e(PA, d(SA, M)) а) Функции e и d просто вычисляются б) Решение уравнения e(P, M) = c относительно M и нахождение S по P – вычислительно трудные задачи в) Пары (P, S) строить легко
Криптография с открытым ключом - 2 Применения: обмен ключами, цифровая подпись, аутентификация и др. RSA (Rivest, Shamir, Adleman). Построение: p, q – простые большие секретные числа, n=pq; (n)=(p – 1)(q– 1) – функция Эйлера, d – большое целое число, НОД(d, (n))=1, ed 1 (mod (n)). Ключи: PA = (n, e), SA = d, e(P, M) = Me (mod n), d(S, x) = xd (mod n) Med Mk (n)+1 M (mod n) Обоснование: сложность задачи факторизации
Криптография с открытым ключом - 3 Схема El-Gamal. Построение: p – большое простое число, - первообразный корень по модулю p. Ключи: SA = x {2, …, p– 2}, PA = y = x (mod p). Шифрование сообщения M: выбрать случайно большое число r {2, …, p– 2}, вычислить k yr(mod p) M (C 1, C 2) = ( r (mod p), k. M (mod p)). Расшифрование: k yr ( x)r ( r)x (C 1)x (mod p), M C 2 k– 1 (mod p). Обоснование: сложность задачи дискретного логарифмирования – решения сравнения x y (mod p)
Криптография с открытым ключом – 4 Сложность факторизации: простой алгоритм – O(n 1/2), современный асимптотически наилучший – O(exp(C(ln n)1/3 (ln ln n)2/3) Алгоритмы с такими же оценками построены для задачи дискретного логарифмирования.
Криптография Математика Методы: алгебры, теории чисел, теории вероятностей, теории сложности алгоритмов Разделы: конечные алгебраические структуры (группы, поля, кольца), вычислительная теория чисел, вычислительная алгебра, дискретные вероятностно-статистические задачи, логика (в том числе сложность алгоритмов)
Математика на конференциях по криптографии Алгебра (Конечные группы, поля, эллиптические кривые) Булевы функции и отображения конечных пространств Сложность алгоритмов Алгоритмическая теория чисел (дискретные логарифмы, факторизация) Псевдослучайные числа Труды по дискретной математике Линейные рекуррентные последовательности и обобщения Вероятностные задачи (системы случайных уравнений, распределения на конечных группах, конечные вероятностные автоматы, случайные размещения, вероятностная комбинаторика, свойства случайных последовательностей, перестановок, многочленов), Математическая статистика (полиномиальные испытания, цепи Маркова, статистики типа 2)
Из ТДМ: Группы перестановок А. Ю. Зубов (ТДМ-2, 1998). Пусть SN – группа перестановок на {0, 1, …, N– 1}, g = (0, 1, …, N– 1) – циклическая перестановка, h = (0, 1) SN – транспозиция, D – диаметр группы SN относительно порождающей системы {g, h}. Тогда D [(N– 1)/2] ([N/2] + N – 1) + 2 N – 1, D 3 N 2/4 – 2 N, N четно, D 3[N/2]2 – N + 3, N нечетно.
Из ТДМ: классические шифры Пусть A – конечный алфавит, An – множество всех слов длины n над алфавитом A. В 1956 году А. А. Марков доказал, что все взаимно однозначные отображения An An, не распространяющие ошибок типа замены букв, являются суперпозицией шифров простой замены и перестановки. М. М. Глухов (ТДМ-4, 2001) обобщил эту теорему на отображения, не размножающие ошибки из более широкого класса: замен, удалений и вставок.
Из ТДМ: линейные рекуррентные последовательности А. С. Кузьмин, В. Л. Куракин, А. А. Нечаев (ТДМ-1, . . . , 5) изучали свойства линейных и полилинейных рекуррентных последовательностей над квазифробенисовыми модулями и кольцами Галуа. В частности, рассматривались: – условия максимальности периода, – ранги координатных последовательностей, – распределения элементов циклов, – представления последовательностей.
Из ТДМ: теория чисел М. И. Анохин (ТДМ-3, 2000) показал, что если вероятностный алгоритм A решает задачу дискретного логарифмирования для множества N модулей с вероятностью p , то существует вероятностный алгоритм B, который находит некоторые делители чисел из N с вероятностью k , 0 < k < 1. Если A имеет полиномиальную сложность, то B тоже имеет полиномиальную сложность.
Из ТДМ: теория чисел В. Е. Тараканов (ТДМ-3, 4, 2000 – 2001) рассматривал эллиптические кривые y 2=x 3+Ax+B над полем Zp, p > 3, 4 A 3+27 B 2 0. Для отображения (x) = x 3+Ax+B найдены числа элементов с k = 0, 1, 2, 3 прообразами, описаны множества элементов группы эллиптической кривой, имеющих порядки 3, 4. Найдено условие, необходимое и достаточное для того, чтобы порядок точки эллиптической кривой был равен 2.
Из ТДМ: вероятностные автоматы С. Ю. Мельников (ТДМ-7, 2004) показал, что для конечного неавтономного автомата множество возможных совместных распределений слов из заданного множества во входных и выходных периодических последовательностях образует выпуклый многогранник. В. А. Иванов (ТДМ-2, 3) получил формулы для вероятности изменения символа на выходе конечного неавтономного автоматав результате искажения символа входной последовательности.
Из ТДМ: теория вероятностей Г. И. Ивченко, Ю. И. Медведев (ТДМ-2, . . . , 8) применили методы теории разделимых статистик к задачам случайных размещений частиц, случайным многочленам, случайным перестановкам, обобщенным урнам Пойа. Б. А. Севастьянов (ТДМ-3, 2000) нашел предельные распределения перманентов случайных m n-матриц над конечным полем GF(p).
Из ТДМ: теория вероятностей В. Г. Михайлов, А. М. Шойтов (ТДМ-3, 7, 8). Пусть 1, …, n – последовательность независимых одинаково распределенных случайных величин. Доказаны предельные теоремы для числа таких пар (i, j), что s-цепочки ( i+1, i+2, …, i+s) и ( j, …, j+s) «похожи» , например, различаются только перестановкой элементов. А. М. Зубков (ТДМ-5, 2002) предложил эффективный метод точного вычисления распределений сумм зависимых случайных величин, основанный на использовании цепей Маркова.
Из ТДМ: математическая статистика Цикл работ М. И. Тихомировой и В. П. Чистякова (ТДМ-1, . . . , 8) посвящен исследованиям статистических критериев (обобщениям критерия Пирсона) для проверки статистических гипотез о структуре дискретных случайных последовательностей; критерии основаны на частотах цепочек, образованных элементами последовательности.