Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Криптографические алгоритмы.rtf
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
163.29 Кб
Скачать

Криптографические алгоритмы

Большинство средств защиты информации базируется на использовании криптографических шифров и процедур шифрования/расшифровании.

В соответствии со стандартом шифрования ГОСТ 28147 – 89 под шифром понимают совокупность обратимых преобразований множества открытых данных на множество зашифрованных данных, задаваемых ключом и алгоритмом криптографического преобразования.

Существует множество разных криптографических алгоритмов. Назначение этих алгоритмов – защита информации. Чтобы обеспечить надежную и адекватную защиту с помощью криптоалгоритма (КА), нужно понимать, какие бывают КА и какой тип ал­горитма лучше приспособлен для решения конкретной задачи.

1. Классификация криптографических алгоритмов

Известны несколько классификаций криптографических алгоритмов. Одна из них подразделяет КА в зависимости от числа ключей, применяемых в конкретном алгоритме:

  • бесключевые КА – не используют в вычислениях никаких ключей;

  • одноключевые КА – работают с одним ключевым параметром (секретным ключом);

  • двухключевые КА – на различных стадиях работы в них применяются два ключевых параметра: секретный и открытый ключи.

Существуют более детальные классификации рис. 1.

Рис. 6.1. Классификация криптоалгоритмов защиты информации

Охарактеризуем кратко основные типы ка. Хэширование

Хэширование – это метод криптозащиты, представляющий собой контрольное преобразование информации: из данных неограниченного размера путем выполнения криптографических преобразований вычисляется хэш-значение фиксированной длины, однозначно соответствующее исходным данным.

Хэш-значение h(M) — это дайджест сообщения М, т. е. сжатое двоичное представление основного сообщения М произвольной длины. Хэш-значение h(M) формируется функцией хэширования. Функция хэширования (хэш-функция) представляет собой преобразование, на вход которого подается сообщение переменной длины М, а выходом является строка фиксированной длины h(M). Иначе говоря, хэш-функция h (.) принимает в качестве аргумента сообщение (документ) М произвольной длины и возвращает хэш-значение (хэш) Н= h(M) фиксированной длины.

Функция хэширования позволяет сжать подписываемый документ М до 128 и более бит (в частности до 128 или 256 бит), тогда как М может быть размером в мегабайт или более. Значение хэш-функции h(М) зависит сложным образом от документа М и не позволяет восстановить сам документ М.

Функция хэширования обладает следующими свойствами.

  1. Хэш-функция может быть применена к аргументу любого размера.

  2. Выходное значение хэш-функции имеет фиксированный размер.

  3. Хэш-функцию h(x) достаточно просто вычислить для любого х.

  4. Хэш-функция должна быть чувствительна к всевозможным изменениям в тексте М, таким как вставки, выбросы, перестановки и т. п.

  5. Хэш-функция должна быть однонаправленной, т. е. обладать свойством необратимости, иными словами, задача подбора документа М', который обладал бы требуемым значением хэш-функции, должна быть вычислительно неразрешима.

  6. Вероятность того, что значения хэш-функций двух различных документов (вне зависимости от их длин) совпадут, должна быть ничтожно мала; т. е. для любого фиксированного x с вычислительной точки зрения невозможно найти x’ ≠ x, такое, что h(x’) = h(x).

Известные алгоритмы хэширования:

  • отечественный стандарт ГОСТ P34.11 94. Вычисляет хэш размером 32 байта;

  • MD (Message Digest) – ряд алгоритмов хэширования, наиболее распространенных в мире. Например, алгоритм MD5 применяется в последних версиях Microsoft Windows для преобразования пароля пользователя в 16-байтное число;

  • SHA-1 (Secure Hash Algorithm) – это алгоритм вычисления дайджеста сообщений, вырабатывающий 160-битовый хэш-код входных данных, широко распространен в мире, используется во многих сетевых протоколах защиты информации.

Хэш-функции широко используются также для аутентификации пользователей.