Какво представлява този инструмент?
Base64 е схема за кодиране, която преобразува двоични или текстови данни в набор от 64 безопасни ASCII знака (A–Z, a–z, 0–9, + и /). Използва се навсякъде в софтуера: вграждане на изображения в HTML/CSS, HTTP Basic authentication заглавия, прикачени файлове в имейли (MIME), JSON Web Tokens и API заявки, които трябва да преминат само през текстови канали.
Важно: Base64 е кодиране, не криптиране. Всеки може да го декодира. Целта му е да направи данните безопасни за пренос през системи, които разбират само текст — не да ги пази в тайна.
Base64 е официално дефиниран в RFC 4648, който също така описва URL-безопасния вариант, използван в JWT и уеб API: той заменя + с - и / с _, така че кодираният низ да може да пътува вътре в URL адрес без процентно кодиране.
Защо да го използвате?
- Декодирайте API токени, JWT сегменти и заглавия за оторизация, за да видите какво съдържат.
- Кодирайте текст за data URI, конфигурационни файлове или HTTP заглавия.
- Съвместимо с UTF-8: емоджита и не-латински знаци се кодират и декодират коректно.
- 100% поверителност — преобразуването се извършва във вашия браузър, нищо не се качва.
- Безплатно, без вход в акаунт, без ограничения за размер.
Как да го използвате
- Въведете или поставете съдържанието си в полето за вход.
- Натиснете „Кодирай“, за да преобразувате текст в Base64, или „Декодирай“, за да преобразувате Base64 обратно в текст.
- Ако декодирането е неуспешно, входът не е валиден Base64 — проверете за липсващи знаци или излишни интервали.
- Натиснете „Копирай“, за да копирате резултата.
Пример
Вход
Hello, CodeKitHub! 你好 👋Резултат
SGVsbG8sIENvZGVLaXRIdWIhIOS9oOWlvSDwn5GLОбърнете внимание как китайските знаци и емоджито оцеляват при обратното преобразуване — това е частта, съвместима с UTF-8.
Практични съвети
- JWT токените представляват три Base64 сегмента, свързани с точки — декодирайте първите два (заглавие и полезен товар) поотделно, за да ги прочетете; третият е двоичен подпис и ще изглежда като случаен шум.
- Ако декодирането на JWT сегмент е неуспешно, това е base64url кодиране: първо заменете - с + и _ с / (стандартните инструменти очакват азбуката +/).
- Празните интервали и новите редове в Base64 низ обикновено са безобидни остатъци от имейли или логове, но липсващо крайно запълване = често не е — проверете дължината, преди да предположите, че данните са повредени.
- Base64 увеличава размера на данните с около 33%. Подходящо е за малки полезни товари; за изображения над няколко KB реалният файл почти винаги е по-добрият избор пред data URI.
Реални сценарии на употреба
Трите случая, които водят хората тук ежедневно: четене на съдържанието на заглавие Authorization или JWT, декодиране на поле от полезен товар на webhook/API, пристигнало обвито в Base64 (често JSON — форматирайте го след декодиране), и ръчно създаване на data URI или Basic-Auth низ по време на дебъгване.
За двоични данни (изображения, файлове) имайте предвид, че при декодиране като текст ще получите нечетлив текст (mojibake) — данните може да са напълно валидни, просто не са текст. Кодирането/декодирането на двоични данни е задача за код; този инструмент е оптимизиран за текстовите случаи.
Как да диагностицирате грешка при декодиране
Грешките при Base64 декодиране почти винаги се дължат на една от три причини, подредени по честота: входът всъщност е бил base64url (използва - и _ вместо стандартните + и /, често срещано при JWT и URL-безопасни контексти) и знаците трябва да бъдат заменени обратно, преди стандартното декодиране да го приеме; низът е бил съкратен някъде по пътя (копиране-поставяне, което е пропуснало последните няколко знака, или ред от лог, който е бил отрязан), което може да се установи, защото дължината на валиден Base64 низ винаги е кратна на 4, след като се вземе предвид запълването; или странични знаци (излишни интервали, случаен нов ред, случайно дублиран знак) са били въведени по време на копиране, поради което поставянето директно от суровия източник, вместо повторно въвеждане, винаги е по-безопасно.
→
Често задавани въпроси
Base64 криптиране ли е?
Не. Base64 е обратимо кодиране, което всеки може да декодира — не осигурява никаква сигурност. Ако трябва да защитите данни, използвайте истинско криптиране (като AES); Base64 служи само за безопасен пренос на данни като текст.
Защо декодираният резултат изглежда като безсмислен текст?
Или входът всъщност не е Base64, или е бил съкратен, или оригиналните данни са били двоични (например изображение), а не текст. Двоичните данни няма да се покажат като четими знаци.
Какво представляват знаците = в края?
Запълване (padding). Base64 работи на блокове от 3 входни байта → 4 изходни знака. Когато дължината на входа не се дели на 3, един или два знака = запълват последния блок.
Работи ли този инструмент с емоджита и китайски знаци?
Да. Той първо кодира текста като UTF-8 байтове, което е стандартният подход. Елементарните инструменти, които използват директно btoa(), се провалят при всеки знак извън Latin-1 — този инструмент не се проваля.
Качват ли се моите данни някъде?
Не. Кодирането и декодирането се извършват изцяло във вашия браузър с JavaScript. Данните ви никога не напускат устройството ви.