Режим CCM

редактировать

режим CCM (счетчик с кодом аутентификации сообщения цепочки блоков шифрования ; счетчик с CBC-MAC ) - это режим работы для криптографических блочных шифров. Это алгоритм аутентифицированного шифрования, предназначенный для обеспечения как аутентификации, так и конфиденциальности. Режим CCM определен только для блочных шифров с длиной блока 128 бит.

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

Содержание
  • 1 Шифрование и аутентификация
  • 2 Производительность
  • 3 Патенты
  • 4 Используйте
  • 5 См. Также
  • 6 Ссылки
  • 7 Внешние ссылки
Шифрование и аутентификация

Как следует из названия, режим CCM сочетает в себе хорошо известный CBC-MAC с хорошо известным режимом шифрования счетчика. Эти два примитива применяются способом «аутентификация-затем-шифрование», то есть сначала вычисляется CBC-MAC для сообщения, чтобы получить тег t; затем сообщение и тег шифруются в режиме счетчика. Одним из ключевых моментов является то, что один и тот же ключ шифрования может использоваться для обоих, при условии, что значения счетчиков, используемые при шифровании, не противоречат (до) вектору инициализации, используемому при аутентификации. Для этой комбинации существует доказательство безопасности, основанное на безопасности базового блочного шифра. Доказательство также применимо к обобщению CCM для любого блочного шифра размера и для любого размера криптографически стойкой псевдослучайной функции (поскольку как в режиме счетчика, так и в CBC-MAC, блок шифр всегда используется только в одном направлении).

Режим CCM был разработан Дугом Уайтингом и Нильсом Фергюсоном. Во время разработки режима CCM Расс Хаусли работал в RSA Laboratories.

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

Производительность

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

Согласно тестам Crypto ++, AES CCM требует 28,6 циклов на байт на процессоре Intel Core 2 в 32-битном режиме.

Заметные недостатки :

  • CCM не является «интерактивным» AEAD, поскольку длина сообщения (и связанных данных) должна быть известна заранее.
  • В конструкции MAC длина связанных данных имеет кодировку переменной длины, которая может быть короче, чем размер машинного слова. Это может вызвать пессимистическую производительность MAC, если связанные данные длинные (что редко).
  • Связанные данные обрабатываются после данных сообщения, поэтому невозможно предварительно рассчитать состояние для статических связанных данных.
Патенты

Катализатором развития режима CCM стало представление режима OCB для включения в стандарт IEEE 802.11i. Было высказано возражение против включения режима OCB из-за ожидающей рассмотрения заявки на патент на алгоритм. Включение запатентованного алгоритма означало значительные сложности с лицензированием для разработчиков стандарта.

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

Несмотря на то, что режим CCM менее эффективен, чем режим OCB, беспатентное решение было предпочтительнее, чем решение, усложненное проблемами лицензирования патентов. Поэтому режим CCM стал обязательным компонентом стандарта IEEE 802.11i, а режим OCB был переведен в статус необязательного компонента, прежде чем в конечном итоге был полностью удален.

Использовать

Режим CCM используется в IEEE 802.11i (как CCMP, алгоритм шифрования для WPA2), IPsec и TLS 1.2, а также Bluetooth Low Energy (начиная с Bluetooth 4.0). Он доступен для TLS 1.3, но не включен по умолчанию в OpenSSL.

См. Также
Ссылки
Внешние ссылки
  • RFC 4309 : Использование режима CCM Advanced Encryption Standard (AES) с инкапсуляцией полезной нагрузки безопасности (ESP) IPsec
  • RFC 6655 : Наборы шифров AES-CCM для безопасности транспортного уровня (TLS)
  • Критика CCM (разработчик OCB)
Последняя правка сделана 2021-05-13 10:26:42
Содержание доступно по лицензии CC BY-SA 3.0 (если не указано иное).
Обратная связь: support@alphapedia.ru
Соглашение
О проекте