Утилиты · Коды и кодировки
Base64, hex, двоичный код
Перевод текста в Base64, Base32, шестнадцатеричный, двоичный и десятичный код и обратно (UTF-8).
Считается в вашем браузере. Текст никуда не отправляется.
Как пользоваться
Вставьте что угодно в поле «Вход»: обычный текст, строку Base64, шестнадцатеричные байты, нули и единицы или десятичные числа. Переключатель «Что на входе» в положении «Авто» сам угадывает формат и пишет, что увидел. Ниже те же байты показаны сразу во всех записях: текстом, hex, двоичным кодом, десятичными числами, Base64 и Base32. Поле, из которого прочитан вход, отмечено красной стрелкой.
Если догадка неверна, выберите формат вручную. Например, строка 1234 одинаково законна и как hex (два байта), и как Base64 (три байта), и как обычный текст — только вы знаете, что имелось в виду.
Текст всегда переводится в байты по UTF-8. Латинская буква занимает один байт, русская — два: «я» — это d1 8f, а «кот» — шесть байтов d0 ba d0 be d1 82, в Base64 0LrQvtGC.
Луковица
Иногда текст заворачивают несколько раз: сначала в Base64, потом получившиеся буквы — в hex, а цифры hex — в двоичный код. Блок «Луковица» снимает такие слои по одному. На каждом шаге он пробует все форматы и выбирает тот, после которого получается читаемый текст; если подходят несколько, их можно переключить. Кнопка «Пример луковицы» загружает трёхслойный образец: двоичный код → hex → Base64 → фраза.
Как устроен Base64
Base64 берёт байты по три — это 24 бита — и режет их на четыре кусочка по 6 бит. Каждый кусочек — число от 0 до 63, и ему соответствует один из 64 знаков: A–Z, a–z, 0–9, «+» и «/». Слово «Man» превращается в TWFu. Если в конце не хватает байтов до тройки, запись дополняется знаками «=»: «Hi» — это SGk=. Поэтому Base64 всегда примерно на треть длиннее исходных данных.
Частые вопросы
Base64 — это шифрование?
Нет. Это кодировка: правило открыто, ключа нет, любой раскодирует строку за секунду. Base64 нужен, чтобы передать байты там, где разрешён только текст, — в письме, адресе страницы, JSON. Подробно — в уроке о кодировках.
Чем Base32 отличается от Base64?
Base32 режет биты по 5 и обходится 32 знаками: заглавными буквами и цифрами 2–7. Строка длиннее, зато в ней нет строчных букв и похожих знаков вроде 0 и O. Base32 встречается в ключах двухфакторной аутентификации.
Почему вместо русских букв получились «кракозябры»?
Значит, байты были записаны не в UTF-8, а в старой кодировке вроде Windows-1251. Этот инструмент читает текст только как UTF-8.
Мои данные куда-то уходят?
Нет. Всё считается в вашем браузере.