Base64 Encode Online

Кодування тексту або бінарних даних у Base64

Звичайний текст

Base64

Працює локально · Безпечно вставляти секрети
Вивід Base64...

Що таке кодування Base64?

Base64 — це схема кодування двійкових даних у текст, що представляє двійкові дані за допомогою набору з 64 друкованих ASCII-символів. Вона була розроблена для безпечного передавання двійкових даних через системи, що працюють лише з текстом — такі як електронна пошта (MIME), HTTP-заголовки та XML. Назва «Base64» походить від 64 символів, що використовуються в алфавіті кодування.

Кодування працює так: три байти вхідних даних (24 біти) розбиваються на чотири групи по 6 бітів. Кожне 6-бітове значення відповідає одному символу алфавіту Base64. Якщо довжина вхідних даних не є кратною трьом, додаються символи заповнення (=), щоб довжина виходу була кратною чотирьом символам. Результат — рядок приблизно на 33% більший за оригінальні дані, але безпечний для передачі як звичайний текст.

Навіщо використовувати цей інструмент?

Цей кодувальник правильно обробляє текст Unicode, підтримує стандартний та URL-safe варіанти і повністю кодує у вашому браузері — ваші дані ніколи не залишають ваш комп'ютер.

Миттєве кодування
Результати з'являються під час введення. Не потрібно натискати кнопки чи чекати на відповідь сервера.
🔗
Перемикач URL-safe
Перемикайтесь між стандартним (+/) та URL-safe (-_) кодуванням одним кліком. Символи заповнення для URL-safe варіанту видаляються автоматично.
🔒
Повністю на стороні клієнта
Усе кодування відбувається локально у вашому браузері з використанням нативного API btoa та TextEncoder. Нічого не надсилається на жодний сервер.
🎛️
Підтримка Unicode
Правильно обробляє повний Unicode, включаючи емодзі, символи CJK та будь-який текст UTF-8, використовуючи encodeURIComponent перед кодуванням.

Як користуватися цим онлайн-кодувальником Base64

Без облікового запису, без встановлення, без завантаження — вставте текст, і закодований результат з'явиться миттєво.

  1. 1
    Вставте або введіть текст
    Клацніть поле введення і вставте будь-який текст — прості рядки, JSON-навантаження, API-ключі, адреси електронної пошти або будь-який вміст UTF-8. Кодування оновлюється в реальному часі під час введення.
  2. 2
    Виберіть варіант
    Оберіть Стандартний (RFC 4648) для MIME, HTTP Basic Auth і загального використання. Оберіть URL-безпечний для JWT-токенів, параметрів рядка запиту, імен файлів і будь-якого контексту, де + або / порушать розбір URL.
  3. 3
    Скопіюйте результат
    Натисніть «Копіювати», щоб надіслати рядок Base64 до буфера обміну одним кліком. Результат готовий до вставки безпосередньо у ваш код, конфігураційний файл або API-запит.
  4. 4
    Використовуйте у своєму застосунку
    Вставте закодований рядок там, де він потрібен — заголовки Authorization, URI даних, поля JSON, змінні середовища або Kubernetes-секрети. Для URL-безпечного виводу відступи вже видалено.

Алфавіт Base64

Base64 використовує 64 символи: великі літери A–Z (значення 0–25), малі літери a–z (26–51), цифри 0–9 (52–61) та два спеціальні символи для значень 62 і 63. Стандартний варіант RFC 4648 використовує + та /; URL-safe варіант замінює їх на - та _, щоб уникнути конфліктів в URL і назвах файлів.

A–Z0–25ABCDEFGHIJKLMNOPQRSTUVWXYZ
a–z26–51abcdefghijklmnopqrstuvwxyz
0–952–610123456789
+, /62–63Стандарт RFC 4648 — уникайте в URL і назвах файлів
-, _62–63URL-safe варіант (RFC 4648 §5) — безпечний в URL і назвах файлів

Стандартний Base64 проти URL-safe

Стандартний алфавіт Base64 використовує + та /, які є спеціальними символами в URL і шляхах до файлів. URL-safe варіант замінює їх на - та _ і зазвичай опускає символи заповнення =. Використовуйте URL-safe кодування для JWT-токенів, даних у рядках запиту, назв файлів і будь-якого контексту, де + або / можуть бути хибно інтерпретовані.

ВведенняСтандартнийURL-safe
ManTWFuTWFu
HelloSGVsbG8=SGVsbG8
AQQ==QQ
1+1=2MSsxPTI=MSsxPTI

Поширені випадки використання

