Выработка имитовставки к массиву данных. 


Мы поможем в написании ваших работ!



ЗНАЕТЕ ЛИ ВЫ?

Выработка имитовставки к массиву данных.



 

Рис. 11 Алгоритм зашифрования (расшифрования) данных в режиме гаммирования с обратной связью.

Рис. 12. Алгоритм выработки имитовставки для массива данных.

Для решения задачи обнаружения искажений в зашифрованном массиве данных с заданной вероятностью в ГОСТе предусмотрен дополнительный режим криптографичес­кого преобразования – выработка имитовставки, контрольной ком­бинации, зависящей от открытых данных и секретной ключевой информации. Целью использования ими­товставки является обнаружение всех случайных или преднамеренных изменений в массиве информации. Схема этого режима приведена на Рис. 12. В качестве имитовставки берется часть блока, полученного на выходе, обычно 32 его младших бита. При выборе размера имито­вставки надо принимать во внимание, что вероятность успешного навязывания ложных данных равна величине 2–| И | на одну попытку подбора. При использовании имитовставки размером 32 бита эта вероятность равна 2–32»0.23·10–9.

Требования к качеству ключевой информации и источники ключей.

Не все ключи и таблицы замен обеспечивают максимальную стойкость шифра. Сам факт существования слабых ключевых данных в Российском стандарте шифрования не вызывает сомнения - очевидно, нулевой ключ и тривиальная таблица замен, по которой любое значение заменяется но него самого, являются слабыми, при использовании хотя бы одного из них шифр достаточно просто взламывается, каков бы ни был второй ключевой элемент.

Ключ должен являться массивом статистически независимых битов, принимающих с равной вероятностью значения 0 и 1. При этом некоторые конкретные значения ключа могут оказаться «слабыми», то есть шифр может не обеспечивать заданный уровень стойкости в случае их использования. Однако, предположительно, доля таких значений в общей массе всех возможных ключей ничтожно мала. Поэтому ключи, выработанные с помощью некоторого датчика истинно случайных чисел, будут качественными с вероятностью, отличающейся от единицы на ничтожно малую величину. Если же ключи вырабатываются с помощью генератора псевдослучайных чисел, то используемый генератор должен обеспечивать указанные выше статистические характеристики, и, кроме того, обладать высокой криптостойкостью, не меньшей, чем у самого ГОСТа. Иными словами, задача определения отсутствующих членов вырабатываемой генератором последовательности элементов не должна быть проще, чем задача вскрытия шифра. Кроме того, для отбраковки ключей с плохими статистическими характеристиками могут быть использованы различные статистические критерии. На практике обычно хватает двух критериев, – для проверки равновероятного распределения битов ключа между значениями 0 и 1 обычно используется критерий Пирсона («хи квадрат»), а для проверки независимости битов ключа – критерий серий. Об упомянутых критериях можно прочитать в учебниках или справочниках по математической статистике.

Таблица замен является долговременным ключевым элементом, то есть действует в течение гораздо более длительного срока, чем отдельный ключ. Предполагается, что она является общей для всех узлов шифрования в рамках одной системы криптографической защиты. Даже при нарушении конфиденциальности таблицы замен стойкость шифра остается чрезвычайно высокой и не снижается ниже допустимого предела. К качеству отдельных узлов замен можно предъявить приведенное ниже требование. Каждый узел замен может быть описан четверкой логических функций, каждая из которых имеет четыре логических аргумента. Необходимо, чтобы эти функции были достаточно сложными. Это требование сложности невозможно выразить формально, однако в качестве необходимого условия можно потребовать, чтобы соответствующие логические функции, записанные в минимальной форме (т.е. с минимально возможной длиной выражения) с использованием основных логических операций, не были короче некоторого необходимого минимума. В первом и очень грубом приближении это условие может сойти и за достаточное. Кроме того, отдельные функции в пределах всей таблицы замен должны отличаться друг от друга в достаточной степени. На практике бывает достаточно получить узлы замен как независимые случайные перестановки чисел от 0 до 15, это может быть практически реализовано, например, с помощью перемешивания колоды из шестнадцати карт, за каждой из которых закреплено одно из значений указанного диапазона.

Необходимо отметить еще один интересный факт относительно таблицы замен. Для обратимости циклов шифрования 32–З и 32–Р не требуется, чтобы узлы замен были перестановками чисел от 0 до 15. Все работает даже в том случае, если в узле замен есть повторяющиеся элементы, и замена, определяемая таким узлом, необратима, однако в этом случае снижается стойкость шифра. Почему это именно так, не рассматривается в настоящей статье, однако в самом факте убедиться несложно. Для этого достаточно, используя демонстрационную программу шифрования файлов данных, прилагающуюся к настоящей статье, зашифровать а затем расшифровать файл данных, использовав для этой процедуры «неполноценную» таблицу замен, узлы которой содержат повторяющиеся значения.

Шифрование по стандарту DES

Алгоритм, изложенный в стандарте DES (Data Encryption Standard), наиболее распространен и широко применяется для шифрования данных в США. Он был разработан фирмой IBM для собственных целей, но после проверки Агентством Национальной Безопасности США был рекомендован к применению в качестве федерального стандарта шифрования. Алгоритм DES не является закрытым и был опубликован для широкого ознакомления. Алгоритм предназначен для зашифровки и расшифровки блоков данных длиной по 64 бита под управлением 64-битового ключа. Расшифровка должна выполняться с использованием того же ключа, что при зашифровке, но с обращением порядка адресации битов ключа, так что процесс расшифровки обратен процессу зашифровки.

Рассмотрим сначала процесс шифрования и расшифровывания каждого блока в отдельности.

2.4.1. Алгоритм шифрования:

1 Обработка ключа.

1.1 Получите 64-битный ключ от пользователя. (Каждый 8-й бит (младший значащий бит каждого байта) рассматривается как бит паритета. Для того, чтобы ключ имел правильный паритет, каждый байт должен содержать четное число единиц. Теперь этот ключ можно непосредственно вводить, или он может быть результатом хеширования чего-нибудь другого. Для этой цели нет стандартных алгоритмов хеширования.

1.2 Вычисление порядка ключей

1.2.1 Выполните следующие перестановки на 64-х битном ключе. (Биты паритета выброшены, ключ уменьшается до 56 бит).



Поделиться:


Последнее изменение этой страницы: 2021-12-15; просмотров: 79; Нарушение авторского права страницы; Мы поможем в написании вашей работы!

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 3.21.233.41 (0.006 с.)