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

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

Расшифровывает или шифрует старые данные одинарным DES.

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

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

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

Итерации PBKDF2

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

Режим

Обычный выбор для OpenSSL. Нужен IV; дополняет до целых блоков.

Формат вывода
То же в OpenSSL
openssl enc -des-cbc -pbkdf2 -iter 10000 -a -A -provider legacy -provider default

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

DES (Data Encryption Standard, 1977) шифрует 8-байтовые блоки 64-битным ключом, в котором значимы только 56 бит; остальные 8 — биты чётности. Его давно взломали полным перебором, но в старых файлах, конфигурациях и базах данных до сих пор встречаются значения, зашифрованные DES, и эта страница их читает и создаёт: режим CBC по умолчанию или ECB, CFB, OFB и CTR, с паролем в формате openssl enc -pbkdf2 или 16-значными ключом и IV в hex. Восстановите старые данные, а затем зашифруйте их заново с помощью AES. Всё работает в браузере: данные и ключ не покидают ваше устройство, бесплатно и без регистрации.

Как расшифровать текст, зашифрованный DES

  1. Выберите «Расшифровать» и вставьте текст в Base64 или hex — формат определяется автоматически — или выберите «Зашифровать» и введите текст.
  2. Введите пароль или переключитесь на «Ключ и IV (hex)» и введите 16-значный ключ и 16-значный IV (в ECB IV нет).
  3. Выберите режим, в котором были зашифрованы данные, — обычно CBC или ECB. Включайте «Без дополнения», только если данные шифровались без дополнения PKCS#7.
  4. Скопируйте или скачайте результат; байты, которые не являются текстом, показываются в hex.

Возможности

  • Одинарный DES с 64-битным ключом: 56 бит ключа плюс 8 бит чётности
  • Режимы CBC, ECB, CFB, OFB и CTR; дополнение PKCS#7 или без дополнения
  • Режим пароля в формате openssl enc -pbkdf2, любое число итераций PBKDF2
  • Режим «Ключ и IV» с 16-значными ключом и IV в hex — введёнными вручную или сгенерированными
  • Команда openssl для той же операции — с устаревшим провайдером (legacy) OpenSSL 3
  • Ввод в Base64 или hex определяется автоматически; нетекстовый результат показывается в hex и скачивается как байты

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

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

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

Надёжно ли шифрование DES?

Нет. 56-битный ключ можно найти перебором всех вариантов: специально построенная машина сделала это ещё в 1998 году, а сегодня это гораздо дешевле. Используйте DES только для чтения данных, которые уже зашифрованы DES, а затем зашифруйте их заново AES или ChaCha20.

Почему OpenSSL пишет «Error setting cipher DES-CBC»?

Потому что в OpenSSL 3 DES перенесён в устаревший провайдер (legacy), который по умолчанию не загружается. Подключите его: echo 'U2FsdGVkX1…' | openssl enc -d -des-cbc -pbkdf2 -iter 10000 -a -A -provider legacy -provider default. Для других режимов используйте -des-ecb, -des-cfb или -des-ofb (режима CTR для DES в OpenSSL нет), а в режиме «Ключ и IV» — -K <16 цифр hex> -iv <16 цифр hex> вместо -pbkdf2 -iter.

Как выглядит ключ DES?

Это 8 байт, записанные 16 шестнадцатеричными цифрами. Младший бит каждого байта — бит чётности, который DES игнорирует, поэтому ключи, отличающиеся только этими битами, расшифровывают одинаково. IV тоже занимает 8 байт; в ECB его нет. В режиме пароля и ключ, и IV выводятся из пароля, так что ни то ни другое вам не понадобится.

Чем DES отличается от Triple DES?

Triple DES выполняет DES трижды с тремя ключами — это 192-битный ключ с реальной стойкостью около 112 бит, — поэтому он и пережил DES. У одинарного DES один 56-битный ключ, и его можно подобрать перебором. Если ваш ключ длиной 16 или 24 байта, данные зашифрованы Triple DES: воспользуйтесь страницей Triple DES.

Почему получается нечитаемый текст?

Потому что какая-то настройка отличается от использованной при шифровании: пароль или ключ, число итераций, режим или дополнение. В режимах CFB, OFB и CTR DES не может заметить несовпадение и возвращает случайные байты, которые страница показывает в hex; в CBC и ECB несовпадение обычно заканчивается ошибкой.

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