Apa itu Base64
Base64 adalah cara merepresentasikan data biner (misalnya file, gambar, atau bytes hasil kompresi) menjadi teks ASCII. Dengan begitu, data bisa ditransfer lewat sistem yang hanya aman untuk teks, seperti JSON, HTML, atau payload tertentu.
Penting: Base64 bukan enkripsi. Siapa pun bisa decode kembali. Kalau butuh keamanan, gunakan enkripsi yang benar (misalnya AES) atau pastikan transportnya aman (HTTPS).
Kenapa Base64 sering dipakai
- Menyisipkan data biner ke payload JSON/XML tanpa merusak karakter.
- Membuat Data URL untuk gambar kecil di HTML/CSS.
- Mengirim data melalui sistem yang sering mengubah karakter non-ASCII (misalnya copy-paste di beberapa medium).
Cara decode Base64 dengan aman
- Pastikan string Base64 lengkap (tidak terpotong).
- Kalau ada prefix seperti data:image/png;base64, ambil bagian setelah koma untuk decode payload-nya.
- Decode, lalu cek hasilnya: apakah menjadi teks yang valid atau bytes/file biner.
Contoh prefix yang sering muncul
data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAA...Gunakan Base64 Tool untuk encode/decode cepat, menghapus whitespace, dan cek Data URL tanpa ribet.
Buka Base64 Tool→Checklist cepat (Do / Don't)
- Hapus whitespace dan line breaks sebelum decode (kalau copas dari email/log).
- Pastikan padding '=' tidak hilang (kalau decoder butuh).
- Kalau Data URL, decode payload setelah koma (bukan termasuk prefix).
- Jangan menganggap Base64 itu aman/rahasia (bukan enkripsi).
- Jangan masukkan Base64 panjang ke query string URL (sering terpotong).
- Jangan proses input tak tepercaya tanpa limit ukuran (bisa abuse).
Kesalahan umum
- Mengira Base64 = aman: Base64 adalah encoding, bukan proteksi. Untuk data sensitif, gunakan enkripsi yang benar.
- Whitespace / new lines: String Base64 dari email/log sering mengandung line breaks. Hapus dulu sebelum decode.
- Padding '=' hilang: Beberapa encoder memotong padding; kadang masih bisa decode, tapi tidak selalu. Jika gagal, coba tambah padding sesuai kebutuhan.
FAQ
Kenapa ukuran Base64 lebih besar?
Karena data biner diubah menjadi teks. Umumnya ukuran membengkak sekitar ~33%.
Apa bedanya Base64 vs URL encoding?
URL encoding untuk karakter khusus di URL. Base64 untuk mengubah bytes/biner menjadi teks ASCII.
