Base64 Encode & Decode
Encode teks atau file ke Base64 dan decode Base64 kembali, aman untuk UTF-8. Semuanya berjalan di perangkat Anda — tidak ada yang diunggah.
- Masuk
- Text · any file · Base64
- Keluar
- Base64 · Base64URL · text · file
Teks
36 karakter · 50 B
Base64
68 karakter · +36% dibanding byte UTF-8
SGVsbG8sIHdvcmxkISBIw6lsbG8sIHfDtnJsZCEg44GT44KT44Gr44Gh44GvIPCfkYs=
Encode dan decode Base64, untuk teks dan file
Base64 encoder dan decoder ini mengubah teks atau file apa pun ke Base64 dan sebaliknya saat Anda mengetik. Teks dikodekan sebagai UTF-8 lebih dulu, jadi aksen, emoji, dan aksara non-Latin tetap utuh bolak-balik, dan varian Base64URL yang aman untuk URL tinggal satu klik. Semuanya terjadi di browser Anda: teks yang Anda tempel dan file yang Anda jatuhkan tidak pernah diunggah.
Cara encode atau decode Base64
- Pilih Teks untuk sesuatu yang bisa diketik atau ditempel, atau File untuk meng-encode file atau mengubah string Base64 kembali menjadi file.
- Pilih Encode atau Decode. Jika Anda menempel Base64 saat mode encode, alat ini menyadarinya dan menawarkan untuk men-decode-nya.
- Saat encode, pilih Base64 Standar atau Aman untuk URL, apakah padding
=dipertahankan, dan apakah baris dipotong per 76 karakter. - Salin hasilnya, tukar kembali ke input untuk membalik operasi, atau kirim ke alat lain. File hasil decode bisa diunduh; ekstensinya dipilih dari signature file itu sendiri.
Apa itu Base64, dan kenapa ada
Base64 merepresentasikan byte apa pun hanya dengan 64 karakter aman: A–Z, a–z, 0–9, +, dan /. Setiap tiga byte input menjadi empat karakter output, dan jika panjang input bukan kelipatan tiga, satu atau dua tanda = mengisi bagian akhir.
Base64 ada karena banyak saluran dibuat untuk teks, bukan data biner. Email (MIME), JSON, XML, atribut HTML, header HTTP, dan environment variable semuanya bisa membawa Base64 dengan aman, sedangkan byte mentah akan rusak. Itulah sebabnya Anda menemukannya di lampiran email, URI data:, header Basic authentication, JSON Web Token, dan payload API yang menyematkan file.
Base64 adalah encoding, bukan enkripsi. Siapa pun bisa men-decode-nya, jadi tidak ada yang tersembunyi; jika sebuah nilai harus tetap rahasia, enkripsikan. Jika Anda perlu memastikan data tidak berubah, checksum dari hash generator adalah alat yang tepat.
Base64 standar, Base64URL, dan pemotongan baris
Decoder menerima semuanya: alfabet mana pun, dengan atau tanpa padding, dengan atau tanpa baris baru dan spasi. URI data:…;base64, lengkap bisa ditempel apa adanya.
- Standar (RFC 4648)
- Memakai + dan / serta padding =. Inilah yang dihasilkan MIME, data URI, sebagian besar library, dan perintah base64 di command line.
- Aman untuk URL, Base64URL
- Mengganti + dengan - dan / dengan _ sehingga hasilnya bisa diletakkan di URL atau nama file tanpa percent-encoding. JWT memakainya tanpa padding, itulah sebabnya ada opsi padding.
- Pemotongan baris MIME
- Email mewajibkan baris paling panjang 76 karakter, jadi encoder MIME menyisipkan baris baru setiap 76 karakter. Aktifkan saat menempel ke sumber email atau blok mirip PEM; matikan untuk JSON, URL, dan kode.
Kenapa teks harus menjadi UTF-8 dulu
Base64 mengodekan byte, bukan karakter, jadi teks harus diubah menjadi byte sebelum bisa di-encode. Fungsi bawaan browser btoa() hanya menerima karakter hingga U+00FF dan melempar error untuk karakter lain, itulah sebabnya encoder yang naif gagal pada "€", "日本", atau emoji. Alat ini mengodekan teks sebagai UTF-8, encoding yang diharapkan hampir semua sistem, sehingga é menjadi dua byte C3 A9 dan di-decode kembali menjadi é di platform mana pun.
Saat decode, byte diperiksa apakah UTF-8 yang valid. Jika tidak, Base64 itu hampir pasti berisi file biner, bukan teks, dan alat ini memberitahukannya — serta menyebut jenis filenya jika signature-nya dikenali — alih-alih menampilkan layar penuh karakter acak.
File: ukuran, signature, dan input besar
Base64 membuat data sekitar sepertiga lebih besar: empat karakter untuk setiap tiga byte, ditambah baris baru jika dipotong. Gambar 3 MB menjadi sekitar 4 MB teks. Tampilan file menunjukkan kedua ukuran sebelum Anda menyalin apa pun, yang layak dilihat sebelum menyematkan file besar di stylesheet atau dokumen JSON.
Men-decode string Base64 menjadi file bekerja sebaliknya. Byte pertama sebagian besar format file adalah signature tetap — 89 50 4E 47 untuk PNG, %PDF untuk PDF, PK untuk ZIP (dan juga DOCX dan XLSX) — jadi alat ini membacanya untuk memberi nama unduhan dengan benar dan menampilkan pratinjau gambar. File besar di-encode per bagian dengan bilah progres, sehingga halaman tetap responsif, dan hasil yang sangat panjang hanya ditampilkan sebagian sementara salin dan unduh selalu memberi Anda semuanya.
Khusus gambar, konverter gambar ke Base64 juga menulis cuplikan HTML, CSS, dan Markdown yang siap ditempel.
Pertanyaan yang sering diajukan
- Bagaimana cara decode string Base64?
- Pilih Decode dan tempel string-nya. Teks hasil decode muncul saat Anda mengetik. Jika Base64 berisi file, bukan teks, beralih ke mode File untuk mengunduhnya dengan ekstensi yang benar.
- Apakah Base64 itu enkripsi?
- Bukan. Base64 adalah encoding yang bisa dibalik dan bisa di-decode siapa pun tanpa kunci. Base64 membuat data biner aman dibawa sebagai teks; ia tidak melindunginya.
- Kenapa Base64 membuat file lebih besar?
- Setiap tiga byte menjadi empat karakter, jadi output sekitar 33% lebih besar dari input, ditambah sedikit lagi jika baris dipotong untuk email.
- Apa perbedaan Base64 dan Base64URL?
- Base64URL mengganti karakter + dan / dengan - dan _ sehingga hasilnya bisa dipakai di URL dan nama file, dan biasanya membuang padding =. JSON Web Token memakai Base64URL.
- Kenapa teks hasil decode saya terlihat seperti simbol acak?
- Base64 itu kemungkinan berisi data biner seperti gambar, PDF, atau byte terkompresi, bukan teks. Alat ini mendeteksinya dan menawarkan untuk memperlakukannya sebagai file, yang lalu bisa Anda unduh.
- Apa arti tanda = di akhir?
- Itu padding. Base64 bekerja dalam kelompok tiga byte, dan jika input habis di tengah kelompok, satu atau dua tanda = mengisi blok empat karakter terakhir. Banyak decoder, termasuk yang ini, bekerja dengan atau tanpanya.
- Bisakah mengubah string Base64 menjadi PDF atau gambar?
- Bisa. Di mode File, pilih Decode lalu tempel string-nya atau data URI lengkap. Alat ini mengenali PNG, JPEG, GIF, WebP, PDF, ZIP, GZIP, dan format lain dari byte pertamanya, menampilkan pratinjau gambar, dan memungkinkan Anda mengunduh file-nya.
- Apakah aman menempel data sensitif di sini?
- Encode dan decode berjalan sepenuhnya di browser Anda. Tidak ada yang Anda tempel atau jatuhkan diunggah atau disimpan.