Enkode/Dekode Base62 (Biner)

Pemrosesan 100% sisi klien (tanpa unggah server). Encode file/byte biner ke teks Base62 dengan alfabet pilihan, pembungkusan baris opsional dan pemrosesan per baris, ditambah validasi ketat dan dukungan data: URI saat mendekode kembali ke byte.

Loading…

Tentang Encode/Decode Base62 (Biner)

Gunakan alat ini untuk mengkodekan file biner (byte) ke dalam teks Base62 untuk transportasi dalam sistem yang lebih menyukai muatan alfanumerik. Meskipun halaman ini dioptimalkan untuk tujuan pengkodean, ia juga menyertakan aksi dekode untuk mengonversi Base62 kembali ke file biner yang dapat diunduh. Semuanya berjalan secara lokal di peramban Anda (tanpa unggah), dan Anda dapat mengontrol alfabet Base62, pembungkusan opsional, pemisah, dan ketat validasi agar sesuai dengan produsen/konsumen Anda.

Fitur

  • Unggah/seret-dan-lepas file biner (.bin, .dat, arsip) dengan dukungan batch multi-file
  • Dua aksi: Encode (biner β†’ teks Base62) dan Decode (teks Base62 β†’ file yang dapat diunduh)
  • Pemilihan alfabet: 0-9A-Za-z (umum), 0-9a-zA-Z, A-Za-z0-9, a-zA-Z0-9
  • Pembungkusan baris opsional (mode encode): bungkus pada lebar kolom pilihan atau nonaktifkan (0)
  • Pilih pemisah baris: LF ( ) atau CRLF ( ) untuk keluaran terbungkus
  • Proses per baris untuk muatan multi-rekaman (berguna saat setiap baris adalah potongan Base62 terpisah)
  • Decode dapat menerima awalan data:*;base62, (dapat dialihkan)
  • Tombol validasi ketat untuk menolak karakter tidak valid untuk alfabet yang dipilih
  • Mode pratinjau langsung untuk input kecil (nonaktifkan untuk muatan besar)
  • Pemrosesan 100% sisi klien (tanpa unggah server).

Cara menggunakan for base62-binary-encoder

1

Letakkan file (atau tempel teks Base62)

Untuk encoding, seret-dan-lepas satu atau lebih file biner ke zona lepas. Untuk decoding, tempel teks Base62 yang Anda terima (opsional dengan awalan data:*;base62, jika diaktifkan).

2

Pilih aksi/mode dan jalankan

Pilih "Aksi" (Encode atau Decode), lalu klik tombol yang sesuai. Untuk encoding, pilih "Alfabet" yang Anda butuhkan dan secara opsional atur "Bungkus baris pada" dan pemisah baris. Untuk decoding, aktifkan "Validasi ketat" untuk mendeteksi karakter tidak valid lebih awal, dan alihkan "Terima awalan data:*;base62," jika input Anda memuatnya.

3

Salin keluaran atau unduh file yang didecode

Setelah encoding, salin keluaran teks Base62 (terbungkus dan dipisahkan sesuai konfigurasi). Setelah decoding, unduh file biner yang direkonstruksi (aturan nama file biasanya menghapus .b62 jika ada dan kembali ke .bin jika diperlukan).

Spesifikasi teknis

Model Eksekusi

Pengungkapan runtime, batasan, dan penanganan data.

AspekDetail
ModePemrosesan 100% sisi klien (tanpa unggah server).
Cakupan aksiEncode biner β†’ teks Base62 (utama), ditambah Decode Base62 β†’ unduhan biner
InputEncode: File/Blob/Uint8Array/ArrayBuffer/TypedArray. Decode: String Base62 (opsional dengan awalan data:*;base62,)
OutputEncode: Teks Base62. Decode: byte sebagai file yang dapat diunduh
Batas~1–2MB karakter; ~25000 ms batas waktu
RetensiSemua pemrosesan terjadi secara lokal di browser Anda (tidak ada unggahan)
Untuk data sensitif (rahasia, file pribadi), utamakan alat offline/lokal dan hindari berbagi muatan melalui clipboard atau tangkapan layar.

Contoh Mini

Urutan byte kecil yang dikodekan menggunakan alfabet umum "0-9A-Za-z". Output bervariasi berdasarkan alfabet dan pengaturan pembungkusan.

ItemNilai
Byte input (hex)00 01 02 03 04 05 06 07 08 09
Output (Base62)(tergantung pada implementasi/alfabet)
Apa yang mengubah outputUrutan alfabet, pembungkusan opsional, pemisah baris, dan apakah Anda mengodekan sebagai blob tunggal atau potongan per baris
Base62 bukan standar universal tunggal seperti RFC 4648 Base64. Selalu jaga konsistensi alfabet antara pengkode dan pengurai.

