Архитектура Аудит Военная наука Иностранные языки Медицина Металлургия Метрология
Образование Политология Производство Психология Стандартизация Технологии


Алгоритмы симметричного шифрования



 

 

Рассмотрим общую схему симметричной, или традиционной, криптографии.


Рис. 2.1. Общая схема симметричного шифрования

В процессе шифрования используется определенный алгоритм шифрования, на вход которому подаются исходное незашифрованное сообщение, называемое также plaintext, и ключ. Выходом алгоритма является зашифрованное сообщение, называемое также ciphertext. Ключ является значением, не зависящим от шифруемого сообщения. Изменение ключа должно приводить к изменению зашифрованного сообщения.Зашифрованное сообщение передается получателю. Получатель преобразует зашифрованное сообщение в исходное незашифрованное сообщение с помощью алгоритма дешифрования и того же самого ключа, который использовался при шифровании, или ключа, легко получаемого из ключа шифрования.Незашифрованное сообщение будем обозначать P или M, от слов plaintext и message. Зашифрованное сообщение будем обозначать С, от слова ciphertext.Клод Шеннон ввел понятия диффузии и конфузии для описания стойкости алгоритма шифрования.Диффузия - это рассеяние статистических особенностей незашифрованного текста в широком диапазоне статистических особенностей зашифрованного текста. Конфузия - это уничтожение статистической взаимосвязи между зашифрованным текстом и ключом.Если Х - это исходное сообщение и K - криптографический ключ, то зашифрованныйпередаваемый текст можно записать в видеY = EK[X].Получатель, используя тот же ключ, расшифровывает сообщениеX = DK[Y]Противник, не имея доступа к K и Х, должен попытаться узнать Х, K или и то, и другоею Алгоритмы симметричного шифрования различаются способом, которым обрабатывается исходный текст. Возможно шифрование блоками или шифрование потоком.Блок текста рассматривается как неотрицательное целое число, либо как несколько независимых неотрицательных целых чисел. Длина блока всегда выбирается равной степени двойки. В большинстве блочных алгоритмов симметричного шифрования используются следующие типы операций:

  • Табличная подстановка, при которой группа битов отображается в другую группу битов. Это так называемые S-box.
  • Перемещение, с помощью которого биты сообщения переупорядочиваются.
  • Операция сложения по модулю 2, обозначаемая XOR или .
  • Операция сложения по модулю 232 или по модулю 216.
  • Циклический сдвиг на некоторое число битов.эти операции циклически повторяются в алгоритме, образуя так называемые раунды. Входом каждого раунда является выход предыдущего раунда и ключ, который получен по определенному алгоритму из ключа шифрования K. Ключ раунда называется подключом. Каждый алгоритм шифрования может быть представлен следующим образом:


Области применения

Стандартный алгоритм шифрования должен быть применим во многих приложениях:

  • Шифрование данных. Алгоритм должен быть эффективен при шифровании файлов данных или большого потока данных.
  • Создание случайных чисел. Алгоритм должен быть эффективен при создании определенного количества случайных битов.
  • Хэширование. Алгоритм должен эффективно преобразовываться в одностороннюю хэш-функцию.

Дополнительные требования

Алгоритм шифрования должен, по возможности, удовлетворять некоторым дополнительным требованиям.

  • Алгоритм должен быть простым для написания кода, чтобы минимизировать вероятность программных ошибок.
  • Алгоритм должен иметь плоское пространство ключей и допускать любую случайную строку битов нужной длины в качестве возможного ключа. Наличие слабых ключей нежелательно.
  • Алгоритм должен легко модифицироваться для различных уровней безопасности и удовлетворять как минимальным, так и максимальным требованиям.
  • Все операции с данными должны осуществляться над блоками, кратными байту или 32-битному слову.

Криптоанализ

Процесс, при котором предпринимается попытка узнать Х, K или и то, и другое, называется криптоанализом. Одной из возможных атак на алгоритм шифрования является лобовая атака, т.е. простой перебор всех возможных ключей. Если множество ключей достаточно большое, то подобрать ключ нереально. При длине ключа n бит количество возможных ключей равно 2n. Таким образом, чем длиннее ключ, тем более стойким считается алгоритм для лобовой атаки.

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

1. Цена расшифровки сообщения больше цены самого сообщения.

2. Время, необходимое для расшифровки сообщения, больше срока жизни сообщения.


Поделиться:



Популярное:

Последнее изменение этой страницы: 2017-03-03; Просмотров: 744; Нарушение авторского права страницы


lektsia.com 2007 - 2024 год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! (0.011 с.)
Главная | Случайная страница | Обратная связь