Apa itu encoding Base64?
Metode untuk mengkodekan data biner sebagai teks ASCII menggunakan 64 karakter.
Encode & decode Base64
Metode untuk mengkodekan data biner sebagai teks ASCII menggunakan 64 karakter.
Untuk mentransmisikan data biner dengan aman dalam format berbasis teks seperti email, JSON, dan HTML.
Ya, sekitar 33% lebih besar dari aslinya.
Base64 ngambil data biner -- yang komputer suka tapi sistem teks nggak bisa handle -- dan konversi jadi karakter ASCII biasa. Ketemu di mana-mana: lampiran email, gambar yang di-embed langsung di HTML, token autentikasi API. Kalau pernah lihat string panjang huruf-angka acak yang ujungnya "==", itu Base64.
Iya, sekitar 33% lebih besar. Trade-off-nya simpel: setiap 3 byte data asli jadi 4 karakter ASCII. Kamu dapat kompatibilitas (bisa jalan di mana aja yang support teks) tapi kehilangan sedikit efisiensi ukuran file.
Base64 ambil 3 byte (24 bit) data dan potong jadi empat kelompok masing-masing 6 bit. Setiap chunk 6-bit dipetakan ke salah satu dari 64 karakter -- A sampai Z, a sampai z, 0 sampai 9, plus (+), dan slash (/). Kalau input-nya nggak habis dibagi 3, kamu dapet karakter padding "=" di akhir. Hasilnya? Data biner apa aja -- gambar, file, apa pun -- jadi teks yang aman dan bisa dicetak.
Email itu use case aslinya -- MIME encoding bergantung sama Base64 buat ubah lampiran jadi teks yang bisa jalan lewat email server. Web developer pakai buat embed gambar kecil langsung di CSS atau HTML lewat data URI, hemat satu HTTP request. Kalau pernah setup API authentication pakai Basic Auth, kamu udah Base64-encode username dan password kamu. Juga muncul tiap kali perlu masukin data biner ke JSON, XML, atau format text-only lainnya.
Penambahan ukuran 33% dari Base64 itu harga yang dibayar buat dukungan yang hampir universal. Base32 naikkin overhead jadi 60% tapi nggak peduli huruf besar-kecil, yang bantu di beberapa edge case. Hex encoding menggandakan ukuran data tapi gampang banget dibaca waktu debugging. Ada juga URL-safe Base64, yang ganti + dan / jadi - dan _ biar data yang di-encode nggak ngerusak URL. Pilih yang tepat berdasarkan ke mana datanya pergi dan seberapa penting ukurannya.