Konverter Gratis

Encoder Base64 / Decoder

Enkode teks atau file ke Base64 dan dekode string Base64 secara instan di browser Anda. Gratis, privat, dan tidak perlu unggah.

Tentang alat ini

Base64 adalah skema pengkodean yang mewakili data biner sebagai teks ASCII menggunakan 64 karakter yang dapat dicetak: A-Z, a-z, 0-9, plus (+), dan garis miring (/), dengan sama dengan (=) digunakan untuk padding. Format ini awalnya dirancang untuk membuat lampiran biner bertahan dalam pengangkutan email 7-bit bersih, namun kini telah diperluas hingga puluhan kegunaan: URL data dalam HTML, JSON yang berisi data gambar, muatan JWT, header autentikasi dasar, dan protokol berbasis teks apa pun yang perlu membawa byte.

Pengkodean membutuhkan 3 byte masukan dan menghasilkan 4 karakter ASCII keluaran. Oleh karena itu, keluarannya 33% lebih panjang daripada masukan — yang merupakan biaya penyesuaian biner ke dalam format yang aman untuk teks. Decoding membalikkan proses dengan tepat, memulihkan byte asli dari teks yang disandikan.

Alat ini menangani dua arah. Mode penyandian mengambil input teks (atau file biner melalui unggahan) dan menghasilkan teks base64. Mode dekode mengambil teks base64 dan menghasilkan teks asli atau biner yang dapat diunduh. Varian aman URL (menggunakan - dan _ sebagai pengganti + dan /) didukung untuk token dan pengidentifikasi.

Mengapa Menggunakan Base64

Base64 adalah cara standar untuk menyematkan data biner dalam konteks hanya teks. Gambar sebaris dalam HTML menggunakan URL data (data:image/png;base64,...) sehingga ikon kecil dapat dikirimkan bersama halaman tanpa permintaan terpisah. Payload JSON yang membawa gambar, sertifikat, atau tanda tangan menyandikannya sebagai string base64. Token JWT adalah tiga segmen berkode base64 yang dipisahkan oleh titik.

Base64 juga menormalkan penanganan karakter untuk protokol yang salah menangani biner 8-bit. Header autentikasi (Otentikasi dasar menggunakan base64), lampiran email, file konfigurasi yang berisi kunci, dan banyak API memerlukan base64 karena biner tidak dapat melewati saluran pipanya dengan andal.

Cara menggunakan

Tempel data, pilih arah.

  1. Pilih menyandikan atau mendekode: Encode menghasilkan teks base64 dari biner atau input teks. Decode membalikkan proses.
  2. Tambahkan masukan: Untuk pengkodean, tempel teks atau unggah file biner. Untuk decoding, tempel teks base64. Alat ini mendeteksi varian aman URL secara otomatis.
  3. Mengkonversi: Browser menggunakan btoa untuk pengkodean dan atob untuk decoding (dengan penanganan UTF-8 untuk teks non-ASCII). Outputnya eksak dan deterministik.
  4. Salin atau unduh: Teks yang dikodekan dapat disematkan di URL, JSON, URL data HTML, atau protokol berbasis teks apa pun. Unduhan biner yang didekodekan sebagai file dengan perkiraan ekstensi yang sesuai berdasarkan jenis file yang terdeteksi.

Kasus Penggunaan Umum

Detail Teknis

Base64 memetakan setiap 6 bit masukan ke salah satu dari 64 karakter keluaran. Tiga byte masukan (24 bit) menghasilkan empat karakter keluaran. Jika panjang masukan bukan kelipatan 3, pembuat enkode menambahkan satu atau dua tanda sama dengan untuk memasukkan keluaran ke kelipatan 4 karakter.

Base64 yang aman untuk URL (didefinisikan dalam RFC 4648 bagian 5) menggantikan + dengan - dan / dengan _ untuk menghasilkan string yang aman untuk digunakan dalam URL dan nama file tanpa melakukan pelolosan lebih lanjut. Tanda sama dengan padding terkadang dihilangkan dalam konteks aman-URL; decoder biasanya menerima kedua bentuk tersebut.

Btoa dan atob JavaScript menangani ASCII secara langsung tetapi gagal pada string non-ASCII. Untuk teks UTF-8, konverter menggunakan TextEncoder/TextDecoder untuk mengonversi antara teks dan biner, lalu mengkodekan biner dengan base64. Ini menangani emoji, karakter beraksen, dan skrip non-Latin dengan benar.

Praktik Terbaik

Pertanyaan yang sering diajukan

Untuk apa pengkodean Base64 digunakan?
Base64 mengubah data biner menjadi teks ASCII. Penggunaan umum termasuk menyematkan gambar dalam HTML (URI data), mengkodekan lampiran email, mentransmisikan data biner dalam API JSON, dan menyimpan gumpalan biner dalam database berbasis teks.
Apakah pengkodean Base64 mengenkripsi data saya?
Tidak. Base64 adalah pengkodean, bukan enkripsi. Siapa pun dapat memecahkan kode string Base64. Ini dirancang untuk transportasi data yang aman, bukan keamanan. Gunakan enkripsi aktual (AES, RSA) untuk data sensitif.
Mengapa Base64 meningkatkan ukuran file?
Base64 mewakili setiap 3 byte input sebagai 4 karakter ASCII, menghasilkan peningkatan ukuran sekitar 33%. Ini adalah trade-off karena dapat menyematkan data biner dengan aman dalam format teks.
Bisakah saya menyandikan gambar ke Base64?
Ya. Unggah file gambar dan alat ini akan menghasilkan string Base64 yang dapat Anda gunakan sebagai URI data (data:image/png;base64,...) dalam HTML atau CSS.
Apakah token JWT base64?
Ya — JWT terdiri dari tiga segmen berkode base64url yang dipisahkan oleh titik. Yang pertama adalah header, yang kedua adalah payload, yang ketiga adalah tanda tangan.
Apakah data saya diunggah ke server?
Tidak. Pengkodean dan penguraian kode terjadi di browser Anda menggunakan btoa, atob, TextEncoder, dan TextDecoder.
Berapa ukuran maksimalnya?
Hingga 50MB. Memori browser membatasi ukuran praktis untuk input yang sangat besar.
Mengapa keluaran saya yang didekodekan terlihat seperti sampah?
Kemungkinan besar sumbernya biner, bukan teks. Beralih ke mode unduh file untuk mendapatkan biner, atau periksa apakah input sebenarnya adalah teks berkode base64, bukan biner.