Шифр — алгоритм, який перетворює читабельні дані (відкритий текст) на нечитабельний шифротекст і назад, використовуючи для керування перетворенням секретний ключ.
Як працюють шифри
Шифр задає кроки зашифрування й розшифрування, а конкретний результат визначає ключ шифрування. Історичні шифри — шифр Цезаря чи машина «Енігма» — ґрунтувалися на підстановці та перестановці й сьогодні зламуються тривіально. Сучасні шифри поділяються на дві основні групи:
- Блокові шифри обробляють блоки фіксованого розміру — AES використовує 128-бітні блоки та ключі завдовжки 128, 192 або 256 біт. Режим роботи — CBC, CTR чи GCM — визначає, як зчіплюються блоки; GCM також забезпечує автентифікацію даних.
- Потокові шифри генерують ключовий потік, який побітово комбінується з даними; провідний сучасний приклад — ChaCha20.
Обидва види симетричні: відправник і одержувач використовують той самий ключ. Шифрами іноді називають і асиметричні алгоритми, наприклад RSA.
Набори шифрів
У TLS набір шифрів (cipher suite) визначає поєднання обміну ключами, автентифікації, основного шифру й геш-функції для з’єднання, наприклад TLS_AES_128_GCM_SHA256 у TLS 1.3. Сервер і клієнт узгоджують набір, який підтримують обидва, тому слабкі застарілі набори треба вимикати.
Чому шифри важливі для безпеки
Шифри старіють. DES із 56-бітним ключем було зламано перебором на машині EFF «Deep Crack» 1998 року; через статистичні зміщення RC4 стандарт RFC 7465 (2015) заборонив його в TLS, а атака Sweet32 (2016) показала, що 64-бітні блокові шифри на кшталт 3DES небезпечні для довгих сесій. Пропрієтарні шифри здаються ще швидше, адже не проходили публічної перевірки.
Рекомендації
- Використовувати AES-GCM або ChaCha20-Poly1305 через перевірені бібліотеки.
- Вимкнути DES, 3DES, RC4 та експортні набори шифрів.
- Ніколи не використовувати nonce повторно з тим самим ключем у GCM і потокових шифрах.





