Enkode/Dekode Base64 (Teks)

Loading dropzoneโ€ฆ

Input

Output

Tentang encoder Base64 ini Encoder Base64 Online

Bagian dari Encode64 โ€œBase64 Studioโ€, encoder ini mengubah teks, JSON, dan aset biner kecil menjadi string Base64 siap untuk disisipkan ke header, HTML/CSS, variabel lingkungan, atau fixture pengujian. Tanpa login, tanpa instalasi, dan tanpa pemrosesan sisi server.

Mengapa Menggunakan Pengkode Base64 Ini

  • Pengkodean Base64 instan untuk teks, JSON, dan payload biner kecil
  • Dukungan file (teks, gambar, biner) untuk konversi cepat ke string Base64
  • Opsi aman-URL untuk JWT, parameter kueri, dan konteks web-aman
  • Pembungkusan baris opsional untuk meniru alat CLI atau format email/PEM
  • Salin satu-klik untuk penggunaan ulang mudah di header, konfigurasi, dan kode
  • UI responsif yang berfungsi baik di desktop dan seluler
  • Pengkodean terjadi di browser Anda โ€” data Anda tidak dikirim ke server jarak jauh

๐Ÿ”ง Cara Kerja Pengkodean Base64 (Langkah demi Langkah) for base64-encoder

1

Berikan masukan

Tempel teks, JSON, atau cuplikan Anda ke area masukan, atau jatuhkan file untuk mengonversi byte mentahnya ke Base64. Alat membaca byte persis seperti aslinya.

2

Konversi ke byte

Pengkode mengonversi karakter (seperti teks UTF-8) atau konten file menjadi byte. Setiap byte adalah nilai 8-bit antara 0 dan 255.

3

Kelompokkan ulang bit ke indeks Base64

Setiap 3 byte (3 ร— 8 = 24 bit) dikelompokkan ulang menjadi 4 grup 6 bit (4 ร— 6 = 24). Setiap grup 6-bit adalah indeks ke alfabet Base64.

4

Peta ke karakter Base64 & beri padding

Setiap indeks 6-bit dikonversi ke karakter Base64. Jika masukan tidak habis dibagi 3 byte, padding '=' ditambahkan sehingga panjang keluaran selalu kelipatan 4 karakter.

Spesifikasi Teknis

Set Karakter (RFC 4648)

Pengkode ini menggunakan alfabet Base64 standar yang didefinisikan oleh RFC 4648.

Rentang / JenisKarakterCatatan
Indeks 0โ€“25Aโ€“ZHuruf besar
Indeks 26โ€“51aโ€“zHuruf kecil
Indeks 52โ€“610โ€“9Angka
Indeks 62โ€“63+ /Simbol Base64 standar
Padding=Memastikan panjang output adalah kelipatan 4

Ukuran & Overhead

Base64 menukar ukuran dengan keamanan di saluran teks saja. Harapkan sekitar sepertiga lebih banyak data setelah pengkodean.

Ukuran asliUkuran Base64 (perkiraan)Overhead
3 byte4 karakter~33% lebih besar
1 KBโ‰ˆ 1,37 KB~37% termasuk padding dan baris baru
1 MBโ‰ˆ 1,37 MBRasio yang sama pada skala lebih besar
Gunakan Base64 saat Anda memerlukan transportasi teks yang aman (misalnya header HTTP, JSON, HTML), bukan sebagai metode kompresi.

Performa & Batasan Praktis

Pengkodean itu sendiri cepat, tetapi buffer besar dapat memengaruhi memori dan responsivitas browser.

Ukuran muatanPengalaman penggunaRekomendasi
Beberapa KBInstanIdeal untuk header, cuplikan konfigurasi, dan data uji
100 KB โ€“ 1 MBSangat responsifKhas untuk muatan API dan fixture
1โ€“5 MBUmumnya baik pada perangkat keras modernPertimbangkan alat CLI jika sering melakukan ini
> 5โ€“10 MBMungkin terasa lambat atau berat memori di browserGunakan encoder streaming atau utilitas CLI

Enkoding Base64 Baris Perintah

Untuk file besar, otomatisasi, atau alur kerja CI, gunakan utilitas Base64 bawaan di platform Anda.

Linux / ๐Ÿ macOS

Enkode string

echo -n 'text' | base64

Mengenkode string 'text' sebagai Base64 tanpa menambahkan baris baru.

Enkode file

