Cyber Security Academy · Урок

Наборы шифров

Согласовывайте шифрование

Урок 2 из 413 шагов

«Наборы шифров» — бесплатный урок Cyber Security Academy на CoddyKit. Это урок 2 из 4. Ты можешь прочитать весь урок бесплатно ниже — а потом практиковать его прямо в браузере с встроенным редактором кода и ИИ-репетитором 24/7. Это часть пути обучения Cyber Security Academy, и твой прогресс синхронизируется между веб-версией и приложением CoddyKit. Курс Cyber Security Academy содержит 4 уроков всего.

Что такое набор шифров

Набор шифров — это именованная комбинация криптографических алгоритмов, которые совместно используются TLS-соединением.

Во время рукопожатия клиент и сервер согласуют набор из общего списка.

Состав названия набора

Название набора TLS 1.2 объединяет несколько алгоритмов.

Например: ECDHE_RSA_WITH_AES_128_GCM_SHA256.

  • ECDHE = обмен ключами
  • RSA = аутентификация
  • AES_128_GCM = основное шифрование
  • SHA256 = аутентификация сообщений / PRF

Компонент обмена ключами

Алгоритм обмена ключами определяет способ установления общего секрета.

  • ECDHE и DHE обеспечивают прямую секретность.
  • Статический обмен ключами RSA (устаревший, удалённый в TLS 1.3) её не обеспечивает.

Компонент аутентификации

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

  • Сертификаты RSA используют подписи RSA.
  • Сертификаты ECDSA используют подписи на эллиптических кривых, которые меньше по размеру и быстрее.

Основное шифрование

Основной шифр зашифровывает фактические данные приложения.

  • AES-GCM и ChaCha20-Poly1305 — современные шифры AEAD.
  • Более старые режимы CBC слабее и постепенно выводятся из употребления.

Шифры AEAD

Шифры AEAD (аутентифицированное шифрование со связанными данными), такие как AES-GCM, обеспечивают шифрование и целостность за один шаг.

TLS 1.3 требует AEAD, устраняя класс атак, связанных с дополнением, характерных для более старых режимов.

Упрощённые наборы TLS 1.3

Наборы шифров TLS 1.3 намного короче, поскольку обмен ключами и аутентификация согласуются отдельно.

Например, TLS_AES_128_GCM_SHA256 обозначает только основной шифр и хеш.

Просмотр доступных наборов

Можно вывести список наборов шифров, которые поддерживает ваша сборка OpenSSL.

openssl ciphers -v 'HIGH:!aNULL:!MD5'

Порядок согласования

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

Это не позволяет клиенту склонить соединение к использованию слабой криптографии.

ssl_prefer_server_ciphers on;
ssl_ciphers 'ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256';

Выбор безопасных наборов

Рекомендуемые методы безопасной настройки:

  • Требуйте прямую секретность (ECDHE/DHE).
  • Используйте шифры AEAD (GCM или ChaCha20).
  • Отключите устаревшие шифры RC4, 3DES и CBC.
  • Предпочитайте только TLS 1.2 и 1.3.

Проверка конфигурации

Проверьте, что именно согласует сервер, включая наборы, которые он принимает или отклоняет.

nmap --script ssl-enum-ciphers -p 443 example.com

Быстрая проверка

В наборе ECDHE_RSA_WITH_AES_128_GCM_SHA256 какая часть обеспечивает прямую секретность?

Итоги

Вы узнали, что набор шифров объединяет обмен ключами, аутентификацию, основное шифрование и хеш.

  • ECDHE обеспечивает прямую секретность.
  • Шифры AEAD, такие как AES-GCM, одновременно защищают данные и их целостность.
  • TLS 1.3 использует упрощённые названия наборов.

Далее мы сосредоточимся на проверке сертификата сервера.

Можно начать бесплатно

Изучай Cyber Security Academy с ИИ-репетитором — бесплатно

Пиши и запускай код прямо в браузере, получай мгновенную помощь от ИИ-репетитора 24/7 и продолжи учиться на сайте или в приложении.

Курсы
76
Уроки
303

Часто задаваемые вопросы

Урок «Наборы шифров» бесплатный?

Да — полный текст урока «Наборы шифров» бесплатно доступен здесь в веб-версии. Чтобы практиковать его интерактивно (встроенный редактор кода и ИИ-репетитор 24/7) и разблокировать остальной курс Cyber Security Academy, подпишись на CoddyKit PRO. Курс Cyber Security Academy содержит 4 уроков всего.

Чему я научусь в уроке «Наборы шифров»?

Согласовывайте шифрование Ты практикуешь Cyber Security Academy с помощью реального кода, который запускаешь прямо в браузере, и ИИ-репетитор 24/7 отвечает на твои вопросы во время урока.

Нужен ли мне опыт, чтобы начать Cyber Security Academy?

Предыдущий опыт не требуется. Cyber Security Academy на CoddyKit структурирован для всех уровней — от новичков до продвинутых, поэтому ты можешь начать отсюда или с самого начала и учиться в своем темпе. Это урок 2 из 4.

Сколько времени занимает урок «Наборы шифров»?

Большинство уроков CoddyKit занимают около 5–10 минут. Каждый из них компактный и интерактивный, поэтому ты постоянно делаешь прогресс и продолжаешь с того же места в веб-версии и приложении.

Можно ли писать и запускать код в этом уроке Cyber Security Academy?

Да. Каждый урок Cyber Security Academy включает встроенный редактор кода, поэтому ты пишешь и запускаешь реальный код прямо в браузере и получаешь моментальную обратную связь от AI — локальная установка не требуется.

Все уроки этого курса

  1. Рукопожатие TLS
  2. Наборы шифров
  3. Проверка сертификатов
  4. Распространённые атаки на TLS
← Назад к Cyber Security Academy