Глоссарий

Потоковый шифр

шифр с ключевым потокомпотоковый алгоритм шифрования

Потоковый шифр объединяет открытый текст с псевдослучайным ключевым потоком, полученным из секретного ключа и nonce.

Определение

Потоковый шифр генерирует псевдослучайную гамму из секретного ключа и обычно nonce, а затем объединяет её с открытым текстом, часто операцией XOR. Для расшифрования та же гамма объединяется с шифротекстом. Современный пример — ChaCha20.

Повтор гаммы

Одну гамму нельзя применять к разным сообщениям. Повтор пары ключ–nonce раскрывает XOR открытых текстов и может позволить восстановить оба. Поэтому каждому шифрованию с ключом назначают уникальный nonce.

Целостность

Базовый потоковый шифр скрывает данные, но не обнаруживает изменения: инверсия бита шифротекста предсказуемо меняет открытый текст. Современные системы используют аутентифицированные схемы вроде ChaCha20-Poly1305.

Частые вопросы

Нет. Потоковый создаёт гамму, блочный переставляет блоки фиксированного размера. Некоторые режимы блочного шифра ведут себя как потоковые.

Обычно да. Для данного ключа он должен быть уникальным; секретность обычно не нужна.

Гамма повторяется и сокращается при сравнении шифротекстов, напрямую связывая открытые сообщения.

См. также