🌙 LATE NIGHT MODE ACTIVATED — THE CLOWN IS WATCHING 🌙

Шифрование.

⚡ Определение

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

Что делает

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

Так работает почти каждая безопасная система в интернете. HTTPS шифрует трафик к сайтам. Мессенджеры типа Signal и WhatsApp шифруют сообщения. Менеджеры паролей шифруют хранимые пароли. ВПН шифруют сетевой трафик.

Симметричное vs асимметричное

Симметричное: тот же ключ шифрует и расшифровывает. Быстро. Примеры: AES-256, ChaCha20. Проблема — надо безопасно поделиться ключом с получателем сначала.

Асимметричное: пара ключей — public, которым любой может зашифровать тебе, и private, который только у тебя для расшифровки. Медленнее, но решает проблему обмена ключами. Примеры: RSA, ECDSA, X25519.

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

Почему "256-бит" важно

Цифра — размер ключа. 128-бит ключ имеет 2^128 значений; 256-бит — 2^256. Оба — невообразимо большие числа, далеко за пределами того, что любой компьютер, существующий или теоретически возможный, может brute-force.

256-бит — практический максимум в mainstream криптографии. AES-128 и AES-256 оба сегодня неломаемы; 256 просто больше запас против будущих криптоаналитических продвижений.

Чего шифрование не делает

Защищает данные в транзите и at rest. Не защищает от:

  • Скомпрометированных endpoints (если устройство или цель хакнуты, атакующий видит данные до/после шифрования).
  • Украденных ключей (если кто-то получит твой private ключ — расшифрует всё что зашифровано тебе).
  • Утечки метаданных (шифрование скрывает содержимое, но не обязательно факт коммуникации).
  • Багов имплементации (кривая крипто-библиотека может сливать данные несмотря на сильные алгоритмы).

Смотри также

🎪 FAQ

Шифрование — это то же что hashing?
Нет. Шифрование обратимо — можешь расшифровать с правильным ключом. Hashing односторонний — оригинал из хеша не получишь. Шифрование защищает данные в транзите и at rest. Hashing верифицирует целостность (изменились ли данные?) и хранит пароли (которые никогда не должны быть обратимыми).
256-бит шифрование буквально в 2 раза сильнее 128-бит?
Нет, астрономически сильнее. Каждый бит удваивает key space. AES-128 имеет 2^128 ключей; AES-256 — 2^256. Соотношение не 2x, а 2^128 (около 3.4 × 10^38). Оба практически неломаемы; 256 просто запас против будущих криптоаналитических продвижений.
Разница между симметричным и асимметричным шифрованием?
Симметричное юзает один ключ для шифрования и расшифровки — быстро, но надо безопасно поделиться ключом сначала. Асимметричное (public-key) — пара математически связанных ключей: public для шифрования, private для расшифровки. Медленнее, но решает проблему обмена ключами. ВПН юзают асимметричное на handshake (поделиться симметричным ключом безопасно), потом симметричное для трафика (быстрее).

🎪 ChaCha20-Poly1305

🤖 Скачать бесплатно