Главная Кодировщик Base64

Кодировщик Base64

hello — это aGVsbG8=. На обратном пути пробелы и переводы строки пропускаются, а алфавит URL с - и _ не читается. Текст остаётся здесь.

Зачем это

Почта и data URL записывают тот же текст группами по четыре знака, например aGVsbG8=.

%20 в адресе и + в Base64 — разные правила. Эта страница обрабатывает стандартный Base64.

  1. 01Как пользоваться

    Кодирование берёт текст, декодирование берёт Base64. Пример заполняет hello или aGVsbG8=.

    Копирование кладёт в буфер только поле результата. Очистка опустошает ввод и результат.

    Закрытие вкладки стирает текст. Эта страница не отправляет файл.

  2. 02Пример

    hello, Hello и € — это aGVsbG8=, SGVsbG8= и 4oKs. Смена регистра тех же латинских букв меняет результат.

    Буква M — это TQ==, Ma — TWE=, Man — TWFu.

    Вводhello

    hello aGVsbG8=
    Hello SGVsbG8=
    € 4oKs
    два корейских знака 7JWI64WV
  3. 03Полезно знать

    YQ возвращается к a даже без заполнения. YQ= с одним = останавливается.

    /w== — это один байт 0xFF, он не является текстом UTF-8, поэтому декодирование останавливается.

    Знак вне алфавита, = в середине или длина, которая при делении на 4 даёт остаток 1, — это ошибка.

    Это преобразование не шифр. Его может обратить любой по тому же правилу.

Вопросы

QЧто такое hello?
AЭто aGVsbG8=. Корейская строка из двух знаков — 7JWI64WV.
QМожно ли переносить строки?
AДа. Пробелы и переводы строки убираются перед чтением.
QЧитаются ли - и _?
AНет. Читаются только + и / стандартного алфавита.
QТекст сохраняется?
AНет. Он остаётся в этом браузере и не уходит на сервер.

Как эта страница считает

Эта страница переводит текст UTF-8 в стандартный Base64. Алфавит — A–Z, a–z, 0–9, + и /. hello — это aGVsbG8=, Hello — это SGVsbG8=. Корейская строка из двух знаков — 7JWI64WV, а € — 4oKs. Алфавит URL с - и _ не читается.

Три байта становятся четырьмя знаками. Один байт кончается на ==, два байта — на =. M — это TQ==, Ma — TWE=, Man — TWFu. Недостающее заполнение добавляется, если остаток сходится, а неверное число = или ненулевые остаточные биты останавливают разбор. На обратном пути пробелы, табы и переводы строки убираются, поэтому блок, разрезанный каждые 76 знаков, тоже читается. Закодированный вывод не переносится.

Байты, которые не являются UTF-8, показывают ошибку вместо текста. /w==, один байт 0xFF, — один из таких случаев. Эта страница не открывает файл изображения, и преобразование не шифр. Больше 100,000 знаков останавливает работу. Текст остаётся в этом браузере и не уходит на сервер.

  • # base64
  • # utf-8
  • # кодировать
  • # декодировать