Decode & Encode Base64 Online — Konversi Instan di Browser
Decode dan encode Base64 online gratis. Konversi real-time dengan dukungan UTF-8 dan emoji. 100% privat di browser Anda. Tanpa pendaftaran.
Apa Itu Base64?
Base64 adalah skema encoding biner-ke-teks yang didefinisikan oleh RFC 4648 yang mengonversi data biner arbitrer menjadi representasi string ASCII yang aman menggunakan alfabet 64 karakter. Ini adalah salah satu encoding yang paling banyak digunakan di internet, menjadi fondasi dari lampiran email hingga JSON Web Token dan sertifikat TLS.
"The Base 64 encoding is designed to represent arbitrary sequences of octets in a form that need not be humanly readable." — RFC 4648, Section 1
Base64 membagi input menjadi grup 3 byte (24 bit), lalu memecah 24 bit tersebut menjadi empat grup 6-bit, masing-masing dipetakan ke salah satu dari 64 karakter yang dapat dicetak: A-Z (0-25), a-z (26-51), 0-9 (52-61), + (62), dan / (63). Karakter = digunakan untuk padding saat panjang input bukan kelipatan 3. Encoding Base64 meningkatkan ukuran data sekitar 33% (RFC 4648) — trade-off yang disengaja untuk membuat data biner aman bagi saluran khusus teks.
Base64 awalnya dirancang untuk mentransmisikan data biner secara aman melalui saluran yang hanya mendukung teks, seperti email (MIME) dan HTTP awal. Saat ini ia ada di mana-mana: data URI menyematkan gambar di HTML, token JWT meng-encode klaim, sertifikat PEM membungkus kunci, dan API mentransportasikan payload biner dalam JSON.
Base64 encoder mengonversi byte mentah ke representasi ASCII yang aman ini, sementara decoder membalikkan prosesnya. Semua encoding dan decoding di alat ini berjalan sepenuhnya di browser Anda — data Anda tidak pernah diunggah ke server mana pun, menjadikannya aman digunakan dengan API key, token, dan nilai sensitif lainnya.
Gunakan konverter Base64 online gratis ini untuk mendekode Base64 ke teks atau meng-encode teks ke Base64 secara instan di browser Anda.
Base64 sering digunakan bersama alat encoding dan data lainnya. Misalnya, Anda mungkin perlu memformat data JSON sebelum meng-encode Base64 untuk payload API, meng-encode URL string Base64 sebelum menempatkannya di parameter query, atau memverifikasi checksum file dengan MD5 atau SHA-256 setelah mendekode unduhan ber-encode Base64. Baru mengenal Base64? Baca panduan Base64 untuk pemula kami. Untuk topik lanjutan seperti MIME, data URL, dan optimasi performa, lihat panduan Base64 lengkap.
// Encode plain text to Base64
const encoded = btoa('Hello, World!');
console.log(encoded); // → 'SGVsbG8sIFdvcmxkIQ=='
// Decode Base64 back to text
const decoded = atob('SGVsbG8sIFdvcmxkIQ==');
console.log(decoded); // → 'Hello, World!'
// UTF-8 safe encode (handles Chinese, emoji, any Unicode)
function encodeBase64(str) {
const bytes = new TextEncoder().encode(str); // to UTF-8 bytes
return btoa(String.fromCharCode(...bytes));
}
console.log(encodeBase64('你好')); // → '5L2g5aW9' Fitur Utama
Konversi Real-Time
Encode dan decode secara instan saat Anda mengetik — tanpa tombol yang perlu diklik, hasil langsung muncul di area lainnya.
Dukungan Penuh UTF-8
Menangani teks Tionghoa, Jepang, Korea, Arab, emoji, dan Unicode apa pun dengan benar melalui TextEncoder/TextDecoder.
Dua Arah
Ketik di area mana pun: teks biasa di kiri di-encode ke Base64 di kanan, Base64 di kanan di-decode ke teks di kiri.
100% Berbasis Browser
Semua pemrosesan terjadi secara lokal di browser Anda. Data Anda tidak pernah meninggalkan perangkat — tanpa unggahan ke server, tanpa pelacakan.
Deteksi Error
Input Base64 yang tidak valid terdeteksi langsung dengan pesan error yang jelas, sehingga Anda tahu persis apa yang perlu diperbaiki.
Salin Sekali Klik
Salin hasil yang di-encode atau di-decode ke clipboard Anda secara instan dengan tombol Salin di setiap sisi.
Contoh
Teks Biasa
Hello, World!
SGVsbG8sIFdvcmxkIQ==
Teks ASCII sederhana yang di-encode ke Base64
Teks UTF-8
你好世界 🌍
5L2g5aW95LiW55WMIPCfjI0=
Karakter Tionghoa dan emoji dengan encoding UTF-8 yang tepat
Data JSON
{"user":"alice","role":"admin"} eyJ1c2VyIjoiYWxpY2UiLCJyb2xlIjoiYWRtaW4ifQ==
Encode payload JSON untuk disematkan di URL atau header
Teks Multi-baris
Line 1 Line 2 Line 3
TGluZSAxCkxpbmUgMgpMaW5lIDM=
Base64 mempertahankan jeda baris dan spasi
Cara Menggunakan
- 1
Masukkan Teks atau Base64
Ketik atau tempel teks biasa di area kiri untuk meng-encode, atau tempel string Base64 di area kanan untuk mendekode. Konversi instan dan dua arah.
- 2
Lihat Hasil Real-Time
Area lainnya diperbarui secara otomatis saat Anda mengetik. Error apa pun (seperti Base64 tidak valid) ditampilkan langsung.
- 3
Salin Hasilnya
Klik tombol Salin di kedua sisi untuk menyalin hasil yang di-encode atau di-decode ke clipboard Anda.
Kasus Penggunaan Umum
- Pembuatan Data URI
- Encode gambar atau file ke Base64 untuk disematkan langsung di HTML atau CSS sebagai data URI.
- Debugging JWT
- Decode header dan payload token JWT ber-encode Base64 untuk memeriksa klaim dan waktu kedaluwarsa.
- Pengembangan API
- Encode data biner untuk transmisi di API JSON, atau decode respons Base64 untuk inspeksi.
- Encoding Email
- Encode atau decode konten email dan lampiran ber-encode MIME.
- Inspeksi Sertifikat
- Decode sertifikat dan kunci ber-encode PEM untuk memeriksa konten binernya.
- Penyematan Konfigurasi
- Encode data konfigurasi atau secret untuk disematkan secara aman di variabel lingkungan atau file konfigurasi.
Detail Teknis
- Sesuai RFC 4648
- Mengimplementasikan encoding Base64 standar seperti didefinisikan dalam RFC 4648, menggunakan alfabet A-Z, a-z, 0-9, +, / dengan padding =.
- UTF-8 Melalui TextEncoder
- Menggunakan Web API TextEncoder untuk mengonversi string Unicode ke byte UTF-8 sebelum encoding, memastikan penanganan yang benar untuk semua skrip dan emoji.
- Pemrosesan Berbasis Browser
- Semua encoding menggunakan btoa()/atob() bawaan dengan TextEncoder/TextDecoder — tanpa library eksternal, tanpa panggilan server.
Praktik Terbaik
- Jangan Gunakan Base64 untuk Keamanan
- Base64 adalah encoding, bukan enkripsi. Jangan pernah menggunakannya untuk 'melindungi' kata sandi, token, atau data sensitif — selalu gunakan enkripsi yang tepat.
- Perhatikan Peningkatan Ukuran
- Base64 menambah overhead ~33%. Untuk file besar, pertimbangkan transfer biner daripada encoding Base64.
- Gunakan Encoding UTF-8
- Selalu encode teks ke byte UTF-8 sebelum encoding Base64 untuk memastikan karakter non-ASCII (Tionghoa, emoji) ditangani dengan benar.
Pertanyaan yang Sering Diajukan
Apa itu encoding Base64?
Apakah data saya aman saat menggunakan alat ini?
Bagaimana alat ini menangani karakter non-ASCII seperti huruf Tionghoa atau emoji?
Apakah Base64 itu enkripsi?
Di mana Base64 biasa digunakan?
Apa perbedaan antara Base64 dan Base64 yang aman untuk URL?
Mengapa Base64 meningkatkan ukuran data?
Bagaimana cara meng-encode file ke Base64?
Bisakah saya menggunakan Base64 di HTML dan CSS?
Berapa ukuran input maksimum?
Karakter apa saja yang ada di alfabet Base64?
Saya perlu menyematkan gambar kecil di template email HTML — haruskah saya menggunakan data URI Base64 atau meng-host gambar secara eksternal?
Mengapa string Base64 yang saya encode memiliki karakter + dan / yang merusak parameter URL saya?
Saya mencoba mendekode token JWT — bagaimana cara kerja decoding Base64URL dan apa bedanya dengan Base64 standar?
Alat Terkait
Lihat semua alat →Format & Validasi JSON Online — Gratis, Cepat, Privat
Encoding & Pemformatan
Format, validasi, dan rapikan JSON langsung di browser Anda. Alat online gratis dengan deteksi error, minifikasi, dan salin sekali klik. 100% privat.
URL Encoder & Decoder dengan URL Parser Bawaan
Encoding & Pemformatan
Decode atau encode URL online gratis secara real-time. Dual mode: encodeURI & encodeURIComponent, URL parser bawaan. Tanpa pendaftaran, 100% privat di browser.
Konverter Basis Bilangan — Biner, Hex, Desimal & Oktal
Alat Konversi
Konversi antara biner, hex, desimal, oktal, dan basis apa pun (2-36) secara instan. Presisi BigInt, output siap kode. Gratis, privat — tanpa pendaftaran.
Kompres Gambar Online — JPEG, PNG & WebP
Alat Konversi
Kompres JPEG, PNG & WebP hingga 80% lebih kecil di browser, tanpa upload. Batch 20 gambar, atur kualitas, bandingkan sebelum & sesudah. Gratis & privat.
Konverter Satuan Panjang — Metrik, Imperial & Lainnya
Alat Konversi
Konversi antara 16 satuan panjang secara instan — metrik, imperial, nautika & astronomi. 1 inci = 2,54 cm. Gratis, privat, berjalan di browser Anda.
MD5 Hash Generator & Alat Checksum File
Alat Keamanan
Hasilkan hash MD5, SHA-256, SHA-1 & SHA-512 secara online gratis. Hash teks atau file di browser Anda, verifikasi checksum dan salin hasil. Tanpa pendaftaran.