Лекции по Теоретическим основам цифровой связи   

14. Шифрование и дешифрование

14.1. Модели, цели и ранние системы шифрования

14.1.1. Модель процесса шифрования и дешифрования

Желание общаться конфиденциально уходит своими корнями в далекое прошлое. История секретного общения богата уникальными изобретениями и красочными анекдотами [1]. Изучение путей передачи сообщений, которые не допускали бы постороннего вмешательства, называется криптографией. Термины шифрование и кодирование обозначают преобразования сообщений, выполняемые передатчиком, а термины дешифрование и декодирование — обратные преобразования, производимые приемником. Основными причинами использования криптосистем в общении являются (1) обеспечение конфиденциальности, т.е. предотвращение извлечения информации из канала посторонним лицом (подслушивание); (2) аутентификация, предотвращение внедрения в канал информации посторонними людьми (обманный доступ). Часто, как в случае электронной пересылки или договорных переговоров, важно обеспечить электронный эквивалент письменной подписи. Это необходимо для того, чтобы устранить какие-либо недоразумения между отправителем и получателем относительного того, какое сообщение было отправлено и было ли оно вообще отправлено.

На рис. 14.1 изображена модель криптографического канала. Сообщение, или открытый текст M, шифруется путем обратимого преобразования Ек, дающего шифрованный текст С=Ек(М). Шифрованный текст пропускается через незащищенный, или общедоступный канал. После получения шифрованного сообщения С, его исходное значение восстанавливается с помощью операции дешифрования, описываемой обратным преобразованием Dk = Ек-1, что выглядит следующим образом.

(14.1)


Рис. 14.1. Модель криптографического канала

Параметром К обозначается множество символов или характеристик, называемых ключом, определяющим конкретное шифрующее преобразование Екиз семейства криптографических преобразований. Первоначально защищенность криптосистем зависела от секретности всего процесса шифрования, но в конечном итоге были разработаны системы, для которых общая природа преобразования шифрования или алгоритма могла быть общеизвестна, а секретность системы зависела от специального ключа. Ключ использовался для шифрования нешифрованного сообщения, а также для дешифрования шифрованного сообщения. Здесь можно отметить аналогию с универсальным компьютером и компьютерной программой. Компьютер, подобно криптосистеме, способен на множество преобразований, из которых компьютерная программа, подобно специальному ключу, выбирает одно. В большинстве криптосистем каждый, имеющий доступ к ключу, может как шифровать, так и дешифровать сообщения. Ключ передается разрешенным пользователям через секретный канал (в качестве примера может быть использован курьер для передачи из рук в руки важной ключевой информации); ключ, как правило, остается неизменным в течение значительного числа передач. Целью криптоаналитика (противника) является оценка открытого текста посредством анализа шифрованного текста, полученного из общедоступного канала, без использования ключа.

Схемы шифрования можно разбить на две основные категории: блочное и шифрование потока данных, или просто поточное. При блочном шифровании нешифрованный текст делится на блоки фиксированного размера, после чего каждый блок шифруется независимо. Следовательно, одинаковые блоки открытого текста с помощью данного ключа будут преобразовываться в одинаковые блоки шифрованного текста (подобно блочному кодированию). При поточном шифровании (подобном сверточному кодированию) блоков фиксированного размера не существует. Каждый бит открытого текста /и/ шифруется с помощью i-го элемента ki, последовательности символов (ключевого потока), генерируемой ключом. Процесс шифрования является периодическим, если ключевой поток начинает повторяться после р символов (причем р фиксированно); в противном случае он является непериодическим.

В общем случае схема шифрования существенно отличается от схемы канального кодирования. Например, при шифровании данные открытого текста не должны явно фигурировать в шифрованном тексте, а при канальном кодировании в систематической форме коды часто содержат неизмененные биты сообщения плюс биты четности (см. раздел 6.4.5). Существуют и другие отличия шифрования и канального кодирования. При блочном шифровании единственный бит ошибки на входе дешифратора может изменить значение многих выходных битов в блоке. Этот эффект, известный как накопление ошибки (error propagation), часто является желаемым криптографическим свойством, поскольку для несанкционированных пользователей он создает дополнительные сложности при расшифровке сообщений. В то же время при канальном кодировании такое свойство является нежелательным, поскольку хотелось бы, чтобы система исправила как можно больше ошибок и на выходную информацию входные ошибки относительно не влияли.



*****
© Банк лекций Siblec.ru
Формальные, технические, естественные, общественные, гуманитарные, и другие науки.