Alat
ID

Apa Itu Encoding Base64?

Base64 adalah cara menuliskan data biner apa pun hanya dengan 64 karakter yang dapat dicetak. Berikut cara kerjanya, alasan keberadaannya, serta kapan Anda sebaiknya (dan tidak sebaiknya) menggunakannya.

Base64 dalam satu kalimat

Base64 adalah encoding biner-ke-teks yang didefinisikan dalam RFC 4648, yang merepresentasikan setiap 3 byte data sebagai 4 karakter dari alfabet A–Z, a–z, 0–9, +, dan /.

Mengapa Base64 diciptakan

Banyak sistem dirancang hanya untuk teks: email (SMTP), JSON, XML, atribut HTML, URL, dan terminal. Data biner mentah seperti gambar atau PDF bisa mengandung byte yang akan diubah atau ditolak oleh sistem-sistem tersebut. Base64 mengubah data menjadi karakter aman yang dapat dicetak, sehingga data tetap utuh sampai tujuan.

Cara kerja encoding Base64, langkah demi langkah

  1. Ambil byte input: M, a, n = 77, 97, 110.
  2. Tulis sebagai 24 bit: 01001101 01100001 01101110.
  3. Bagi bit-bit tersebut menjadi empat kelompok 6 bit: 010011 010110 000101 101110 = 19, 22, 5, 46.
  4. Cari setiap angka di alfabet: 19 = T, 22 = W, 5 = F, 46 = u.

Jadi Man menjadi TWFu. Proses decode cukup membalik langkah-langkah ini.

Alfabet Base64

NilaiKarakter
0–25A–Z
26–51a–z
52–610–9
62+ (aman URL: -)
63/ (aman URL: _)
padding=

Arti padding =

Jika panjang input bukan kelipatan 3, kelompok terakhir akan dilengkapi dan ditandai dengan =: Ma menjadi TWE= dan M menjadi TQ==. Padding tidak pernah muncul di tengah string yang valid.

Varian Base64

Base64 bukan enkripsi

Base64 tidak menyembunyikan apa pun: siapa saja bisa men-decode-nya dalam sekejap. Base64 sering disangka sebagai bentuk perlindungan karena hasilnya terlihat acak. Gunakan enkripsi sungguhan seperti AES untuk data rahasia, dan pakai Base64 hanya untuk mengirim byte terenkripsi tersebut sebagai teks.

Tambahan ukuran

Panjang hasil encode adalah 4 × ⌈n / 3⌉ karakter untuk n byte, sekitar 33% lebih besar daripada aslinya. Dengan baris baru MIME, ukurannya bertambah lagi sekitar 2–3%.

Di mana Base64 digunakan

Pertanyaan yang sering diajukan

Apakah Base64 sama dengan enkripsi atau hashing?

Tidak. Enkripsi membutuhkan kunci untuk dibalik, hashing sama sekali tidak bisa dibalik, sedangkan Base64 dapat di-decode oleh siapa saja.

Mengapa disebut Base64?

Karena Base64 menggunakan alfabet berisi 64 karakter, sehingga setiap karakter membawa 6 bit informasi (26 = 64).

Bagaimana cara mengetahui apakah sebuah string adalah Base64?

String tersebut hanya berisi A–Z, a–z, 0–9, +, / (atau - dan _), panjangnya biasanya kelipatan 4, dan bisa diakhiri satu atau dua tanda =. Cara tercepat untuk mengujinya adalah menempelkannya ke decoder kami.

Terakhir diperbarui: