Dibangun dengan AI canggih di perangkat Anda dan akselerasi perangkat keras untuk performa profesional dengan privasi tanpa kompromi.AI di perangkat — profesional dan privat.
Alat Encoder Decoder Base64 Online
Base64: encode dan decode teks, file, dan URI data.
- Berjalan di perangkat Anda
- URI data, PEM, dan MIME
- Mendeteksi 7 pengodean
Jatuhkan file untuk di-encode
Satu file sekali jalan, hingga 25.00 MB.
Standar memakai + dan /. Aman-URL memakai - dan _, sehingga hasilnya selamat di dalam URL, query string, atau nama file.
Padding bersifat opsional pada Base64 aman-URL dan biasanya dihilangkan pada token seperti JWT.
Sertifikat PEM butuh 64 karakter per baris; badan surel MIME butuh 76. Biarkan mati untuk URI data atau bidang API, yang harus berupa satu baris utuh.
Badan surel menginginkan CRLF; berkas yang Anda sunting di macOS atau Linux menginginkan LF. Hanya berlaku setelah keluaran memiliki baris.
Meng-encode tiap baris terpisah memberi satu nilai Base64 per baris, yang biasanya dibutuhkan daftar catatan atau kredensial.
Menambahkan awalan data: dan jenis media, serta memberi cuplikan siap pakai untuk HTML, CSS, dan JSON. Pemenggalan baris dilewati, karena pergantian baris di dalam URI data membuatnya gagal dimuat.
Bagaimana teks yang diketik menjadi bita sebelum di-encode. File sudah berupa bita dan tidak terpengaruh.
Satu file sekali jalan pada paket gratis. Pro mengantre hingga 100 dan mengirimkannya sebagai satu ZIP.
Cara encode dan decode Base64
- 1
Pilih arah
Pilih Encode untuk mengubah konten menjadi Base64, atau Decode untuk memulihkan teks atau file asli dari sebuah string Base64.
- 2
Berikan masukan
Ketik atau tempel di kotak, atau jatuhkan sebuah file. Encode menerima file apa pun; decode menerima file teks berisi Base64, termasuk sertifikat PEM lengkap dengan baris BEGIN dan END.
- 3
Tetapkan format
Pilih alfabet standar atau aman-URL, tentukan apakah padding dipertahankan, penggal pada 64 atau 76 karakter, dan aktifkan opsi URI data bila hasilnya akan masuk ke HTML atau CSS.
- 4
Periksa hasilnya
Teks yang diketik dikonversi seiring pengetikan. Panel melaporkan ukuran masukan, ukuran keluaran, dan overhead, dan saat decode ia menyebutkan alfabet yang terdeteksi, pengodean teks yang dipakai, serta jenis file yang ditemukan.
- 5
Salin atau unduh
Salin hasil ke papan klip, unduh dengan nama yang sesuai isinya, atau unduh satu batch penuh sebagai satu ZIP. Tidak ada yang meninggalkan perangkat Anda kapan pun.
Apa yang dilakukan tiap pengaturan
Sembilan pengaturan, dan tiap satunya ada karena ada format nyata yang membutuhkannya. Berikut apa yang diubah masing-masing dan kapan itu penting.
Alfabet standar dan aman-URL
Base64 butuh enam puluh empat karakter tercetak. Lima puluh dua huruf dan sepuluh angka membawa Anda ke enam puluh dua, dan dua yang terakhir itulah yang membedakan kedua varian. Alfabet standar dari RFC 4648 bagian 4 memakai tanda plus dan garis miring, yang tepat untuk badan surel dan bidang API. Varian aman-URL dari bagian 5 memakai tanda hubung dan garis bawah, karena garis miring memisahkan jalur dan plus berarti spasi di dalam query string. Selebihnya identik, dan itulah sebabnya muatan yang hanya terdiri dari huruf dan angka ter-decode sama dengan alfabet mana pun.
Padding, dan kapan membuangnya
Base64 bekerja dalam kelompok tiga bita, jadi muatan yang panjangnya bukan kelipatan tiga berakhir dengan kelompok yang kurang. Tanda sama dengan menandai seberapa kurang. Base64 standar mempertahankannya; yang aman-URL biasanya tidak, karena JSON Web Token menaruh tiga segmen Base64 berurutan yang dipisah titik dan padding akan mengganggu. Membuang padding tidak menghilangkan apa pun: decoder bisa menyimpulkan berapa bita di kelompok terakhir hanya dari panjangnya, dan itulah sebabnya alat ini memulihkan padding untuk Anda ketika Anda menempel string tanpa padding.
Pemenggalan baris untuk PEM dan MIME
Dua format mewajibkan pergantian baris di dalam muatan. PEM, yang didefinisikan RFC 7468, memenggal pada enam puluh empat karakter, dan OpenSSL akan menolak sertifikat yang datang sebagai satu baris panjang. MIME, yang didefinisikan RFC 2045 bagian 6.8, mewajibkan baris tidak lebih dari tujuh puluh enam karakter pada badan surel, sebagian karena transport lama menyisipkan pergantian barisnya sendiri dan merusak muatan saat melakukannya. Bawaannya di sini tanpa pemenggalan, karena dua pengguna besar Base64 lainnya — URI data dan bidang JSON — butuh satu baris utuh, dan pergantian baris di dalam URI data membuatnya gagal dimuat.
Meng-encode tiap baris terpisah
Kadang yang Anda punya bukan satu muatan melainkan sebuah daftar: satu kolom nilai, sekumpulan kredensial, satu catatan per baris. Meng-encode seluruh blok memberi satu string yang harus di-decode lalu dipecah lagi. Meng-encode tiap baris terpisah memberi satu nilai Base64 per baris, siap ditempel ke sebuah kolom. Akhir baris Windows sudah ditangani: carriage return diperlakukan sebagai bagian dari pergantian baris dan bukan karakter terakhir baris — perbedaan yang baru akan Anda sadari belakangan, sebagai karakter tak terlihat di ujung tiap nilai hasil decode.
Validasi ketat
Sebagian besar Base64 yang sampai ke tangan seseorang sudah melewati sesuatu: aplikasi obrolan yang menambah tanda kutip, dokumen yang mengubah tanda hubung menjadi tanda pisah, terminal yang memenggal baris. Decode yang longgar mengabaikan apa yang bukan bagian alfabet dan memulihkan padding yang hilang, dan itulah yang Anda inginkan sebagian besar waktu. Validasi ketat dipakai saat Anda perlu tahu bahwa muatannya persis seperti yang dihasilkan: ia menolak karakter tak dikenal, menolak padding di tengah, dan menolak karakter terakhir yang bit sisanya bukan nol — satu-satunya galat yang selain itu sama sekali tak terlihat, karena bit tersebut memang dibuang.
Pengodean teks di sisi keluaran
Decode menghasilkan bita, dan mengubah bita menjadi teks terbaca adalah keputusan kedua yang harus dibuat alat ini dengan benar. Baca muatan Windows-1252 sebagai UTF-8 dan tiap tanda kutip melengkung menjadi karakter pengganti; baca UTF-16 sebagai UTF-8 dan Anda mendapat NUL di antara tiap huruf. Tujuh pengodean ditawarkan bersama deteksi otomatis yang pertama membaca tanda urutan bita, lalu menguji bita terhadap aturan UTF-8, lalu mencari pola NUL rapat sepihak yang hanya dihasilkan UTF-16, dan baru kemudian beralih ke Windows-1252 — yang ditaruh terakhir karena ia satu-satunya dari delapan yang mampu men-decode urutan bita apa pun, sehingga apa pun yang ditaruh sesudahnya tak akan pernah kebagian giliran.
Mengapa memakai encoder dan decoder Base64?
Base64 memungkinkan Anda memindahkan muatan biner melalui sistem yang hanya menerima teks polos, menjaga konfigurasi tetap portabel, dan cocok dengan API serta markup yang menyematkan sumber daya kecil. Encode teks ke Base64 atau decode kembali, dari teks maupun dari file, dengan konversi langsung saat Anda mengetik.
Untuk apa Base64 berguna
- Transportasi: Memindahkan bita dengan aman lewat surel, JSON, XML, atau log tanpa merusak akhir baris.
- Penyematan: Menyisipkan gambar atau fon mungil sebagai URI data ketika file terpisah merepotkan.
- Interoperabilitas: Berbagi representasi aman-ASCII yang sama di Windows, macOS, Linux, dan web.
- Penyimpanan: Menaruh blob buram di penyimpanan berbasis teks saat tidak ada kolom biner.
- Penelusuran galat: Memeriksa respons API atau sertifikat sebagai string terbaca selama pengembangan.
- Token: Membaca header dan muatan JSON Web Token, yang berupa Base64 aman-URL tanpa padding.
Cara kerja Base64, dengan bahasa sederhana
Bita Anda dipecah menjadi kelompok enam bit; tiap kelompok dipetakan ke satu karakter alfabet, dan padding menjaga panjangnya tetap kelipatan empat karakter.
Alur encode
- Masukan: Teks diubah menjadi bita dalam pengodean yang Anda pilih; file sudah berupa bita dan dibaca langsung.
- Pengelompokan bit: Aliran bita dipotong agar tiap indeks memilih satu dari enam puluh empat simbol.
- Padding: Simbol = di akhir menandai kapan potongan terakhir membutuhkan bit padding.
- Pemformatan: Hasilnya dibiarkan satu baris, dipenggal pada 64 atau 76 karakter, atau dibungkus sebagai URI data.
- Keluaran: Anda mendapat teks siap tempel ke kode, berkas konfigurasi, lembar gaya, atau permintaan API.
- Decode: Langkah-langkahnya berjalan mundur untuk memulihkan urutan bita asli, yang lalu dibaca sebagai teks atau dikembalikan sebagai file.
URI data dan menyematkan aset
URI data membawa satu file utuh di dalam satu string, sehingga gambar, ikon, atau fon kecil bisa tinggal di dalam HTML atau lembar gaya yang memakainya alih-alih di permintaan terpisah. Ini alasan paling umum orang membuka encoder Base64.
Bentuk sebuah URI data
Tata bahasanya adalah data:, lalu jenis media opsional, lalu parameter opsional, lalu koma, lalu muatannya. Ketika muatannya Base64, kata base64 muncul tepat sebelum koma. Jenis media lebih penting daripada kelihatannya: URI data tanpa jenis media dianggap teks polos, jadi PNG yang ditulis tanpanya tampil sebagai gambar rusak di tag img dan tidak muncul sama sekali di CSS. Alat ini selalu menuliskan jenis media, menyimpulkannya dari bita tanda tangan file itu sendiri ketika filenya tidak menyatakannya.
Kapan menyematkan dan kapan tidak
Menyematkan menghilangkan satu permintaan, yang sepadan untuk sesuatu yang mungil dan langsung dibutuhkan: logo pada templat surel, ikon pada lembar gaya, placeholder pada data uji. Ia cepat berhenti sepadan. Base64 menambah sekitar sepertiga ukuran, aset tersemat tidak bisa disimpan di singgahan terpisah dari dokumen yang membawanya, dan URI data yang besar membuat dokumennya sendiri lebih lambat diurai. Sebagai patokan, sematkan yang diukur dalam kilobita dan hosting-kan yang diukur dalam ratusan kilobita.
Base64 aman-URL, JWT, dan nama file
Begitu sebuah string Base64 harus melintas di dalam URL, alfabet standar menjadi masalah, dan perbaikannya adalah varian yang sudah ada di standar sejak 2006.
Mengapa plus dan garis miring rusak di dalam URL
Garis miring memisahkan segmen jalur, jadi muatan yang mengandungnya dibaca sebagai dua segmen. Plus di-decode sebagai spasi di dalam query string menurut konvensi lama, jadi muatan yang mengandungnya kembali dalam keadaan berubah. Tanda sama dengan memisahkan parameter dari nilainya. Ketiganya muncul di keluaran Base64 biasa, dan itulah sebabnya RFC 4648 bagian 5 mendefinisikan varian aman-URL: tanda hubung untuk plus, garis bawah untuk garis miring, dan padding yang boleh Anda hilangkan.
Membaca sebuah JSON Web Token
JWT terdiri dari tiga segmen Base64 aman-URL yang dipisah titik, tanpa padding. Tempel satu segmen di sini dan ia ter-decode tanpa mengubah pengaturan apa pun, karena alfabetnya dideteksi dari string dan padding yang hilang dipulihkan. Header dan muatannya berupa JSON yang terbaca. Tanda tangannya memang bukan untuk dibaca dan akan kembali sebagai bita — decode ke file alih-alih ke teks, atau ia akan terlihat seperti kegagalan decode padahal sama sekali bukan. Base64 bukan enkripsi dan muatan JWT bukan rahasia: siapa pun yang memegang token bisa membacanya persis seperti yang baru saja Anda lakukan.
Memvalidasi Base64, dan apa yang salah
Sebagian besar masalah Base64 yang dilaporkan bukan masalah Base64. Itu adalah string yang melewati sesuatu di perjalanan, dan hal berguna yang bisa dilakukan sebuah alat adalah menyebutkan sesuatu itu.
Galat yang perlu diketahui
Panjang yang menyisakan satu karakter tidak mungkin Base64 sama sekali — tidak ada urutan bita yang ter-encode seperti itu — jadi hampir selalu ada karakter yang hilang saat menyalin. Padding di tengah biasanya berarti dua muatan ditempel berurutan. Karakter di luar alfabet biasanya tanda baca yang dimasukkan aplikasi obrolan atau pengolah kata, dan spasi tanpa pemutus adalah yang paling kejam karena tak terlihat. Campuran plus-garis miring dengan hubung-garis bawah berarti cari-dan-ganti berjalan di separuh string. Karakter terakhir yang bit sisanya bukan nol berarti string itu diubah setelah di-encode, dan hanya galat inilah yang tidak menimbulkan gejala terlihat, karena bit tersebut tetap dibuang saat decode.
Kebiasaan yang menghindari semuanya
Salin dari tampilan teks polos, bukan dari tampilan terformat. Putuskan sekali apakah API Anda mengharapkan Base64 standar atau aman-URL dan tuliskan di tempat yang dilihat para pemanggilnya. Ketika sebuah muatan harus selamat melewati badan surel atau berkas sertifikat, penggal sesuai yang diwajibkan format itu alih-alih berharap tidak ada yang memutus barisnya. Dan ketika ada yang salah, periksa panjangnya lebih dulu: pemeriksaan satu detik yang menyingkirkan separuh kemungkinan.
Fakta yang menghemat waktu penelusuran galat
Mengetahui overhead ukuran dan bedanya dengan enkripsi mencegah harapan keliru pada sistem produksi.
Rujukan cepat
- Perkirakan penambahan ukuran sekitar tiga puluh tiga persen dibandingkan biner mentah dari muatan yang sama.
- Alfabet MIME memakai A–Z, a–z, 0–9, ditambah + dan /; varian aman-URL menukar simbolnya tetapi memakai gagasan yang sama.
- Karakter padding menjaga decoder tetap selaras ketika jumlah bitanya tidak habis dibagi tiga.
- Base64 dapat dibalik dan deterministik untuk alfabet standar, dan itulah sebabnya ia tak boleh menggantikan enkripsi.
- File yang sangat besar menjadi string yang sangat panjang; peramban bisa terasa lebih lambat semata karena stringnya raksasa.
- Empat karakter Base64 selalu membawa tepat tiga bita, jadi Anda bisa menghitung ukuran hasil decode sebelum men-decode apa pun.
Praktik terbaik
Gunakan alat yang tepat: Base64 untuk transportasi dan penyematan, enkripsi untuk kerahasiaan, kompresi sebelum encode ketika lebar pita penting.
- Validasi keluaran hasil decode di lingkungan uji sebelum memercayai alur otomatis.
- Buang spasi dari string yang ditempel bila Anda menyalin dari dokumen berformat.
- Pilih hosting aset khusus untuk media besar alih-alih URI data raksasa.
- Dokumentasikan apakah API Anda mengharapkan Base64 standar atau aman-URL, agar terhindar dari galat halus.
- Jangan pernah menyimpan kata sandi atau rahasia hanya di balik Base64 — penyerang men-decode-nya seketika.
- Kompres sebelum encode, jangan sesudah: keluaran Base64 adalah teks dan jauh lebih buruk dikompres daripada bita asalnya.
Kasus penggunaan umum
- Pengembangan web: Bereksperimen dengan URI data atau menirukan respons API yang membawa contoh biner.
- Otomasi: Menyiapkan muatan untuk skrip yang hanya menerima masukan teks.
- Surel dan MIME: Memahami lampiran yang dahulu di-encode untuk jalur SMTP tujuh bit.
- Konfigurasi: Menserialkan kunci pendek atau checksum di dalam berkas bergaya .env.
- Pendidikan: Menunjukkan bagaimana lapisan representasi bertumpuk di atas bit mentah.
- Sertifikat: Membaca blok PEM tanpa baris perintah — tempel lengkap dengan baris BEGIN dan END.
File, batch, dan batas
Kedua arah menerima file, dan itu tidak biasa: sebagian besar alat Base64 akan meng-encode file lalu memaksa Anda menempel teks untuk arah sebaliknya.
File apa yang diterima tiap arah
Encode menerima apa pun, karena Base64 didefinisikan atas bita sembarang dan tidak ada file yang tidak bisa diwakilinya. Decode menerima file yang isinya teks Base64 — .txt, .b64, .pem, .crt, .key dan ekstensi teks polos lainnya — dan menolak sisanya pada saat Anda memilihnya, lengkap dengan tautan untuk berganti arah, alih-alih menerimanya lalu gagal belakangan. Setelah di-decode, bitanya dikenali dari angka ajaibnya sendiri, sehingga PNG hasil decode dikembalikan sebagai .png dan PDF hasil decode sebagai .pdf.
Apa yang termasuk gratis, dan apa yang ditambahkan Pro
Paket gratis mengonversi satu file sekali jalan, hingga 25 MB. Itu keputusan paket dan bukan batas perangkat: file 25 MB di sini di-encode dalam beberapa perseratus detik, dan pekerjaannya tak pernah menyentuh halaman yang sedang Anda lihat. Pro mengantre hingga seratus file, mengonversinya satu demi satu, dan mengembalikannya sebagai satu ZIP dengan nama ganda dibuat unik — yang lebih penting daripada kedengarannya, karena dua file bernama foto.png dari folder berbeda jika tidak akan menjadi satu entri dan arsipnya diam-diam berisi lebih sedikit file daripada yang Anda konversi.
Batasan dan kompatibilitas
Base64 adalah representasi, bukan kompresi dan bukan perlindungan. Ia membuat data lebih besar, siapa pun bisa membaliknya dengan mudah, dan ia tidak boleh menjadi satu-satunya yang berdiri antara sebuah rahasia dan orang yang membaca berkas konfigurasi Anda. Ia juga tidak bisa memperbaiki data yang memang sudah salah sebelum di-encode.
Semuanya berjalan di perangkat Anda. Konversi terjadi di luar halaman, jadi mengetik tetap responsif sebesar apa pun muatannya, dan file 25 MB dikonversi dalam sekitar lima belas per seribu detik pada peramban desktop masa kini. Tidak ada yang diunggah, dan alat ini tetap bekerja tanpa jaringan setelah halaman dimuat.
Pertanyaan yang sering diajukan
Bagaimana cara kerja encoder dan decoder Base64 ini?
Beralih antara Encode dan Decode. Di Encode, ketik teks UTF-8 atau jatuhkan file untuk memperoleh string Base64; di Decode, tempel Base64 untuk memulihkan teks asli atau file yang bisa diunduh. Teks yang diketik dikonversi seiring pengetikan, dengan statistik masukan, keluaran, dan overhead langsung, dan semuanya berjalan di perangkat Anda.
Apakah data saya privat dan aman?
Ya. Encode dan decode adalah kebalikan yang persis, jadi perjalanan bolak-balik mengembalikan masukan Anda bita demi bita. Tidak ada yang meninggalkan perangkat Anda, sehingga Anda bisa mengonversi data sensitif dengan aman, dan alat ini tetap bekerja luring setelah halaman dimuat.
Bisakah saya encode dan decode file, bukan hanya teks?
Bisa, di kedua arah. Jatuhkan file apa pun untuk memperoleh Base64-nya bagi URI data atau API. Untuk arah sebaliknya, setel keluaran decode ke File dan jatuhkan .txt, .b64, atau .pem berisi Base64: alat ini membaca bita tanda tangan hasilnya dan mengembalikannya dengan nama yang benar, sehingga PNG hasil decode terunduh sebagai .png dan bukan .bin tanpa identitas.
Apakah Base64 aman-URL didukung?
Ya, dan Anda tidak perlu menyatakannya lebih dulu. Saat decode, alfabet dideteksi dari string, jadi segmen JWT yang memakai - dan _ tanpa padding ter-decode tanpa mengubah pengaturan apa pun. Saat encode Anda bisa memilih alfabet aman-URL dan membuang tanda = di akhir, yang memang dibutuhkan token, nama file, dan query string.
Apa yang terjadi jika saya menempel string Base64 yang tidak valid?
Anda mendapat galat bernama, bukan pesan galat peramban. Panel melaporkan panjang setelah dinormalkan, berapa padding yang ditambahkan, berapa spasi yang dibuang, alfabet apa yang terdeteksi, dan berapa karakter yang bukan bagian darinya. Mode longgar memperbaiki yang aman diperbaiki; mode ketat menolaknya dan menyebutkan aturan mana yang dilanggar.
Mengapa keluarannya lebih panjang daripada masukan, dan apakah gratis?
Base64 mengubah setiap tiga bita menjadi empat karakter, menambah sekitar 33% ukuran, yang ditampilkan sebagai persentase overhead langsung. Gratis, berjalan di desktop maupun ponsel, dan cocok untuk aset tersemat, muatan API, dan URI data.
Bisakah saya menempel URI data secara langsung?
Bisa. String yang diawali data:image/png;base64, dikenali, awalannya dilepas, dan jenis media yang dinyatakannya dipakai untuk unduhan. Untuk arah sebaliknya, mengaktifkan opsi URI data membungkus hasilnya dengan awalan yang benar dan memberi Anda cuplikan siap pakai untuk tag img HTML, background-image CSS, dan nilai JSON.
Bisakah keluaran dipenggal untuk MIME atau PEM?
Bisa. Pilih 64 karakter untuk PEM, di mana RFC 7468 mewajibkan pemenggalan dan OpenSSL menolak satu baris panjang, atau 76 untuk MIME, yang diwajibkan RFC 2045 pada badan surel. Bawaannya tanpa pemenggalan, karena bidang API atau URI data butuh satu baris utuh dan pergantian baris di dalam URI data membuatnya gagal dimuat.
Teks hasil decode saya penuh tanda tanya atau simbol aneh. Kenapa?
Bitanya bukan UTF-8. Muatan yang dibuat di Windows sering Windows-1252, dan yang berasal dari sistem Jepang sering Shift-JIS; dibaca sebagai UTF-8 keduanya menghasilkan karakter pengganti. Ubah pengodean teks hasil decode — ada tujuh, ditambah deteksi otomatis yang membaca tanda urutan bita dan menguji apakah bitanya UTF-8 yang sah sebelum beralih.
Berapa file yang bisa saya konversi sekaligus?
Satu per satu pada paket gratis, hingga 25 MB per file, dan itu batas paket, bukan batas perangkat Anda. Pro mengantre hingga 100 file, mengirimkannya sebagai satu ZIP, dan hanya dibatasi oleh kemampuan perangkat Anda.
dari 812 penilaian
Beri nilai alat ini
Ketuk bintang — hanya sebentar