Открыть сервис

Симметричный ключ

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

Основные свойства

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

Ключевые характеристики симметричного ключа:

  • Секретность: ключ должен быть известен только легитимным участникам обмена. Раскрытие ключа третьей стороне делает шифрование бесполезным.
  • Случайность: ключ должен обладать высокой энтропией, то есть быть статистически непредсказуемым. Использование предсказуемых последовательностей (например, «12345678») снижает стойкость шифрования.
  • Длина: минимальная рекомендуемая длина для современных симметричных алгоритмов (например, AES) составляет 128 бит. Ключи длиной 56 бит (DES) считаются устаревшими и небезопасными.
  • Уникальность: для каждого сеанса связи или шифрования файла желательно генерировать новый ключ, чтобы избежать атак на основе повторного использования.

История

Идея симметричного шифрования известна с древности. Первые шифры, такие как шифр Цезаря, использовали фиксированный сдвиг алфавита — простейший аналог симметричного ключа. Однако вплоть до XX века криптография оставалась преимущественно симметричной, так как асимметричные схемы были изобретены лишь в 1970-х годах.

В 1977 году Национальное бюро стандартов США (NBS) приняло алгоритм DES (Data Encryption Standard) с длиной ключа 56 бит. DES стал первым открытым стандартом симметричного шифрования, широко используемым в банковской и правительственной сферах. Однако с ростом вычислительных мощностей 56-битный ключ стал уязвим для атак полного перебора. В 2001 году Национальный институт стандартов и технологий США (NIST) утвердил AES (Advanced Encryption Standard) с ключами 128, 192 и 256 бит, который остаётся основным симметричным алгоритмом в XXI веке.

В России действует национальный стандарт симметричного шифрования ГОСТ 28147-89 (разработан в 1989 году, обновлён в 2015 году как ГОСТ Р 34.12-2015). Он использует ключи длиной 256 бит и применяется в системах государственной и корпоративной защиты информации.

Классификация симметричных алгоритмов

Симметричные ключи используются в двух основных типах алгоритмов, различающихся способом обработки данных:

Блочные шифры

Данные разбиваются на блоки фиксированной длины (например, 128 бит для AES), и каждый блок шифруется отдельно с использованием одного и того же ключа. Для повышения безопасности применяются режимы шифрования (ECB, CBC, CTR, GCM и другие), которые определяют, как обрабатываются последовательные блоки. Примеры: AES, DES, ГОСТ 28147-89, Blowfish, Twofish.

Потоковые шифры

Данные шифруются побитово или побайтово с использованием гаммы — псевдослучайной последовательности, генерируемой на основе ключа. Потоковые шифры обычно быстрее блочных, но требуют тщательного управления синхронизацией. Примеры: RC4 (устарел, признан небезопасным), Salsa20, ChaCha20.

Генерация и распределение ключей

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

  • Протоколы обмена ключами (например, Диффи — Хеллмана), позволяющие двум сторонам вычислить общий секретный ключ по незащищённому каналу.
  • Асимметричное шифрование ключа: открытый ключ получателя используется для шифрования симметричного ключа, который затем передаётся по каналу. Это гибридная схема, применяемая, например, в протоколах TLS и PGP.
  • Физическая доставка: ключ может быть записан на носитель (USB-токен, смарт-карту) и передан лично или курьером.
  • Предустановка: ключи могут быть заранее записаны в оборудование (например, в SIM-карты или банковские чипы).

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

Применение

Симметричные ключи используются в широком спектре задач:

  • Шифрование данных на диске: программы вроде BitLocker, VeraCrypt, LUKS используют симметричные ключи для шифрования разделов и файлов.
  • Защита сетевого трафика: протоколы TLS, IPsec, SSH, VPN (OpenVPN, WireGuard) применяют симметричные ключи, полученные в ходе рукопожатия.
  • Беспроводная связь: Wi-Fi (WPA2/WPA3), Bluetooth, мобильная связь (GSM, LTE) используют симметричные алгоритмы для шифрования эфира.
  • Электронная почта: PGP и S/MIME комбинируют симметричное шифрование сообщения с асимметричным шифрованием ключа.
  • Банковские системы: транзакции, PIN-коды и данные карт защищаются симметричными ключами (например, по стандарту 3DES или AES).
  • Мессенджеры: протоколы сквозного шифрования (Signal, WhatsApp) используют симметричные ключи, генерируемые в рамках протокола Диффи — Хеллмана.

Криптостойкость и уязвимости

Стойкость симметричного ключа определяется его длиной и качеством алгоритма. Для AES-128 необходимо около 2^128 попыток перебора, что на современных компьютерах невозможно. Однако существуют атаки, не требующие полного перебора:

  • Атаки по побочным каналам: анализ времени выполнения, электромагнитного излучения или потребления энергии процессора при шифровании. Например, атака на AES с использованием анализа времени кэша.
  • Атаки на основе известного открытого текста: если злоумышленник знает часть открытого текста и соответствующий шифротекст, он может попытаться восстановить ключ.
  • Атаки с использованием квантовых компьютеров: алгоритм Гровера теоретически позволяет ускорить перебор ключей в два раза (для AES-128 — до 2^64 операций). Однако практические квантовые компьютеры, способные на это, пока не построены.
  • Уязвимости реализации: ошибки в коде, слабые генераторы случайных чисел, повторное использование ключей (nonce reuse) могут сделать шифрование уязвимым.

Сравнение с асимметричными ключами

ПараметрСимметричный ключАсимметричный ключ (пара)
Количество ключейОдин (секретный)Два (открытый и закрытый)
Скорость шифрованияВысокая (до 10 Гбит/с на аппаратном ускорителе)Низкая (в 100–1000 раз медленнее)
Длина ключа128–256 бит2048–4096 бит (RSA)
Проблема распределенияТребуется безопасный каналНе требуется (открытый ключ передаётся открыто)
ПрименениеШифрование больших объёмов данныхЦифровые подписи, обмен ключами

Интересные факты

  • В 1999 году кластер компьютеров EFF (Electronic Frontier Foundation) взломал DES-шифрование за 22 часа, продемонстрировав недостаточность 56-битного ключа.
  • Алгоритм AES был выбран по результатам открытого конкурса NIST (1997–2000) из 15 кандидатов. Победителем стал алгоритм Rijndael, разработанный бельгийскими криптографами Винсентом Рейменом и Йоаном Дайменом.
  • В России ГОСТ Р 34.12-2015 включает два блочных шифра: «Магма» (64-битный блок, 256-битный ключ) и «Кузнечик» (128-битный блок, 256-битный ключ). «Кузнечик» считается аналогом AES.
  • Самая длинная известная атака на AES-128 с использованием квантового алгоритма Гровера требует около 2^64 операций, что при современном развитии квантовых технологий остаётся недостижимым.

Источники

  1. Шнайер Б. «Прикладная криптография». — М.: Триумф, 2002.
  2. Фергюсон Н., Шнайер Б., Кохер П. «Современная криптография». — СПб.: Вильямс, 2003.
  3. Национальный институт стандартов и технологий США (NIST). FIPS PUB 197: Advanced Encryption Standard (AES). — 2001.
  4. Федеральное агентство по техническому регулированию и метрологии. ГОСТ Р 34.12-2015. Информационная технология. Криптографическая защита информации. Блочные шифры. — М.: Стандартинформ, 2015.
  5. Menezes A., van Oorschot P., Vanstone S. «Handbook of Applied Cryptography». — CRC Press, 1996.

BFOmetr — база данных и аналитика по компаниям России.

На главную BFOmetr →