- •1. Общие положения
- •1.2. Когда и зачем нужно защищать информацию?
- •1.3. Язык сообщения
- •1.4. Тайнопись
- •1.5. Коды и их назначение
- •1.6. Криптография и криптоанализ
- •1.7. Основной объект криптографии
- •1.8. Что такое ключ
- •1.9. Атака на шифр. Стойкость шифра
- •1.10. Сложность вскрытия шифра
- •1.11. Принцип Кирхгофа
- •2. Древняя история криптографии
- •3. Современная криптография
- •3.1. Классификация криптографических систем
- •3.2. Основные классы симметричных криптосистем
- •3.3. Шифр замены
- •3.4. Шифр перестановки
- •3.5. Шифр Энигмы
- •4. Блочные шифры
- •4.1. Общие сведения о блочных шифрах
- •4.2. Сеть Фейштеля
- •4.3. Шифр взбивания. Стандарт des
- •4.3.1. Описание алгоритма
- •4.3.2. Анализ эффективности алгоритма
- •4.4. Отечественный стандарт шифрования данных
- •4.4.1. Режим простой замены
- •4.4.2. Режим гаммирования
- •4.4.3. Режим гаммирования с обратной связью
- •4.5. Режимы применения блочных шифров
- •5. Новый криптостандарт блочного шифрования сша
- •5.1. Общие сведения о конкурсе aes
- •5.1.1. Финалист aes – шифр mars
- •5.1.2. Финалист aes – шифр rc6
- •5.1.3. Финалист aes – шифр Serpent
- •5.1.4. Финалист aes – шифр TwoFish
- •5.2. Победитель aes – шифр Rijndael
- •6. Поточные шифры
- •6.1. Регистры сдвига с обратной связью
- •6.2. Шифр a5
- •6.3. Шифр rc4
- •6.4. Шифр seal
- •7. Асимметричные криптосистемы
- •7.1. Общие сведения об асимметричных криптоалгоритмах
- •7.2. Односторонние функции и функции-ловушки
- •7.3. Алгоритм rsa
- •Длина ключа
- •Применение rsa
- •7.4. Криптосистема Эль-Гамаля
- •7.5. Алгоритм Диффи-Хелмана
- •7.6. Механизм распространения открытых ключей
- •7.6.1. Обмен ключами по алгоритму Диффи-Хеллмана
- •8. Сравнительная характеристика шифров
- •9. Электронные цифровые подписи
- •9.1. Постановка задачи
- •9.2. Алгоритмы электронной цифровой подписи
- •9.2.1. Цифровые подписи, основанные на асимметричных криптосистемах
- •9.2.2. Стандарт цифровой подписи dss
- •9.2.3. Стандарт цифровой подписи гост р 34.10-94
- •9.3. Цифровые подписи, основанные на симметричных криптосистемах
- •9.4. Функции хэширования
- •9.4.1. Функция хэширования sha
- •9.4.2. Функция хэширования гост р 34.11-94
- •9.4.3. Функция хэширования md5
- •Библиографический список
- •Оглавление
3. Современная криптография
Современная криптография выделяет четыре основных крупных класса задач
Симметричные криптосистемы.
Криптосистемы с открытым ключом.
Системы электронной цифровой подписи (ЭЦП).
Системы управление ключами.
Основные направления использования криптографических методов – передача конфиденциальной информации по каналам связи (например, электронная почта), установление подлинности передаваемых сообщений, хранение информации (документов, баз данных) на носителях в зашифрованном виде.
3.1. Классификация криптографических систем
Известны два основных типа шифров, комбинации которых образуют классические криптографические системы. Главная идея, положенная в основу их конструирования, состоит в комбинации функций, преобразующих исходные сообщения в текст шифровки, т.е. превращающих эти исходные сообщения с помощью секретных ключей в нечитаемый вид. Непосредственное применение функций сразу ко всему сообщению реализуется крайне редко. Все практически применяемые криптографические методы связаны с разбиением сообщения на большое число частей фиксированного размера, каждая из которых шифруется отдельно, если не независимо. Это упрощает задачу шифрования, т.к. сообщения обычно имеют разную длину. Поэтому можно выделить четыре основных методы шифрования: потоковый, блочный, с открытым ключом, сверточный. Их различия заключается в следующем:
При потоковым шифровании каждый знак текста шифровки является функцией значения и положения соответствующего знака открытого текста. Знаками бывают биты, байты, реже единицы текста покрупнее. Потоковое шифрование представляет собой шифровку замены знаков.
При блочном шифровании исходный текст сначала разбивается на равные по длине блоки бит. К блокам применяется зависящая от ключа функция шифрования для преобразования их в блоки той же длины. Обычно блоки шифруются взбиванием.
Основное отличие систем с открытым ключом состоит в том, что в ней знание ключа шифрования недостаточно для расшифровывания и наоборот. Системы с открытым ключом всегда блочные.
Если в потоковом и блочном шифре функция шифрования зависит только от ключа, то в шифрах со сверткой она зависит как от ключа, так и от одного или более предшествующих символов или блоков текста шифровки.
По поводу разделения шифров на блочные и потоковые следует добавить, что в современной криптологии указанные понятия иногда используются в близком, но несколько отличном от сказанного выше смысле - потоковыми называют только такие шифры, в которых шифруемый за один шаг блок имеет размер один бит или один символ текста, а шифры с большим размером блока, формально относящиеся к потоковым, причисляют к блочным. Потоковые в последнем, практическом значении этого термина, шифры очень хорошо подходят для засекречивания асинхронного информационного потока - поступившая порция данных может быть немедленно зашифрована и отправлена в канал связи, нет необходимости ждать, пока наберется полный блок из нескольких битов или символов, как это было бы необходимо для блочных в том же самом "практическом" смысле термина шифров.
