Toolonit
  1. Главная
  2. Шифрование
  3. Шифрование / расшифровка
  4. RC4

Шифрование и расшифровка RC4

Шифрует или расшифровывает старые данные потоковым шифром RC4.

RC4 по современным меркам слаб — используйте его, чтобы читать старые данные, а для новых — AES или ChaCha20. Перейти к AES

Зашифровать с помощью

Он понадобится для расшифровки. Ничего из введённого не покидает эту страницу.

Итерации PBKDF2

По умолчанию в OpenSSL — 10 000. Подойдёт любое число: чем больше, тем медленнее подбирать пароль; для расшифровки нужно то же число.

Размер ключа
Формат вывода
То же в OpenSSL
openssl enc -rc4 -pbkdf2 -iter 10000 -a -A -provider legacy -provider default

OpenSSL запросит пароль; вставьте в него текст или добавьте файлы -in и -out.

RC4, также известный как ARC4 или ARCFOUR, — потоковый шифр, который когда-то использовался в SSL/TLS и в Wi-Fi с защитой WEP. У него нет блоков, режимов и IV: он превращает ключ в поток байтов и складывает его с текстом по XOR, поэтому шифротекст ровно такой же длины, как текст. Эта страница шифрует и расшифровывает текст RC4 паролем в формате openssl enc -pbkdf2 или ключом в hex длиной от 40 до 2048 бит (по умолчанию 128), чтобы вы могли прочитать данные из старых систем или подготовить данные для них. RC4 взломан; для новых данных используйте AES или ChaCha20. Всё работает в браузере: текст и ключи не покидают ваше устройство, бесплатно и без регистрации.

Как расшифровать текст RC4

  1. Выберите «Расшифровать» и вставьте текст в Base64 или hex — формат определяется автоматически — или выберите «Зашифровать» и введите текст.
  2. Введите пароль или переключитесь на «Ключ и IV (hex)» и введите ключ; у RC4 нет IV, поэтому поле только одно — для ключа.
  3. Выберите длину ключа, с которой были зашифрованы данные: 128 бит, если не знаете точно, или 40 бит для экспортного RC4.
  4. Скопируйте или скачайте результат либо нажмите «Поменять местами», чтобы перенести его в поле ввода и сменить направление.

Возможности

  • RC4 с ключом любой длины от 40 до 2048 бит с шагом 8 бит; 40, 128, 256 и 2048 — одним щелчком
  • Без IV и дополнения: шифротекст ровно такой же длины, как текст
  • Режим пароля в формате openssl enc -pbkdf2 и команда rc4 или rc4-40 для устаревшего провайдера (legacy) OpenSSL
  • Режим «Ключ и IV (hex)» только с ключом — введённым вручную или сгенерированным
  • Base64 или hex на входе и выходе; нетекстовые результаты показываются в hex

Это конфиденциально?

Да. RC4 работает на WebAssembly внутри браузера; расшифровываемые данные, их ключ и пароль никуда не загружаются и не сохраняются.

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

Надёжен ли RC4?

Нет. В его ключевом потоке есть статистические смещения, которые позволяют восстановить данные, поэтому в 2015 году RFC 7465 запретил RC4 в TLS. Используйте его только для чтения уже существующих данных RC4, а всё, что храните, зашифруйте заново AES или ChaCha20.

ARC4 — это то же самое, что RC4?

Да. RC4 создал Рон Ривест в 1987 году, и алгоритм держался в коммерческой тайне; после утечки в 1994 году другие реализовали его под названиями ARC4 или ARCFOUR («предположительно RC4»), потому что RC4 — товарный знак. Шифротекст у них одинаковый.

Можно ли расшифровать это в OpenSSL?

Да, для 128- и 40-битных ключей: echo 'U2FsdGVkX1…' | openssl enc -d -rc4 -pbkdf2 -iter 10000 -a -A -provider legacy -provider default или -rc4-40 для 40-битного ключа. В режиме «Ключ и IV» укажите -K <ключ в hex> вместо -pbkdf2 -iter, без -iv. Других длин ключа RC4 в openssl enc нет.

Можно ли повторно использовать ключ RC4?

Нет. Один и тот же ключ всегда даёт один и тот же ключевой поток, поэтому XOR двух результатов с одним ключом убирает поток и раскрывает XOR двух текстов. В режиме пароля этого не происходит: случайная соль даёт каждому сообщению собственный ключ, и результат каждый раз разный. В режиме «Ключ и IV» берите для каждого сообщения новый ключ.

Почему я получаю нечитаемые байты, а не ошибку?

Потому что RC4 не может отличить неверный ключ от верного: расшифровка с неправильными паролем, числом итераций или длиной ключа всё равно даёт байты — просто случайные, и страница показывает их в hex. Проверьте, что все настройки совпадают с теми, что использовались при шифровании.

Похожие инструменты