0Pricing
Ethical Hacking Academy · Урок

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

AES и RSA

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

Два семейства шифрования

Современное шифрование делится на два семейства в зависимости от принципа работы ключей:

  • Симметричное: один и тот же ключ шифрует и расшифровывает данные. Пример: AES.
  • Асимметричное: используется пара ключей, где один ключ шифрует, а другой расшифровывает данные. Пример: RSA.

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

Симметричное шифрование

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

  • Преимущество: очень высокая скорость, идеально подходит для больших объёмов данных.
  • Недостаток: сначала необходимо безопасно передать ключ. Это и есть проблема распределения ключей.

AES

AES (усовершенствованный стандарт шифрования) — основной симметричный шифр. Это блочный шифр, работающий с блоками размером 128 бит и ключами длиной 128, 192 или 256 бит.

AES работает быстро, поддерживает аппаратное ускорение на современных CPU и считается безопасным при правильном использовании. AES-256 — распространённый вариант для высокого уровня защиты.

openssl enc -aes-256-cbc -salt -in secret.txt -out secret.enc
# Prompts for a password used to derive the key

Режимы работы блочного шифра

Блочному шифру нужен режим работы, чтобы обрабатывать данные размером больше одного блока:

  • ECB: небезопасен; одинаковые блоки дают одинаковый шифротекст, раскрывая закономерности. Не используйте его.
  • CBC: связывает блоки с помощью вектора инициализации (IV). Лучше, но требует осторожности.
  • GCM: обеспечивает и шифрование, и аутентификацию (AEAD). Современный рекомендуемый режим.

Пингвин в режиме ECB

Известная демонстрация: после шифрования изображения пингвина с помощью AES в режиме ECB контур пингвина всё ещё виден. ECB преобразует одинаковые блоки открытого текста в одинаковые блоки шифротекста, поэтому структура просматривается сквозь шифрование.

Именно поэтому при проверках безопасности следует распознавать ECB как уязвимость. Сам шифр надёжен — слабым местом является режим.

Асимметричное шифрование

Асимметричное шифрование использует математически связанную пару ключей:

  • Открытый ключ: распространяется свободно. Любой может зашифровать данные для Вас с его помощью.
  • Закрытый ключ: хранится в секрете. Только Вы можете расшифровать данные с его помощью.

Это решает проблему распределения ключей: Вы можете открыто публиковать открытый ключ, не снижая уровень безопасности.

RSA

RSA — классический асимметричный алгоритм. Его безопасность основана на сложности разложения произведения двух больших простых чисел на множители.

Сегодня часто используются ключи длиной 2048 бит; ключи длиной 3072 или 4096 бит обеспечивают больший запас прочности. RSA работает медленнее AES, поэтому его редко используют для непосредственного шифрования больших объёмов данных.

openssl genrsa -out private.pem 2048
openssl rsa -in private.pem -pubout -out public.pem

Шифрование и подпись

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

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

Обратите внимание: для этих двух целей ключи используются противоположным образом.

Гибридное шифрование

Реальные протоколы, такие как TLS, объединяют оба подхода. Процесс выглядит так:

  • Медленная асимметричная криптография один раз используется для безопасного обмена случайным сеансовым ключом.
  • Быстрый симметричный AES с этим сеансовым ключом используется для самих данных.

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

Обмен ключами: Диффи — Хеллман

Диффи — Хеллман позволяет двум сторонам согласовать общий секрет по незащищённому каналу, ни разу не передав сам секрет. Этот протокол лежит в основе современного обмена ключами TLS.

Варианты на основе эллиптических кривых (ECDH, ECDSA) обеспечивают такую же безопасность, как RSA, но используют значительно меньшие ключи, благодаря чему работают быстрее и всё чаще применяются по умолчанию.

Распространённые слабые места криптографии

Надёжные алгоритмы дают сбой из-за неправильного использования. Обращайте внимание на следующие уязвимости:

  • Режим ECB, раскрывающий закономерности открытого текста.
  • Повторно используемые или предсказуемые IV/одноразовые значения в CBC или GCM.
  • Жёстко заданные ключи в исходном коде или файлах конфигурации.
  • Маленькие ключи RSA (512 или 1024 бита), которые можно разложить на множители.
  • Поведение оракула дополнения, раскрывающее открытый текст по одному байту.

Математическая основа редко оказывается сломана; обычно проблема заключается в реализации.

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

Примените свои знания об открытых и закрытых ключах.

Итоги

Вы сравнили два семейства шифрования:

  • Симметричное (AES): один общий ключ, высокая скорость, но сложное распределение ключей. Используйте режим GCM и никогда не используйте ECB.
  • Асимметричное (RSA, ECC): пара открытого и закрытого ключей, решающая проблему распределения, но низкая скорость.
  • Шифруйте открытым ключом получателя, а подписывайте своим закрытым ключом.
  • Гибридные системы и Диффи — Хеллман объединяют преимущества обоих подходов в TLS.

Далее: практическое распознавание и взлом хешей.

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

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

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

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

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

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

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

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

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

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

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

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

  1. Кодирование и шифрование
  2. Хеширование
  3. Симметричное и асимметричное шифрование
  4. Взлом хешей
← Назад к Ethical Hacking Academy