Теория кодирования.pptx
- Количество слайдов: 30
Теория кодирования. Криптоанализ.
Энтропия Пусть задан алфавит источника А = { si }, i = 1. . q и соответствующие вероятности pi = p(si). Тогда количество информации, полученное для i-того символа равно I(si) = log 2(1/pi). В среднем за все сообщение получаем Эта величина называется энтропией системы S по основанию r, с символами si и вероятностью pi.
Информационный канал (ИК) – это статистическая модель среды, через которую проходит сигнал или в которой он хранится. Энтропия источника равна Н(А), энтропия канала связи равна Н(В)
Канал описывается матрицей условных вероятностей Рi, j = Р(bj|ai), где строки содержат вероятность того, что входной символ ai из алфавита, содержащего q букв, попадет в каждый из выходных символов bj из алфавита, содержащего s букв. i-я строка соответствует iму входному символу ai, jй столбец j-му выходному символу bj. Сумма элементов строки равна 1
Взаимная информация — статистическая функция двух случайных величин, описывающая количество информации, содержащееся в одной случайной величине относительно другой. В нашем ИК имеет место и другое соотношение, называемое условной энтропией: где р(а) и р(b) – вероятности выбора входного символа ai или выходного bj символа соответственно. Пропускная способность канала:
Теорема Шеннона для канала с шумами Пусть К – длина блока, генерируемого источником; L – длина блока, который будет передан по каналу (после кодирования); R=K/L – скорость передачи сообщений (производительность источника); С – пропускная способность канала; Per – средняя вероятность ошибки декодирования блока; Per, max – максимальная вероятность ошибки декодирования блока.
Прямая теорема: Если скорость передачи сообщений меньше пропускной способности канала связи (R < C), то существуют коды и методы декодирования такие, что средняя и максимальная ошибка декодирования блока стремятся к нулю, когда длина блока стремится к бесконечности (Per, max, Per → 0 при L → ∞) Обратная теорема: Если скорость передачи больше пропускной способности, то есть R > C, то не существует таких способов передачи, при которых вероятность ошибки стремится к нулю (Per → 0 ) при увеличении длины передаваемого блока, (L → ∞).
Криптография Шифрование – это кодирование данных с целью защиты от несанкционированного доступа.
Ключ – это сменный элемент шифра, который позволяет зашифровать и расшифровать переданный исходный текст. Криптоанализ — наука о методах расшифровки зашифрованной информации без предназначенного для такой расшифровки ключа (взлом шифра). Криптостойкость – свойство шифра противостоять раскрытию, оценивается сложностью алгоритма дешифрации.
Определение: Функция f: {0, 1}* → {0, 1}* является односторонней функцией, если она эффективно вычисляется за полиномиальное время на детерминированной машине Тьюринга, но не существует полиномиальной вероятностной машины Тьюринга, которая обращает эту функцию с более чем экспоненциально малой вероятностью.
Алгебра секретных систем Если имеются две секретные системы T и R, их часто можно комбинировать различными способами для получения новой секретной системы S. Если T и R имеют одну и ту же область (пространство сообщений), то можно образовать своего рода «взвешенную сумму» где p + q = 1. Полный ключ S должен указывать, какая из систем T или R выбрана и с каким ключом используется выбранная система. Обобщая далее можно получить
Если T состоит из отображений T 1, …, Tm с вероятностями p 1, …, pm, то любая система Т может быть записана как сумма фиксированных значений где Ti – определенная вероятность шифрования в системе T, соответствующая выбору ключа i, где вероятность такого выбора равна pi Пусть T и R - такие две системы, что область определения (пространство языка) системы R может быть отождествлена с областью определения (пространством криптограмм) системы T. Тогда можно применить сначала систему T к нашему языку, а затем систему R к результату этой операции, что дает результирующую операцию S, которую запишем в виде произведения S = RT
Ключ системы S состоит как из ключа системы T, так и из ключа системы R, причем предполагается, что эти ключи выбираются соответственно их первоначальным вероятностям и независимо. Если m ключей системы T выбирается с вероятностью а n ключей системы R имеют вероятности то система S имеет самое большее mn ключей с вероятностями Не для всех систем R, T, S умножение коммутативно. Но поскольку это операция, то оно ассоциативно:
Верны следующие законы: Взвешенный ассоциативный закон сложения Право- и левосторонние дистрибутивные законы А так же справедливо равенство Система, у которой пространства M и E можно отождествить, может быть названа эндоморфной. Такую Т можно возводить в степень Секретная система T, произведение которой на саму себя равно T, т. е. такая, что будет называться идемпотентной.
Множество эндоморфных шифров с одним и тем же пространством сообщений и двумя операциями комбинирования -- операцией взвешенного сложения и операцией умножения -- образуют линейную ассоциативную алгебру с единицей, с той лишь особенностью, что коэффициенты во взвешенном сложении должны быть неотрицательными, а их сумма должна равняться единице. В этом случае шифровальщик противника расшифровывает секретную систему типа где А, В, …, S в данном случае - известные типы шифров с их вероятностями pi, а p’X соответствует возможности использования совершенно нового неизвестного шифра.
Шифрование с помощью случайных чисел Пусть имеется датчик псевдослучайных чисел, работающий по некоторому определенному алгоритму. Часто используется такой алгоритм: Ti+1 : = (a*Ti + b) mod c, где Ti – предыдущее псевдослучайное число, Ti+1 – следующее, а коэффициенты a, b, c постоянны и хорошо известны. Обычно с = 2 n, a mod 4 = 1, b – нечетное. Тогда последовательность имеет период с.
Шифруемое сообщение представляется в виде последовательности слов S 0, S 1…, каждое длины n, которые складываются по модулю 2 со словами последовательности T 0, T 1, … то есть Сi : = Si +2 Ti. Последовательность T 0, T 1, … называется гаммой шифра Процесс расшифровывания заключается в том, чтобы еще раз сложить полученную последовательность с той же гаммой шифра Si : = Сi +2 Ti Ключом шифра является начальное значение T 0
Шифры, в которых для зашифровки и расшифровки используется один и тот же ключ, называют симметричными. Блочные шифры представляют собой последовательность (с возможным повторением и чередованием) основных методов преобразования, применяемую к блоку (части) шифруемого текста. Режим электронной шифровальной книги (electronic codebook) – это наиболее очевидный способ использования блочного шифра: блок открытого текста заменяется блоком шифротекста.
Алгоритм DES Рассмотрим работу алгоритмов криптосистемы DES. Пользователи выбирают ключ, содержащий 56 битов. Один и тот же ключ используется при зашифровании и расшифровании сообщений, поэтому храниться и передаваться он должен секретной почтой. В позиции 8, 16, 24, . . . , 64 ключа добавляются двоичные символы так, чтобы сумма единиц в байтах была нечетной. Это позволяет проводить проверку ключа при передаче и хранении. 56 битов ключа, находящиеся на позициях 1, 2, 3, . . . , 7, 9, 11, . . . 17, 19, 20, 21, . . . 63, подвергаются следующей перестановке:
Перестановка определяется двумя блоками C 0 и D 0 по 28 бит в каждом. Далее используются итеративные процедуры преобразования. Получив некоторые блоки Cn– 1 , Dn– 1 , строим блоки Cn , Dn для n = 1, 2, 3, 4, . . . , 16 одним или двумя левыми сдвигами из блоков Cn– 1 , Dn– 1 в соответствии со следующей таблицей сдвигов:
При левых сдвигах все элементы блока смещаются влево на одну или две позиции циклически в пределах данного блока. Из блоков Cn. Dn строятся перестановки Kn , состоящие из 48 бит (биты 9, 18, 22, 25, 38, 43, 54 в перестановки не входят). Остальные биты переставляются следующим образом: Все приведенные вычисления являются предварительными. Из иcходного ключа вычислено 16 последовательностей Kn по 48 бит в каждой.