Перейти к основному контенту
NGPP
Кабинет

Учебный конструктор · криптография и защита данных

Криптография — хеши, ключи, подпись, TLS

«Хеш», «открытый ключ», «сертификат», «замочек HTTPS» — звучит сложно, а принцип простой. Разберём на живых примерах: посчитаем настоящий SHA-256 прямо в браузере, поймём разницу симметричного и асимметричного шифрования, как работает цифровая подпись, и что происходит за замочком при заходе на сайт (TLS-рукопожатие).

Незнакомы слова (хеш, соль, CA, MITM…)? → словарь простыми словами внизу. Хеши лежат в основе → блокчейна, а TLS — часть пути веб-запроса.

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

SHA-256 (hex)…
—
🌊 Тот же текст + один символ «!» → хеш полностью другой:
—
➡️ Односторонний
Из строки легко получить хеш, но из хеша вернуть строку нельзя — только перебором.
📏 Фиксированная длина
Хоть одна буква, хоть книга — SHA-256 всегда даёт 256 бит (64 hex-символа).
🌊 Лавинный эффект
Изменишь один символ — хеш меняется полностью и непредсказуемо.
🎯 Детерминированный
Одинаковый вход → всегда одинаковый хеш. Удобно сверять целостность.
💥 Стойкий к коллизиям
Практически невозможно найти две разные строки с одинаковым хешем.

Где применяется: проверка целостности файлов, хранение паролей (с солью), блокчейн (см. блокчейн вживую), цифровые подписи.

📖 Словарь: простыми словами

Встретил незнакомое слово выше — найди его здесь. Коротко — суть; разверни — подробное объяснение с аналогией.

Хешкороткий «отпечаток» данных фиксированной длины

Результат односторонней функции: из любых данных получаем строку фиксированной длины. Назад не вернуть. Используется для проверки целостности, паролей, блокчейна.

SHA-256конкретный алгоритм хеша на 256 бит

Secure Hash Algorithm, 256 бит (64 hex-символа). Стандарт для проверки целостности, подписей, блокчейна (биткоин). На странице считается по-настоящему в твоём браузере.

Односторонняя функциялегко в одну сторону, невозможно обратно

Посчитать хеш просто, а восстановить исходные данные из хеша — практически невозможно (только перебор). На этом держится защита паролей и подписей.

Лавинный эффекткрошечное изменение входа → совсем другой хеш

Изменишь один бит — половина битов хеша поменяется непредсказуемо. Поэтому по хешу нельзя угадать, насколько «близок» вход.

Коллизиядве разные строки с одинаковым хешем

Теоретически существуют, но для хорошего алгоритма (SHA-256) найти их за разумное время невозможно — иначе можно было бы подделать документ под чужую подпись.

Соль (salt)случайная добавка к паролю перед хешем

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

Симметричное шифрованиеодин ключ и шифрует, и расшифровывает

Один секретный ключ на обе операции (AES). Быстрое, для больших данных. Минус: ключ надо как-то безопасно передать собеседнику.

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

Два математически связанных ключа. Зашифровано открытым — расшифрует только закрытый (и наоборот для подписи). Решает передачу ключа, но медленнее симметричного.

Открытый / закрытый ключпубличный раздаёшь, секретный хранишь

Открытый ключ можно публиковать (им тебе шифруют и им проверяют твою подпись). Закрытый держишь в тайне (им расшифровываешь и подписываешь). Утёк закрытый — всё скомпрометировано.

AESбыстрый симметричный шифр

Advanced Encryption Standard — стандарт симметричного шифрования. Им шифруется сам трафик внутри TLS-сессии после обмена ключами.

RSA / ECDSAасимметричные алгоритмы (ключи, подпись)

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

Цифровая подписьдоказывает авторство и неизменность

Хеш документа, зашифрованный закрытым ключом автора. Любой проверяет открытым ключом: совпал хеш — документ от автора и не изменён. Основа сертификатов и блокчейна.

Сертификатпаспорт сайта с открытым ключом, подписанный CA

Файл, связывающий домен с его открытым ключом, заверенный подписью центра сертификации (CA). Браузер доверяет сайту, потому что доверяет CA, который его подписал.

Центр сертификации (CA)доверенный «нотариус», подписывающий сертификаты

Certificate Authority — организация, которой браузеры доверяют по умолчанию. Подписывает сертификаты сайтов. Цепочка доверия: браузер → CA → сертификат сайта.

TLS / HTTPSшифрование канала + проверка подлинности сайта

TLS шифрует трафик и подтверждает, что ты говоришь именно с этим сайтом (по сертификату). HTTPS = HTTP поверх TLS. Замочек в адресной строке — это он.

Рукопожатие (handshake)договорённость о шифре и ключах перед обменом

Начало TLS-соединения: стороны выбирают версию/шифр, сервер предъявляет сертификат, согласуют сессионный ключ — и только потом шифруют данные.

Сессионный ключвременный симметричный ключ на одну сессию

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

MITM (человек посередине)атака с перехватом и подменой канала

Man-in-the-Middle: злоумышленник встаёт между тобой и сайтом, пытаясь перехватить/подменить трафик. Проверка сертификата в TLS как раз защищает от этого.

Перебор (brute-force)подбор ключа/пароля перебором вариантов

Единственный путь «обратить» хеш или подобрать ключ — перебрать варианты. Длинный ключ/пароль делает перебор невозможным по времени (миллиарды лет).

Дальше по теме

Эти инструменты связаны с текущим — так задачи стыкуются на практике.

Все инструменты — в каталоге.