Модуль 4 · Навыки и знания безопасности · урок 43 из 63 · ~7 мин

🧂 Основы криптографии: соль, хеширование, обмен ключами

Короткая выжимка урока бесплатного курса CyberStreak. Полный урок со слайдами, тестом и работой над ошибками — в Telegram.

Криптография вокруг нас

Криптография защищает пароли, сообщения и соединения. Начнём с трёх понятий: хеш, соль и обмен ключами.

При чём тут безопасность: большинство утечек паролей опасны именно из-за неправильного хеширования. А без обмена ключами не было бы HTTPS.

Хеш-функция

Хеш — «отпечаток» данных фиксированной длины. Например, SHA-256 превращает любой файл в 256-битное значение.

Свойства: одинаковые данные дают одинаковый хеш; малейшее изменение — совсем другой хеш; по хешу нельзя восстановить исходные данные. Хеши проверяют целостность файлов и образов дисков.

Пароли хранят хешами

Сайт хранит не сам пароль, а его хеш. При входе хеширует введённое и сравнивает.

Но простые быстрые хеши уязвимы: злоумышленник заранее считает хеши миллионов популярных паролей (радужные таблицы) и находит совпадения в украденной базе.

Соль

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

Одинаковые пароли у разных людей дают разные хеши, а готовые таблицы становятся бесполезны. Для паролей используют специальные медленные алгоритмы: bcrypt, scrypt, Argon2 — они сильно замедляют перебор.

Обмен ключами

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

Подслушивающий видит весь обмен, но вычислить ключ не может. На этой идее построено установление ключей в TLS.

Главное за урок

  1. Хеш — односторонний отпечаток данных; проверяет целостность.
  2. Пароли хранят медленными хешами с уникальной солью.
  3. Диффи — Хеллман даёт общий секрет по открытому каналу.

Источники

Что ещё в полном уроке

  • Хеширование
  • Соль и хранение паролей
  • Обмен ключами
  • Симметричное и асимметричное (кратко, подробнее — следующий урок)
  • Как это выглядит на практике
  • Типичные ошибки
  • Мини-лаборатория
  • Проверь себя
  • Тест из 5 вопросов с разбором каждого ответа
  • Задание на TryHackMe: «Hashing - Crypto 101»

Пройди урок целиком

Слайды с примерами, тест, работа над ошибками и огонёк серии. Бесплатно, прямо в Telegram.