
- •Информационная безопасность Криптографические методы защиты информации
- •Содержание
- •Глава 1. Основы криптографии……………………………………….5
- •Глава 2. Обзор криптографических методов…………………………9
- •Глава 3. Электронная цифровая подпись…………………………...45
- •Глава 4. Проблемы и перспективы криптографических систем ..83
- •Глава 1.
- •1.1. Терминология
- •1.2. Требования к криптосистемам
- •Классификация криптографических методов
- •Глава 2 обзор криптографических методов
- •2.1. Симметричные системы шифрования
- •2.1.1. Блочные шифры
- •Симметричные блочные шифры
- •Методы перестановки
- •Методы замены (подстановки)
- •Шифрование методом простой замены
- •Оценки вероятностей появления букв русского языка и пробела
- •Механизм шифрования заменой
- •Ключ шифрования
- •Механизм дешифрования
- •Механизм шифрования методом Цезаря
- •2.1.2. Потоковые шифры
- •Методы гаммирования
- •Лабораторная работа. Простейшие криптографические системы
- •Асимметричные системы шифрования
- •2.3.1. Алгоритм rsa
- •Полная таблица зашифрования
- •2.4. Сравнение симметричных и асимметричных систем шифрования
- •2.5. Лабораторная работа. Асимметричные методы шифрования данных
- •Глава 3. Электронная цифровая подпись
- •Проверка подлинности информации
- •3.1.1. Подпись документов при помощи симметричных криптосистем
- •3.1.2. Подпись документов при помощи криптосистем с открытыми ключами
- •3.2. Стандарты.
- •3.3. Атаки на цифровую подпись
- •3.4. Пакет pgp
- •3.5. Pgp: концепция безопасности и уязвимые места
- •Асимметричные криптографические алгоритмы
- •3.6. Лабораторная работа. Программные средства защиты
- •3.7. Лабораторная работа. Способы защиты электронной почты
- •Глава 4. Проблемы и перспективы криптографических систем
- •4.1. Шифрование больших сообщений и потоков данных
- •4.2. Использование блуждающих ключей
- •4.3. Шифрование, кодирование и сжатие информации
- •Виды преобразований
- •4.4. Реализация алгоритмов шифрования
- •Библиографический список
- •Информационная безопасность криптографические методы защиты информации
1.2. Требования к криптосистемам
Процесс криптографического закрытия данных может осуществляться как программно, так и аппаратно. Аппаратная реализация отличается существенно большей стоимостью, однако ей присущи и преимущества: высокая производительность, простота, защищенность и т.д. Программная реализация более практична, допускает известную гибкость в использовании.
Для современных криптографических систем защиты информации сформулированы следующие общепринятые требования:
зашифрованное сообщение должно поддаваться чтению только при наличии ключа;
число операций, необходимых для определения использованного ключа шифрования по фрагменту шифрованного сообщения и соответствующего ему открытого текста, должно быть не меньше общего числа возможных ключей;
число операций, необходимых для расшифровывания информации путем перебора всевозможных ключей должно иметь строгую нижнюю оценку и выходить за пределы возможностей современных компьютеров (с учетом возможности использования сетевых вычислений);
знание алгоритма шифрования не должно влиять на надежность защиты;
незначительное изменение ключа должно приводить к существенному изменению вида зашифрованного сообщения даже при использовании одного и того же ключа;
структурные элементы алгоритма шифрования должны быть неизменными;
дополнительные биты, вводимые в сообщение в процессе шифрования, должны быть полностью и надежно скрыты в шифрованном тексте;
длина шифрованного текста должна быть равной длине исходного текста;
не должно быть простых и легко устанавливаемых зависимостей между ключами, последовательно используемыми в процессе шифрования;
любой ключ из множества возможных должен обеспечивать надежную защиту информации;
алгоритм должен допускать как программную, так и аппаратную реализацию, при этом изменение длины ключа не должно вести к качественному ухудшению алгоритма шифрования.
Перед шифрованием информацию следует подвергнуть статистическому кодированию (сжатию, архивации). При этом уменьшится объем информации и ее избыточность, повысится энтропия (среднее количество информации, приходящееся на один символ). Так как в сжатом тексте будут отсутствовать повторяющиеся буквы и слова, дешифрование (криптоанализ) затруднится.
Классификация криптографических методов
Симметричные (с секретным, единым ключом, одноключевые, single-key).
Потоковые (шифрование потока данных):
с одноразовым или бесконечным ключом (infinite-key cipher);
с конечным ключом (система Вернама - Vernam);
на основе генератора псевдослучайных чисел (ПСЧ).
Блочные (шифрование данных поблочно):
Шифры перестановки (permutation, P-блоки);
Шифры замены (подстановки, substitution, S-блоки):
моноалфавитные (код Цезаря);
многоалфавитные (шифр Вижинера, Enigma);
Комбинированные:
Lucipher (фирма IBM, США);
DES (Data Encryption Standard, США);
FEAL-1 (Fast Enciphering Algoritm, Япония);
IDEA/IPES (International Data Encryption Algorithm/
Improved Proposed Encryption Standard, фирма Ascom-Tech AG, Швейцария);
B-Crypt (фирма British Telecom, Великобритания);
ГОСТ 28147-89 (СССР); Skipjack (США).
Асимметричные (с открытым ключом, public-key):
Райвест-Шамир-Адлеман RSA (Rivest, Shamir, Adleman);
Эль-Гамаль (ElGamal);
Диффи-Хеллман DH (Diffie, Hellman).
Итак, все многообразие существующих криптографических методов можно свести к следующим классам преобразований:
Моно- и многоалфавитные подстановки. Наиболее простой вид преобразований, заключающийся в замене символов исходного текста на другие (того же алфавита) по более или менее сложному правилу. Для обеспечения высокой криптостойкости требуется использование больших ключей.
Перестановки. Также несложный метод криптографического преобразования. Используется, как правило, в сочетании с другими методами.
Гаммирование. Этот метод заключается в наложении на исходный текст некоторой псевдослучайной последовательности, генерируемой на основе ключа.
Блочные шифры. Представляют собой последовательность (с возможным повторением и чередованием) основных методов преобразования, применяемую к блоку (части) шифруемого текста. Блочные шифры на практике встречаются чаще, чем "чистые" преобразования того или иного класса в силу их более высокой криптостойкости. Российский и американский стандарты шифрования основаны именно на этом классе шифров.
Кроме того, есть разделение алгоритмов шифрования на собственно шифры (ciphers) и коды (codes). Шифры работают с отдельными битами, буквами, символами. Коды оперируют лингвистическими элементами (слоги, слова, фразы).