Шифрование/Дешифрование семейства RC
Симметричные шифры RC2/RC4/RC5/RC6, разработанные Роном Ривестом
⚠️ Предупреждение о безопасности
RC4 имеет известные уязвимости и был исключен из TLS/SSL. Для максимальной безопасности рассмотрите использование AES-256. Все данные обрабатываются локально в вашем браузере.
О семействе RC
Семейство шифров RC было разработано Роном Ривестом в MIT и RSA Security. 'RC' изначально означало 'Rivest Cipher' или 'Ron's Code'. Семейство включает RC2, RC4, RC5 и RC6, каждый с отличительными характеристиками.
RC2 — это 64-битный блочный шифр 1987 года. RC4 — это потоковый шифр, который широко использовался в SSL/TLS и WEP. RC5 представил инновационную параметризуемую структуру. RC6 был разработан как кандидат AES, расширяя RC5 целочисленным умножением для лучшей диффузии.
Сравнение алгоритмов
| Алгоритм | Тип | Длина ключа | Размер блока | Безопасность | Статус |
|---|---|---|---|---|---|
| RC2 | Блочный шифр | 1-128 байт | 64 бит | Слабый | Устарел |
| RC4 | Потоковый шифр | 1-256 байт | Н/Д (потоковый) | Слабый | Устарел |
| RC5 | Блочный шифр | 0-255 байт | 32/64/128 бит | Хороший | Безопасный |
| RC6 | Блочный шифр | 16/24/32 байта | 128 бит | Отличный | Финалист AES |
RC2 (Rivest Cipher 2)
RC2 — это 64-битный блочный шифр, разработанный в 1987 году. Он использует ключ переменной длины (1-128 байт) и имеет уникальный параметр 'эффективные биты ключа', который может ограничивать пространство поиска ключей.
Первоначально разработанный как секретный, RC2 был предназначен для экспортной совместимости с 40-битной эффективной длиной ключа. Из-за известных уязвимостей его следует использовать только для совместимости с устаревшими системами.
RC4 (Rivest Cipher 4)
RC4 — это потоковый шифр, разработанный в 1987 году. Он генерирует псевдослучайный поток байтов (ключевой поток), который XOR-ится с открытым текстом. Известный своей простотой и скоростью, он широко использовался в протоколах SSL/TLS, WEP и WPA.
Из-за обнаруженных уязвимостей (особенно в начальных байтах ключевого потока) RC4 был исключен из современных протоколов безопасности. Вариант 'RC4-Drop' отбрасывает начальные байты ключевого потока для смягчения этих проблем.
RC5 (Rivest Cipher 5)
RC5, опубликованный в 1994 году, представил параметризуемый дизайн с тремя переменными: размер слова (w), количество раундов (r) и длина ключа (b). Эта гибкость позволяет адаптировать RC5 к различным требованиям безопасности.
RC5 использует зависящие от данных вращения как основную нелинейную операцию, что делает его простым, но эффективным. Распространенные конфигурации включают RC5-32/12/16 (32-битные слова, 12 раундов, 16-байтный ключ).
RC6 (Rivest Cipher 6)
RC6 был представлен как кандидат AES в 1998 году и был одним из пяти финалистов. Он расширяет RC5 целочисленным умножением для лучшей диффузии и использует четыре рабочих регистра вместо двух.
С фиксированным размером блока 128 бит и поддержкой ключей 128/192/256 бит, RC6 обеспечивает отличную безопасность. Хотя Rijndael был выбран как AES, RC6 остается уважаемым и безопасным алгоритмом.
Основные особенности
- RC2: Устаревший блочный шифр с переменной длиной ключа, только для совместимости
- RC4: Чрезвычайно быстрое потоковое шифрование, идеально для приложений реального времени
- RC5: Параметризуемый дизайн, позволяющий гибкие компромиссы безопасности/производительности
- RC6: Современный блочный шифр с сильными гарантиями безопасности
- Все алгоритмы свободны от патентов и доступны бесплатно для любого использования
Режимы шифрования (RC5/RC6)
- CBC: Сцепление блоков — каждый блок XOR-ится с предыдущим зашифрованным блоком. Рекомендуется для большинства случаев.
- ECB: Кодовая книга — каждый блок шифруется независимо. Не рекомендуется для конфиденциальных данных.
- CFB: Обратная связь по шифротексту — превращает блочный шифр в потоковый. Самосинхронизирующийся.
- OFB: Обратная связь по выходу — генерирует ключевой поток независимо. Без распространения ошибок.
Соображения безопасности
- RC4 НЕ следует использовать для новых приложений из-за известных уязвимостей
- RC4-Drop (отброс первых 768-3072 байт) смягчает некоторые атаки, но не рекомендуется
- RC5 с достаточным количеством раундов (12+) и длиной ключа (128+ бит) считается безопасным
- RC6 обеспечивает отличную безопасность, сравнимую с AES
Случаи использования
- Совместимость и миграция устаревших систем
- Образовательные и исследовательские цели
- Встроенные системы с RC5 (простая реализация)
- Приложения высокой безопасности с RC6
Ссылки
Связанные инструменты
AES Шифрование/Дешифрование
Безопасное шифрование и дешифрование текста с использованием алгоритма AES
Blowfish Шифрование/Дешифрование
Быстрый симметричный блочный шифр, разработанный Брюсом Шнайером, с переменной длиной ключа (32-448 бит)
Twofish Шифрование/Дешифрование
Финалист AES, симметричный шифр с 128-битными блоками и ключами 128/192/256 бит, разработан Брюсом Шнайером