Вкладення електронної пошти (MIME)
SMTP був розроблений для 7-бітного ASCII-тексту. Кодування Base64 використовується стандартом MIME для безпечного вбудовування двійкових вкладень (зображення, PDF, виконувані файли) у поштові повідомлення.
Data URI
Вбудовуйте зображення, шрифти та інші ресурси безпосередньо в HTML або CSS за допомогою data URI: data:image/png;base64,... — усуваючи зайві HTTP-запити для невеликих ресурсів.
Корисні навантаження API
REST API часто вимагають Base64-кодування двійкових полів (завантаження файлів, криптографічні ключі, сертифікати) при вбудовуванні в JSON, оскільки JSON не має двійкового типу.
Файли конфігурації
Секрети Kubernetes, змінні середовища та конфігурації CI/CD зазвичай зберігають двійкові секрети та сертифікати як рядки Base64, щоб уникнути проблем з екрануванням.
HTTP Basic Auth
HTTP-заголовок Authorization: Basic кодує облікові дані як Base64(ім'я_користувача:пароль). Це не шифрування — воно лише забезпечує кодування для транспортування в заголовках.
JWT-токени
JSON Web Token використовують URL-safe Base64 (base64url) для кодування сегментів заголовка та корисного навантаження, роблячи токен безпечним для використання в URL і HTTP-заголовках без екранування.

Коли НЕ слід використовувати Base64

Base64 — це транспортне кодування, а не механізм безпеки. Ось найпоширеніші неправильні застосування, що спричиняють реальні проблеми в продакшені:

Не для безпеки чи шифрування
Base64 тривіально оборотний — для його декодування не потрібен жодний ключ чи пароль. Будь-хто, хто бачить рядок Base64, може декодувати його за секунди. Ніколи не використовуйте Base64 як замінник шифрування, хешування чи контролю доступу.
Не для стиснення
Base64 збільшує розмір вихідних даних приблизно на 33%. Це протилежність стиснення. Не використовуйте його для зменшення розміру навантаження — натомість використовуйте gzip, Brotli або zstd.
Не для зберігання бінарних файлів
Зберігання великих бінарних файлів у вигляді Base64 у базах даних або JSON API значно марнує місце для зберігання та пам'ять. Використовуйте об'єктне сховище (S3, R2, Cloudflare) і передавайте бінарні дані безпосередньо.

Приклади коду

Як закодувати рядок у Base64 в популярних мовах і середовищах:

JavaScript (browser)
// Standard Base64
const encoded = btoa(unescape(encodeURIComponent(text)))

// URL-safe Base64 (no padding)
const urlSafe = btoa(unescape(encodeURIComponent(text)))
  .replace(/\+/g, '-').replace(/\//g, '_').replace(/=/g, '')
Node.js
// Standard
const encoded = Buffer.from(text).toString('base64')

// URL-safe
const urlSafe = Buffer.from(text).toString('base64url')
Python
import base64

# Standard
encoded = base64.b64encode(text.encode()).decode()

# URL-safe (no padding)
url_safe = base64.urlsafe_b64encode(text.encode()).decode().rstrip('=')
CLI (bash)
# Standard
echo -n "Hello, World!" | base64

# URL-safe (requires sed)
echo -n "Hello, World!" | base64 | tr '+/' '-_' | tr -d '='

Онлайн-кодувальник Base64 vs. інші інструменти

Існує кілька онлайн-кодувальників Base64. Ключові відмінності для щоденного використання розробниками — конфіденційність, коректність і підтримка варіантів.

Повністю приватно — без сервера
Цей кодувальник працює повністю у вашому браузері, використовуючи нативний API btoa та TextEncoder. Ваш текст ніколи не передається жодному серверу — безпечно для API-ключів, токенів і секретів.
Коректне кодування Unicode
Багато онлайн-інструментів Base64 мовчки пошкоджують не-ASCII-введення. Цей інструмент коректно обробляє повний Unicode — емодзі, CJK, арабську та весь текст UTF-8 — попередньо кодуючи у байти UTF-8.
Обидва варіанти в одному місці
Більшість інструментів пропонують лише стандартний Base64. Цей кодувальник забезпечує обидва варіанти: стандартний (+/) і URL-безпечний (-_) з автоматичною обробкою відступів — ручна заміна символів не потрібна.

Поширені запитання

Чи є Base64 тим самим, що й шифрування?
Ні. Base64 — це схема кодування, а не шифрування. Воно тривіально оборотне для будь-кого — для його декодування не потрібні ключ або пароль. Ніколи не використовуйте Base64 для захисту конфіденційних даних. Для цього використовуйте належне шифрування (AES, RSA).
Чому вивід Base64 закінчується на = або ==?
Base64 працює групами по 3 байти (24 біти), виробляючи 4 символи Base64. Якщо довжина введення не є кратною 3, додаються символи заповнення (=), щоб довжина виводу була кратною 4. Один = означає, що в останній групі було 2 байти; два = — що був 1 байт.
Що таке URL-safe Base64?
URL-safe Base64 (визначений в RFC 4648 §5) замінює + на - та / на _, щоб закодований рядок можна було використовувати в URL, назвах файлів і HTTP-заголовках без відсоткового кодування. Зазвичай також опускає символи заповнення =.
Наскільки Base64 збільшує розмір файлу?
Кодування Base64 збільшує розмір приблизно на 33%. Кожні 3 байти введення стають 4 символами виводу. Для файлу розміром 1 МБ вивід Base64 становитиме приблизно 1,37 МБ.
Чи можу я кодувати двійкові файли за допомогою цього інструменту?
Цей інструмент кодує текстові рядки (які потім обробляються як байти UTF-8). Для кодування довільних двійкових файлів (зображення, PDF, виконувані файли) використовуйте бібліотеку мови або CLI-інструмент, що читає необроблені байти.
У чому різниця між btoa() та Buffer.from().toString('base64')?
btoa() — це вбудована функція браузера, що працює з рядками Latin-1; вона видасть помилку для символів не-ASCII, якщо ви попередньо не закодуєте їх у байти UTF-8 (за допомогою encodeURIComponent). Buffer.from(text).toString('base64') в Node.js безпосередньо обробляє рядки UTF-8 і є кращим підходом на стороні сервера.
Чи працює Base64 з бінарними файлами?
Цей інструмент кодує текстові рядки як байти UTF-8 у Base64. Для бінарних файлів (зображень, PDF, виконуваних файлів) використовуйте інструмент командного рядка або бібліотеку мови, що читає необроблені байти. У браузері використовуйте FileReader.readAsDataURL(), який повертає URI даних із вмістом у форматі Base64.
Чи є обмеження розміру для кодування?
Цей інструмент працює повністю в браузері без серверних обмежень. Практичні обмеження залежать від пам'яті браузера. Для дуже великих вхідних даних (понад кілька МБ) інструмент командного рядка — base64 (Linux/macOS) або certutil -encode (Windows) — є ефективнішим.