Перейти к основному содержимому
Tooletto

Декодировщик Base64

Готовый вариант «Кодировщик и декодировщик Base64»

Декодируйте Base64 обратно в читаемый текст. Инструмент корректно работает с Unicode и принимает как обычный Base64, так и URL-safe вариант, используемый в JWT, — поэтому можно вставить сегмент токена напрямую.

  • Файлы никогда не покидают ваше устройство
  • Бесплатно, без регистрации
  • Без водяных знаков
  • Работает офлайн после загрузки
Loading tool…

Как пользоваться: кодировщик и декодировщик base64

  1. 1

    Выберите направление

    Переключитесь между режимами «Кодировать» и «Декодировать».

  2. 2

    Введите данные

    Введите или вставьте текст в поле ввода. Преобразование происходит по мере ввода.

  3. 3

    Скопируйте результат

    Скопируйте результат или скачайте его как текстовый файл.

Почему декодер должен принимать оба варианта Base64

Строка Base64, встреченная на практике, может быть как обычным Base64 — из вложения письма, data URI, конфигурационного файла, — так и Base64URL, чаще всего из одного из трёх разделённых точками сегментов JWT. Поскольку эти два варианта отличаются всего тремя символами, декодер, принимающий только один из них, вынуждает вручную заменять `-` на `+`, а `_` на `/`, прежде чем он примет сегмент токена, — а это лишний неудобный шаг для того, что должно быть простой вставкой. Поддержка обоих вариантов означает, что сегмент payload из JWT можно вставить напрямую, не задумываясь заранее, какой именно вариант Base64 перед вами.

Когда результат декодирования — не читаемый текст

Не всё, что закодировано в Base64, изначально было текстом — изображения, ключи шифрования и другие двоичные данные тоже часто кодируют в Base64 по тем же соображениям безопасности передачи через текстовые каналы. Декодирование такого содержимого даёт необработанные байты, которые при интерпретации как текст выглядят набором нечитаемых символов, — и это ожидаемый результат, а не признак того, что декодирование не удалось: операция корректно отменила кодирование, но сами байты изначально не были предназначены для чтения как текст UTF-8.

Быстрый способ проверить подозрительную строку

Вставить сюда незнакомую строку, похожую на Base64, и проверить, декодируется ли она во что-то осмысленное, — быстрый первый шаг при выяснении того, что на самом деле представляют собой те или иные данные: значение конфигурации, cookie, фрагмент токена, найденный в неожиданном месте. Если строка декодируется в чистый читаемый JSON или обычный текст, это подтверждает, что перед вами действительно данные в Base64; если при декодировании получается набор мусора, значит либо это вообще не Base64, либо это закодированные в Base64 двоичные данные, а не текст, — и оба варианта подсказывают, что проверять дальше.

Часто задаваемые вопросы

Инструмент корректно работает с эмодзи и текстом не на английском языке?

Да. Перед кодированием в Base64 текст преобразуется в UTF-8 — именно поэтому символы с диакритикой, иероглифы и эмодзи корректно кодируются и декодируются обратно. Инструменты, построенные на встроенной функции браузера `btoa`, выдают ошибку на любом символе выше U+00FF — это очень распространённая ошибка.

Что такое Base64URL и когда он нужен?

Это вариант кодирования, в котором `+` заменяется на `-`, а `/` — на `_`, а завершающие символы `=` отбрасываются, благодаря чему результат безопасно использовать в URL или имени файла. Именно его используют JSON Web Token. Обычный Base64 ломается при вставке в строку запроса.

Base64 — это форма шифрования?

Нет. Это способ кодирования, предназначенный для передачи двоичных данных через текстовые каналы, и декодировать его обратно может кто угодно — мгновенно. Никогда не используйте Base64, чтобы скрыть пароли, ключи или личные данные.

Почему результат в Base64 больше исходных данных?

Base64 представляет каждые три байта в виде четырёх символов, поэтому результат всегда примерно на 33% больше исходных данных. Это издержки, которые приходится платить за возможность безопасно передавать данные в виде текста.