Galois/Counter ModeGCM (аббр. от англ. Galois/Counter Mode — счётчик с аутентификацией Галуа) — широко применяющийся режим работы симметричных блочных шифров, имеющий высокую эффективность и производительность[1]. Является режимом аутентифицированного шифрования (AEAD)[2], предоставляя как конфиденциальность, так и аутентификацию переданных данных (гарантируя их целостность). Режим GCM определяется для блочных шифров с размером блока в 128 бит. Существует вариант GCM под названием GMAC, предоставляющий лишь аутентификацию данных, он может использоваться как инкрементальный код аутентификации сообщений. И GCM и GMAC принимают на вход вектор инициализации произвольной длины. Алгоритм не ограничен патентами[3]. Благодаря наличию кода аутентификации (имитовставки), данный режим аутентифицированного шифрования позволяет получателю легко обнаружить любые изменения сообщения (как зашифрованного, так и дополненного информацией, переданной открыто), прежде чем начать его расшифровку, что значительно улучшает защиту от искажений, атак активного MITM и атак на основе оракулов[англ.] (например от Padding oracle attack[англ.] для CBC-режима). Стандарт NIST США с 2007 года[4]. Принцип работыВ обычном режиме шифрования CTR (счётчик) входные блоки нумеруются последовательно, номер блока шифруется блочным алгоритмом E (обычно AES). Выход функции шифрования используется в операции XOR (исключающее или) с открытым текстом для получения шифротекста. Как и для других режимов на базе счётчиков, схема представляет собой потоковый шифр, поэтому обязательным является использование уникального вектора инициализации для каждого шифруемого потока данных. В GCM используется функция Галуа «Mult» («GHASH(H, A, C)»), которая комбинирует блоки шифротекста и код аутентификации, чтобы получить тег аутентификации. На вход функции подается ключ хеширования H, являющийся результатом шифрования 128 нулевых битов на ключе K, т.е. H=E(K, 0^128). Тег аутентификации используется для проверки целостности сообщения. По каналу передаются: вектор инициализации[англ.] IV, блоки шифротекста, и код аутентификации (16 байтов). По своим свойствам режим GCM (GMAC) похож на HMAC. GCM режим подвергся критике в мире встраиваемых систем со стороны Silicon Labs, поскольку параллельная обработка не подходит для эффективного использования криптографических аппаратных движков и, следовательно, снижает производительность шифрования для некоторых наиболее чувствительных к производительности устройств[6]. ПрименениеРежим GCM используется в IEEE 802.1AE (MACsec) для безопасного Ethernet, беспроводном IEEE 802.11ad (WiGig в 60-ГГц полосе), "Fibre Channel Security Protocols" (FC-SP) от ANSI (INCITS), формате хранения на цифровых лентах IEEE P1619.1, в стандартах IPsec от IETF[7][8], может применяться в SSH[9] и TLS (версии 1.2 и новее)[10][11]. Применяется в VPN решениях, в OpenVPN присутствует с версии 2.3.3 (в шифрах AES-256-GCM-SHA384 и AES-128-GCM-SHA256)[12]. См. такжеПримечания
Ссылки
|
Portal di Ensiklopedia Dunia