Kesalahan & Kasus Tepi

Mode kegagalan umum dan cara memperbaikinya.

GejalaKemungkinan penyebabYang harus diperiksa
Input harus berupa string untuk decodeAnda mencoba mendekode tetapi memberikan byte/file alih-alih teks Base62Atur Aksi ke Decode dan tempelkan teks Base62; gunakan Encode untuk file yang diunggah
Alat ini mengkodekan data biner... bukan string teksAnda mencoba mengkodekan dengan menempelkan teks ke dalam pengkode binerUnggah file (atau berikan byte). Jika Anda membutuhkan konversi teks→byte, gunakan alat berorientasi teks terlebih dahulu
Kesalahan validasi ketat / karakter tidak validInput berisi karakter yang tidak ada dalam alfabet Base62 yang dipilih (atau mengandung pemisah/awalan)Pilih Alfabet yang benar, nonaktifkan Strict untuk menguji input yang toleran, dan hapus spasi ekstra; jika input memiliki awalan data:*;base62,, aktifkan Terima URI data
File yang didekode terlihat rusakKetidakcocokan alfabet atau produsen menggunakan varian Base62 yang berbedaVerifikasi urutan alfabet dengan produsen (0-9A-Za-z vs 0-9a-zA-Z dll.) dan jaga agar identik di kedua sisi
Baris baru atau batas potongan yang tidak terdugaInput/output dibungkus atau Anda menggunakan pemrosesan per baris secara tidak benarUntuk muatan tunggal, atur Bungkus baris di 0 dan jaga lineByLine mati; untuk aliran multi-rekaman, aktifkan lineByLine dan pastikan satu potongan Base62 per baris
Input terlalu besar (maks 2MB) / waktu habisPayload melebihi batas aman atau perangkat lambatPisahkan payload, nonaktifkan Pratinjau Langsung, atau beralih ke skrip/alat lokal untuk file besar

Opsi & Aturan Keluaran

Bagaimana opsi UI memengaruhi perilaku pengkodean/dekode.

OpsiBerlaku untukEfek
AksiEncode / DecodeEncode mengubah byte menjadi teks Base62; Decode mengubah teks Base62 menjadi file biner yang dapat diunduh.
AlfabetEncode / DecodeMenentukan urutan set 62 karakter. Harus cocok antar sistem untuk dekode yang benar.
Bungkus baris padaHanya EncodeJika > 0, menyisipkan jeda baris pada lebar yang dipilih; 0 menonaktifkan pembungkusan.
Pemisah barisEncode / Decode (pemformatan)Mengontrol urutan baris baru mana yang digunakan saat membungkus atau mengeluarkan keluaran berbasis baris: LF atau CRLF.
Pratinjau LangsungKeduanyaBerjalan otomatis pada perubahan (terbaik untuk input kecil). Nonaktifkan untuk payload besar untuk menghindari waktu habis.
Proses baris per barisKeduanyaMemperlakukan setiap baris sebagai catatan terpisah. Berguna untuk daftar/aliran potongan Base62.
Terima data:*;base62, awalanHanya DecodeMemungkinkan input yang dimulai dengan awalan seperti URI data sehingga alat dapat menghapusnya sebelum mendekode.
Validasi ketatHanya DecodeMenolak karakter di luar alfabet yang dipilih dan menangkap input yang salah bentuk lebih awal.
Jika Anda tidak mengendalikan produsen, mulailah dengan mengidentifikasi alfabet mana yang digunakannya, lalu kunci pilihan itu di mana saja (dokumen, CI, dan kode).

Alternatif baris perintah

Tidak ada CLI Base62 universal di sebagian besar sistem operasi. Untuk hasil yang dapat direproduksi di CI atau untuk file besar, gunakan pustaka yang dipelihara dan dokumentasikan secara eksplisit pemetaan alfabet yang digunakan oleh sistem Anda.

Semua platform (Python)

Encode/decode Base62 menggunakan pustaka yang dipelihara (versi tetap + alfabet)

python -c "import sys; print('Base62 tidak ada di pustaka standar Python. Gunakan pustaka Base62 yang dipelihara, kunci versinya, dan konfigurasikan alfabet secara eksplisit (mis., 0-9A-Za-z vs 0-9a-zA-Z).')"

Pustaka standar Python tidak menyertakan Base62. Untuk kebenaran dan kemampuan reproduksi, gunakan pustaka terpercaya, kunci versi dependensi, dan pertahankan konsistensi alfabet di seluruh layanan.

