Законный получатель, приняв шифртекст С, расшифровывает его с помощью обратного преобразования
и получает исходное сообщение ввиде открытого текста :Рис. 2. Обобщённая схема криптосистемы
Преобразование
выбирается из семейства криптографических преобразований, называемых криптоалгоритмами. Параметр, c помощью которого выбирается отдельное используемое преобразование, называется криптографическим ключом . Криптосистема имеет разные варианты реализации: набор инструкции, аппаратные средства, комплекс программ компьютера, которые позволяют зашифровать открытый текст и расшифровать шифртекст различными способами, один из которых выбирается с помощью конкретного ключа .Говоря более формально, криптографическая система - это однопараметрическое семейство
обратимых преобразований из пространства сообщений открытого текста в пространство С шифрованных текстов. Параметр (ключ) выбирается из конечного множества К, называемого пространством ключей.Преобразование шифрования может быть симметричным или асимметричным относительно преобразования расшифрования. Это важное свойство функции преобразования определяет два класса криптосистем:
· симметричные (одноключевые) криптосистемы;
· асимметричные (двухключевые) криптосистемы (с открытым ключом).
Схема симметричной криптосистемы с одним секретным ключом показана на рис.2. В ней используются одинаковые секретные ключи в блоке шифрования и блоке расшифрования.
Обобщенная схема асимметричной криптосистемы с двумя разными ключами
и показана на рис. 3.Рис. 3. Обобщённая схема ассиметричной криптосистемы с открытым ключом.
В этой криптосистеме один из ключей является открытым, а другой - секретным.
В симметричной криптосистеме секретный ключ надо передавать отправителю и получателю по защищенному каналу распространения ключей, например такому, как курьерская служба. На рис. 2 этот канал показан "экранированной" линией. Существуют и другие способы распределения секретных ключей. В асимметричной криптосистеме передают по незащищенному каналу только открытый ключ, а секретный ключ сохраняют на месте его генерации.
Существуют два основных современных класса шифров: поточные и блочные шифры.
Шифр Вернама - практически и теоретически неуязвим (строится на ключевом потоке случайных бит).
Шифры на псевдослучайном ключевом потоке бит - уязвимы для криптоанализа. Их достоинства - ошибки не влияют на дешифрование последующих за ошибкой данных. Необнаруженные добавления или удаления битов и потока зашифрованного текста приводят к потере возможности дешифрования; более того, они неприемлемы, так как отсутствие размножения ошибок затрудняет развитие методов для обнаружения воздействия по изменению длины сообщений и внесению ошибок другого рода.
Шифр с авто ключом: его ключевой поток зависит от открытого текста, шифрованного текста или самого себя, а также некоторого начального (первичного) кода: этот шифр обеспечивает межбитовую зависимость и обнаружение ошибок. В шифрах с шифрованным текстом в качестве ключа (штак) - шифрованный текст используется как входная информация для выработки ключевого потока, имеющего межбитовую зависимость. В случае ошибки при передаче правильная работа дешифратора возобновляется после получения некоторого фиксированного числа неискаженных битов шифрованного текста.
Блочное шифрование под управлением единственного ключа - это определение одной из 2n перестановок в наборе n-битных блоков. На практике блочное шифрование не реализует все возможные перестановки ввиду необходимости обеспечения требуемого размера ключа и логической сложности шифрования. Шифр является предметом анализа, осуществляемого сравнением частоты распределения отдельных блоков с известной частотой распределения знаков в больших образцах открытого текста. Если увеличивать размер блока и строить шифр таким образом, чтобы скрывались частотные характеристики компонентов блоков посредством смешивания преобразований, то такое частотное распределение и его анализ становятся невыполнимыми из-за возрастании размера используемого алфавита и полученная криптографическая схема считается очень хорошей.
На основе блочных шрифтов строятся: алгоритм шифрования данных DES, являющийся стандартом США подробно изложенный ниже, а также алгоритм Риаеста.
1.4 Алгоритм шифрования данных DES
Применяется блочный шифр, оперирующий с 64-битными блоками с использованием 56-битного ключа - режим книги электронных кодов (КЭК). В режиме КЭК (см. рис.4.) необходимая для правильного дешифрования сообщений криптографическая синхронность достигается тогда, когда отправитель и получатель используют один и тот же ключ и правильно определяют границы блока.
Рис. 4. Криптосистема DES в режиме электронной кодировочной книги.
DES может использоваться различными способами как часть генератора ключевого потока для шифров ШТАК (в режиме поточного шифра). В режиме работы в качестве шифра с обратной связью (ШОС), шифр DES превращается в самосинхронизирующийся поточный шифр, который обрабатывает строки открытого текста (см. рис.5).
Рис. 5. Криптосистема DES в режиме с обратной связью.
DES является стойким к обычному криптоанализу, хотя он и является теоретически слабым и может быть чувствительным к средствам анализа, основанным на применении больших специализированных вычислительных устройств с большой степенью распараллеливания процессов анализа и обработки информации (шифра).
Режим КЭК и ШОС использования DES позволяют достичь только первой цели - предотвращения раскрытия содержания сообщения (криптозащита) применением их к данным, которые нужно защитить. Однако эти режимы также лежат в основе построения контрмер для достижения остальных целей, перечисленных ранее и связанных с защитой от навязывания ложной информацией (имитозащитой), полученной нарушителем различными перечисленными способами.
1.5 Алгоритм Ривеста
Применяется блочный шифр с общим ключом. Размер блока от 256 до 650 бит в зависимости от желаемого уровня защиты. При шифровании сообщение М рассматривается как целое число и шифруется возведением степень "1" (по модулю "n"). При дешифровании полученный текст c дешифруется возведением его в степень d (по модулю "n").
Шифрующий ключ-пара (1, n). Дешифрующий ключ-пара (d, n). Значение d, 1, n вычисляются из пары больших простых чисел (p, q). Правила вычисления d, 1, пи методы выбора р и q даны Ривсстом. Алгоритм основан на очевидной трудности разложения на множители, больших сложных чисел. В отличие от DES. по-видимому не существует пути преобразования этого алгоритма в поточный шифр одновременно с сохранением характеристик алгоритма с открытым ключом.
Сравнение режимов поточного и блочного шифрования показывает, что проблемы, связанные с использованием основного блочного режима работы (КЭК) в обычных шифрах или в системах с общим ключом состоят в следующем:
1. В общем случае длина сообщения не соответствует размеру блока шифра, поэтому используется разбиение сообщения (пакета) на части, соответствующая по размеру блоку шифра с дополнением сообщения пустыми символами до целого числа блоков. В результате имеет место потеря пропускной способности до 1/2 размера блока па каждое сообщение;
2. Два блока открытого текста, состоящие из одинакового набора битов приводят к одинаковым блокам шифрованного текста;
3. В этом режиме размножение ошибки происходит строго внутри блока и это требует применения методов обнаружения изменения сообщений.
Из-за указанных трудностей режим КЭК не всегда пригоден для текста сообщения общего вида. Усиленным вариантом этого режима, пригодным как для обычных шифров, так и для систем с общим ключом, является режим сцепления блоков в шифре (СБШ) (см. рис. 6.).
Рис. 6. Криптосистемы DES в режиме сцепления блоков в шифре.
Поточные шифры ШТАК, такие как режим ШОС использования DBS, дают ключевой поток, соответствующий длине текста, подлежащего шифрованию без пустых символов в последнем неполном блоке сообщения. Недостаток этого подхода - значительно снижается пропускная способность алгоритма блочного шифрования в режиме ШОС (для DES с 8-и битными байтами в режиме ШОС снижение в 8 и более раз). Эта задача решается, если применять два размера блока при шифровании каждого сообщения: - размер блока основного шифра и - длину сообщения по модулю этого размера блока. Это приводит к пропускной способности, сравнимой с той, которую обеспечивает режим КЭК, однако исключает дополнение пустыми символами открытого текста. Другая особенность шифров ШТАК - необходимость начального заполнения для синхронизации сдвиговых регистров на обоих концах соединения.