Содержание
От автора___________________________________________________________________
Введение____________________________________________________________________
Терминология______________________________________________________________
Требования к криптосистемам________________________________________________
Симметричные криптосистемы________________________________________________
Перестановки______________________________________________________________
Системы подстановок_______________________________________________________
Гаммирование_____________________________________________________________
Датчики ПСЧ______________________________________________________________
Стандарт шифрования данных ГОСТ 28147-89_________________________________
Системы с открытым ключом________________________________________________
Алгоритм RSA_____________________________________________________________
Криптосистема Эль-Гамаля__________________________________________________
Криптосистемы на основе эллиптических уравнений____________________________
Электронная подпись________________________________________________________
Электронная подпись на основе алгоритма RSA________________________________
Цифровая сигнатура________________________________________________________
Управление ключами________________________________________________________
Генерация ключей_________________________________________________________
Накопление ключей________________________________________________________
Распределение ключей______________________________________________________
Проблемы и перспективы криптографических систем__________________________
Шифрование больших сообщений и потоков данных_____________________________
Использование “блуждающих ключей”________________________________________
Шифрование, кодирование и сжатие информации_______________________________
Реализация криптографических методов_______________________________________
Заключение________________________________________________________________
От автораЭта книга - краткое введение в криптографию. С одной стороны, здесь изложен материал, который отвечает на многие вопросы, которые возникают у тех кто делает на ниве этой науке первые шаг, с другой стороны здесь есть тот минимум информации, который достаточен для того чтобы самостоятельно оценивать любые реальные криптосистемы или даже создавать свои собственные.
Язык книги делался по возможности доступным, но не освобождает Читателя от необходимости владения элементарными основами математики, в частности алгебры и теории групп и полей.
Многие вопросы к сожалению остались за обложками этой книги. В частности после долгих сомнений Автор решил отказаться от рассмотрения DES, ввиду его крайней непрактичности и неуживчивости на российской почве[1].
Массу полезной информации можно найти на сервере ftp.rsa.com. В faq5.doc Вы если и не найдете ответ на любой вопрос по криптографии, то обнаружите большое количество ссылок на другие источники.
Автор будет признателен за любые замечания и вопросы, которые проще всего направить по адресу: bar@glasnet.ru
Баричев Сергей
ВведениеПроблема защиты информации путем ее преобразования, исключающего ее прочтение посторонним лицом волновала человеческий ум с давних времен. История криптографии - ровесница истории человеческого языка. Более того, первоначально письменность сама по себе была криптографической системой, так как в древних обществах ею владели только избранные. Священные книги Древнего Египта, Древней Индии тому примеры.
С широким распространением письменности криптография стала формироваться как самостоятельная наука. Первые криптосистемы встречаются уже в начале нашей эры. Так, Цезарь в своей переписке использовал уже более менее систематический шифр, получивший его имя.
Бурное развитие криптографические системы получили в годы первой и второй мировых войн. Начиная с послевоенного времени и по нынешний день появление вычислительных средств ускорило разработку и совершенствование криптографических методов.
Почему проблема использования криптографических методов в информационных системах (ИС) стала в настоящий момент особо актуальна?
С одной стороны, расширилось использование компьютерных сетей, в частности глобальной сети Интернет, по которым передаются большие объемы информации государственного, военного, коммерческого и частного характера, не допускающего возможность доступа к ней посторонних лиц.
С другой стороны, появление новых мощных компьютеров, технологий сетевых и нейронных вычислений сделало возможным дискредитацию криптографических систем еще недавно считавшихся практически не раскрываемыми.
Проблемой защиты информации путем ее преобразования занимается криптология (kryptos - тайный, logos - наука). Криптология разделяется на два направления - криптографию и криптоанализ. Цели этих направлений прямо противоположны.
Криптография занимается поиском и исследованием математических методов преобразования информации.
Сфера интересов криптоанализа - исследование возможности расшифровывания информации без знания ключей.
В этой книге основное внимание будет уделено криптографическим методам.
Современная криптография включает в себя четыре крупных раздела:
1. Симметричные криптосистемы.
2. Криптосистемы с открытым ключом.
3. Системы электронной подписи.
4. Управление ключами.
Основные направления использования криптографических методов - передача конфиденциальной информации по каналам связи (например, электронная почта), установление подлинности передаваемых сообщений, хранение информации (документов, баз данных) на носителях в зашифрованном виде.
ТерминологияИтак, криптография дает возможность преобразовать информацию таким образом, что ее прочтение (восстановление) возможно только при знании ключа.
В качестве информации, подлежащей шифрованию и дешифрованию, будут рассматриваться тексты, построенные на некотором алфавите. Под этими терминами понимается следующее.
Алфавит - конечное множество используемых для кодирования информации знаков.
Текст - упорядоченный набор из элементов алфавита.
В качестве примеров алфавитов, используемых в современных ИС можно привести следующие:
· алфавит Z33 - 32 буквы русского алфавита и пробел;
· алфавит Z256 - символы, входящие в стандартные коды ASCII и КОИ-8;
· бинарный алфавит - Z2 = {0,1};
· восьмеричный алфавит или шестнадцатеричный алфавит;
Шифрование - преобразовательный процесс: исходный текст, который носит также название открытого текста, заменяется шифрованным текстом.