Node.js

Encode/decode Base62 menggunakan pustaka yang dikelola (dokumentasikan alfabet)

node -e "console.error('Base62 tidak dibangun ke dalam inti Node. Gunakan pustaka Base62 yang terpercaya, kunci versinya, dan dokumentasikan/konfigurasikan alfabetnya (0-9A-Za-z, 0-9a-zA-Z, dll.) untuk menghindari ketidakcocokan.')"

Node tidak menyertakan codec Base62 di intinya. Lebih baik gunakan pustaka terpercaya dan catat pilihan alfabet agar encode/decode tetap kompatibel dari waktu ke waktu.

Kasus penggunaan

Sematkan artefak biner ke dalam saluran teks saja

  • Lampirkan biner kecil di dalam JSON, YAML, atau sistem yang digerakkan lingkungan yang lebih menyukai muatan alfanumerik
  • Bagikan fixture pengujian sebagai teks Base62 ketika byte mentah tidak nyaman
  • Simpan pengenal atau muatan yang agak ringkas tanpa alfabet yang banyak tanda baca

Pengujian interoperabilitas di berbagai alfabet

  • Bandingkan keluaran di berbagai urutan alfabet untuk memahami batasan kompatibilitas
  • Ajarkan perbedaan antara Base64 (terstandarisasi) dan Base62 (bervariasi)
  • Tunjukkan mengapa validasi ketat dan alfabet eksplisit penting

Pemeriksaan kewarasan CI untuk artefak kecil

  • Validasi bahwa Base62 yang dihasilkan didekode kembali ke byte dengan sukses (pemeriksaan perjalanan bolak-balik)
  • Terapkan pilihan alfabet tunggal di seluruh repositori agar build tetap dapat direproduksi
  • Normalisasikan pembungkus/pemisah agar diff tetap stabil

Kurangi ambiguitas dan risiko dekode

  • Aktifkan validasi Ketat untuk menolak karakter tak terduga lebih awal
  • Hindari menyalin rahasia ke alat peramban; gunakan skrip lokal untuk data sensitif
  • Dokumentasikan dan kunci pilihan alfabet untuk mencegah korupsi lintas sistem yang tidak disengaja

❓ Frequently Asked Questions

Apakah ada API publik untuk alat ini?

Tidak. Ini adalah alat dalam peramban dan tidak mengekspos titik akhir API publik.

Apakah pemrosesan bersifat lokal atau jarak jauh?

Pemrosesan 100% sisi klien (tidak ada unggahan server). Semua encoding/decoding terjadi secara lokal di peramban Anda.

Bisakah saya mengencode rahasia atau file sensitif dengan aman di sini?

Hindari. Meskipun dengan pemrosesan lokal, rahasia dapat bocor melalui riwayat clipboard, tangkapan layar, ekstensi, atau mesin bersama. Untuk materi sensitif, lebih baik gunakan alat lokal/offline.

Mengapa decoding gagal dengan kesalahan validasi/parse?

Kebanyakan kegagalan berasal dari ketidakcocokan alfabet, awalan tak terduga (seperti data:*;base62,), spasi/baris baru, atau karakter non-Base62. Pilih "Alfabet" yang benar, aktifkan "Terima awalan data:*;base62," jika berlaku, dan gunakan "Validasi ketat" untuk menemukan karakter yang tidak valid.

Mengapa file terdekode saya rusak meskipun decoding berhasil?

Varian Base62 berbeda berdasarkan urutan alfabet. Jika produsen menggunakan alfabet yang berbeda (misalnya 0-9a-zA-Z alih-alih 0-9A-Za-z), decoding mungkin menghasilkan byte tetapi bukan konten aslinya. Verifikasi alfabet produsen dan pertahankan identik di setiap encoder/decoder.

Pro Tips

Best Practice

Anggap Base62 sebagai berbasis varian: selalu catat alfabet (0-9A-Za-z vs 0-9a-zA-Z dll.) bersama dengan muatan.

Best Practice

Untuk keluaran yang stabil, pertahankan pembungkusan dinonaktifkan (wrapLineLength=0) kecuali Anda memiliki lapisan transport yang memerlukan baris dengan lebar tetap.

Best Practice

Aktifkan validasi Ketat saat men-debug: ini menangkap spasi liar, karakter yang salah, dan ketidakcocokan alfabet lebih awal.

CI Tip

Dalam CI, tambahkan tes perjalanan pulang-pergi (encode β†’ decode) pada fixture perwakilan dan kunci versi pustaka Base62 Anda.

Additional Resources

Other Tools