base64 input.bin > output.b64

Membaca data biner dari input.bin dan menulis teks Base64 ke output.b64.

Windows / PowerShell

Enkode string dengan PowerShell

[Convert]::ToBase64String([Text.Encoding]::UTF8.GetBytes("text"))

Mengonversi byte UTF-8 untuk 'text' menjadi string Base64.

Enkode file dengan certutil (CMD)

certutil -encode input.bin output.b64

Menggunakan alat bawaan Windows untuk membuat file terenkode Base64.

Aplikasi Praktis

Pengembangan Web & Data URI

Sisipkan aset dan sumber daya kecil langsung ke HTML, CSS, atau JavaScript.

  • Hasilkan data:image/...;base64,... untuk logo, ikon, dan gambar kecil.
  • Sisipkan font atau konten SVG dalam aturan CSS.
  • Simpan muatan kecil di LocalStorage sebagai string Base64.
<img src="data:image/png;base64,iVBORw0KGgo...">
document.styleSheets[0].insertRule("@font-face{src:url('data:font/woff2;base64,...')}" );

Pengembangan API & Header

Kirim kredensial dan muatan kecil dengan aman melalui saluran teks saja.

  • Buat header Authorization: Basic dari pasangan username:password.
  • Enkode muatan JSON ke Base64 untuk header kustom atau parameter query.
  • Bungkus blob biner dalam JSON sebagai string Base64.
Authorization: Basic dXNlcm5hbWU6cGFzc3dvcmQ=
fetch(url, { headers: { 'X-Payload': btoa(JSON.stringify(data)) } });

Pengujian, Fixture & Debugging

Buat fixture teks saja yang stabil untuk sesi pengujian dan debugging.

  • Enkode fixture biner (gambar, PDF) dan sematkan dalam kode uji.
  • Simpan contoh muatan sebagai string Base64 alih-alih mengommit file biner.
  • Prototipe payload untuk layanan yang mengharapkan field terenkode Base64.
// Contoh: Tes Jest menggunakan fixture Base64
const payload = Buffer.from(base64Fixture, 'base64');
expect(processPayload(payload)).toBeTruthy();

โ“ Frequently Asked Questions

โ“Mengapa Base64 menggunakan padding '='?

Base64 mengelompokkan input menjadi blok 3 byte (24 bit) dan menghasilkan 4 karakter (4 ร— 6 bit). Saat panjang input tidak habis dibagi 3, karakter padding '=' ditambahkan untuk menandakan bahwa blok terakhir lebih pendek. Padding adalah bagian dari format enkoding, bukan data asli.

๐Ÿ”—Bagaimana cara membuat Base64 yang aman untuk URL?

Base64 yang aman untuk URL mengganti '+' dengan '-' dan '/' dengan '_', serta sering menghilangkan padding '=' di akhir. Banyak pustaka memiliki mode aman-URL. Jika perlu melakukannya manual, mulai dari Base64 standar, lalu terapkan penggantian ini dan pangkas '=' sesuai kebutuhan Anda.

๐Ÿ”’Apakah enkoding Base64 merupakan tindakan keamanan?

Tidak. Base64 adalah **enkoding** yang dapat dibalik yang membuat data biner aman untuk diangkut sebagai teks (misalnya dalam JSON, HTML, atau header). Ini tidak memberikan kerahasiaan atau integritas sendiri. Selalu gunakan HTTPS/TLS dan kriptografi yang tepat (seperti AES atau skema kunci publik) untuk keamanan.

๐Ÿ“Berapa ukuran file maksimum yang harus saya enkode di sini?

Enkoder online ini paling nyaman dengan payload hingga beberapa megabyte. Biner yang lebih besar mungkin masih berfungsi tetapi bisa lambat atau intensif memori di browser. Untuk file besar, alat baris perintah atau enkoder streaming lebih tangguh.

Pro Tips

Best Practice

Untuk aset yang sangat kecil (< 10 KB), penyisipan sebagai URI data Base64 dapat mengurangi permintaan HTTP, tetapi hindari melakukan ini untuk gambar atau font besar.

Best Practice

Catat hanya payload Base64 yang dipotong (atau hash) di produksi untuk menghindari kebocoran konten sensitif dalam log.

Best Practice

Jika backend Anda mengharapkan Base64, validasi dan normalisasi input di sisi server untuk menolak payload yang rusak atau terlalu besar.

Additional Resources

Other Tools