Кодування / декодування Base64
Кодуйте текст у Base64 або декодуйте Base64 у текст, разом із URL-безпечним варіантом
Про цей інструмент
Base64 перетворює довільні байти на абетку з 64 символів, яка витримує вставляння в JSON, URL, HTTP-заголовки та електронну пошту. Цей інструмент працює в обидва боки: наберіть або вставте текст, щоб закодувати його, або вставте закодований блок, щоб отримати оригінал. UTF-8 обробляється коректно в обох напрямках, тож емодзі та нелатинські писемності повертаються без спотворень.
Декодер навмисне поблажливий: він приймає URL-безпечну абетку (- і _ замість + і /), прибирає пробіли й переноси рядків і відновлює відсутнє доповнення перед декодуванням — три речі, через які суворіші декодери найчастіше відкидають цілком придатне введення. Якщо декодовані байти не є коректним текстом UTF-8, він так і каже, замість виводити абракадабру; зазвичай це означає, що дані були двійковими, наприклад зображенням.
Усе відбувається на сторінці. Декодування токена чи облікових даних тут нікуди їх не надсилає.
Часті запитання
- Чому мій рядок Base64 закінчується знаками =?
- Base64 кодує 3 байти в 4 символи, тож коли довжина введення не кратна трьом, вивід доповнюється знаками = для вирівнювання груп. Доповнення не несе даних; цей декодер відновлює його автоматично, якщо воно було прибране.
- Чим стандартний Base64 відрізняється від URL-безпечного?
- Стандартний Base64 використовує + і /, які мають особливе значення в URL і самі потребують екранування. URL-безпечний варіант (RFC 4648 §5) замінює їх на - і _ і зазвичай відкидає доповнення. Наприклад, JWT використовують саме цю форму. Кодувальник тут пропонує обидві; декодер приймає будь-яку автоматично.
- Чи є Base64 шифруванням?
- Ні. Base64 — оборотне кодування без ключа: розкодувати його може будь-хто. Воно захищає дані від пошкодження під час передавання, а не від прочитання. Якщо потрібна конфіденційність, спершу зашифруйте, а тоді кодуйте шифротекст.
- Чому декодування каже, що результат не є коректним UTF-8?
- Рядок декодувався успішно, але отримані байти — не текст: часто це PNG, PDF або стиснуті чи зашифровані дані. Виведення такого вмісту в текстове поле дало б лише кракозябри, тож інструмент натомість це позначає.