Симметричные схемы шифрования

From CryptoWiki
Jump to: navigation, search

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


Contents

Постановка задачи защиты информации (Security challenge)

Схема симметричного шифрования

Формально симметричная схема шифрования может быть описана следующим образом:

SE = (K, E, D), где

  • K - алгоритм генерации ключа K,
  • E(M, K) = C - алгоритм шифрования открытого текста M на ключе K, результатом которого является шифротекст C,
  • D(C, K) = M - алгоритм расшифрования шифротекста C на ключе K, результатом которого является открытый текст M

Процесс обмена сообщениями можно описать следующим образом:

Отправитель шифрует сообщение, используя определенный алгоритм шифрования, на вход которому подаются исходное (незашифрованное) сообщение и ключ. Выходом алгоритма является зашифрованное сообщение. Ключ является значением, не зависящим от шифруемого сообщения. Изменение ключа должно приводить к изменению зашифрованного сообщения.

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

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

  • блочные шифры. Обрабатывают информацию блоками определённой длины (обычно 64, 128 бит, как например в DES или AES), применяя к блоку ключ в установленном порядке, как правило, несколькими циклами перемешивания и подстановки, называемыми раундами.
  • поточные шифры, в которых шифрование проводится над каждым битом либо байтом исходного (открытого) текста с использованием гаммирования.

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

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

Вот некоторые из симметричных схем шифрования:

  1. (ECB) Electronic Code Book (Режим электронной кодовой книги)
    • (ECB CTS) CipherText Stealing (Захват зашифрованного текста)
  2. (CBC) Cipher Block Chaining Режим сцепления блоков шифротекста
    • (CBC CTS) CipherText Stealing (Захват зашифрованного текста)
    1. (BC) block chaining Режим сцепления блоков
    2. (CBC$) Cipher Block Chaining with random IV (initialization vector) Режим сцепления блоков со случайным вектором инициализации
    3. (CBCC) cipher block chaining with checksum Режим сцепления блоков шифротекста с контрольной суммой
    4. (PCBC) propagating cipher block chaining Режим сцепления блоков с распространением ошибок
    5. (CBCPD) cipher block chaining of plaintext difference Сцепления блоков текста по различиям открытого текста
  3. (CFB) Cipher Feed Back Режим обратной связи по шифротексту
  4. (OFB) Output Feed Back Режим обратной связи по выходу
  5. (OFBNLF) output feedback with a nonlinear function Режим нелинейной обратной связи по выходу
  6. (PBC) plaintext block chaining Сцепление блоков открытого текста
  7. (PFB) plaintext feedback Режим обратной связи по открытому тексту
  8. (CTR) Counter Режим счетчика
  9. Кратное шифрование
    1. Двойное
      • Метод Дэвиса-Прайса
    2. Тройное
      • Схема Тачмена
      • Схема с тремя ключами

Основные криптографические конструкции и их стойкость (Cryptographic primitives and/or protocols)

Криптографическая стойкость симметричных схем шифрования практически полностью зависит от используемого в ней симметричного алгоритма шифрования. Как правило, при анализе стойкости симметричного (одноключевого) алгоритма подразумевается, что используется наиболее простая схема шифрования - ECB. Использование других схем может улучшить некоторые свойства алгоритма, в определенных случаях, но никак не наоборот.

Для обеспечения надежности симметричных алгоритмов шифрования необходимо:

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

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

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

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

  • Конфиденциальность передачи зависит от надежности шифра и обеспечения конфиденциальности ключа шифрования.
  • Подлинность обеспечивается за счет того, что без предварительного расшифровывания практически невозможно осуществить смысловую модификацию и подлог криптографически закрытого сообщения. Фальшивое сообщение не может быть правильно зашифровано без знания секретного ключа.
  • Целостность данных обеспечивается присоединением к передаваемым данным специального кода (имитовставки), вырабатываемой по секретному ключу. Имитовставка является разновидностью контрольной суммы, т. е. некоторой эталонной характеристикой сообщения, по которой осуществляется проверка целостности последнего. Алгоритм формирования имитовставки должен обеспечивать ее зависимость по некоторому сложному криптографическому закону от каждого бита сообщения. Проверка целостности сообщения выполняется получателем сообщения путем выработки по секретному ключу имитовставки, соответствующей полученному сообщению, и ее сравнения с полученным значением имитовставки. При совпадении делается вывод о том, что информация не была модифицирована на пути от отправителя к получателю.

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

Практические применения криптографических конструкций, особенности их реализации (Practical issues)

Практическое применение схем шифрования можно увидеть во многих сферах нашей жизни, к примеру, схему ECB используют для шифрования ключей, схемы CBC и CFB используют для аутентификации данных, схему CFB, кроме того, используют для шифрования отдельных символов. Схему OFB нередко используется в каналах с большими помехами (например, спутниковые системы связи). PCBC схему шифрования используют протоколы Kerberos v4 и WASTE

На практике, чаще всего реализуют 5 основных режимов работы – ECB, CBC, CFB, OFB, BC.

Глоссарий

Библиографический указатель

Список литературы к разделу "Симметричные схемы шифрования"

Мочалин Д.О.,

Широкова М.В.


Назад