Encoder dan Decoder Base85
Base85 memadatkan empat byte menjadi lima karakter ASCII - lebih padat daripada rasio 3-ke-4 milik Base64 - dengan memakai alfabet 85 karakter alih-alih 64. Varian Ascii85 dari Adobe ada di dalam setiap file PostScript dan PDF; varian Z85 (ZeroMQ) yang lebih baru menghindari karakter yang merusak string C dan XML. Tool ini meng-encode dan mendecode keduanya, dengan delimiter opsional.
Cara mengonversi Base85
-
1
Pilih varian
Ascii85 untuk aset PDF/PostScript; Z85 untuk kode sumber dan protokol jaringan.
-
2
Tempel teks atau upload file
Arah encode menerima byte mentah; arah decode menerima string Base85.
-
3
Encoder memecah per 4 byte
Setiap blok 4-byte menjadi string Base85 5-karakter. Blok terakhir diberi padding dan dipotong.
-
4
Salin hasil
Ascii85 opsional dibungkus delimiter `<~` dan `~>`; Z85 tanpa delimiter.
Perbandingan overhead ukuran
| Pengodean | Karakter per 4 byte | Overhead vs biner |
|---|---|---|
| Hex | 8 | +100% |
| Base64 | 5.33 (dibulatkan ke atas menjadi 8 dengan padding) | +37% |
| Base85 | 5 | +25% |
| Biner mentah | 4 | 0 |
Jadi 1 MB biner menjadi 1.25 MB dalam Base85, 1.33 MB dalam Base64, 2 MB dalam hex.
Alfabet Ascii85 vs Z85
Ascii85 (RFC 1924 / Adobe): karakter ! hingga u (33-117 dalam ASCII), plus z sebagai shortcut untuk 4 byte nol. Digunakan dalam stream PostScript dan PDF, dibungkus sebagai <~...~>.
Z85 (ZeroMQ): subset yang menghindari karakter quote dan escape:
0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ.-:+=^!/*?&<>()[]{}@%$#
Aman disematkan dalam JSON, XML, string C, dan kode sumber tanpa escaping.
Cara matematikanya bekerja
Setiap 4 byte dibaca sebagai integer 32-bit big-endian N. Lima karakter output adalah digit N dalam basis 85, dimulai dari digit paling signifikan. 85^5 = 4 437 053 125 lebih besar dari 2^32, sehingga 4 byte selalu muat dalam 5 karakter.
Kapan Ascii85 penting
Buka PDF apa pun di editor teks dan cari ASCII85Decode - Adobe memakainya sebagai filter untuk gambar dan font tertanam yang perlu bertahan dalam transmisi 7-bit (sistem lama bergaya fax). Z85 banyak digunakan dalam kunci autentikasi ZeroMQ CURVE.
Kasus khusus
- Blok 4-byte nol semua - Ascii85 meng-encode-nya sebagai karakter tunggal
zalih-alih!!!!!. - Blok 4-byte spasi semua - Beberapa varian memakai
yuntuk empat spasi, yang lain tidak. - Blok parsial terakhir - Diberi padding byte nol, dan jumlah karakter output yang sesuai dipotong di akhir.
Pertanyaan yang Sering Diajukan
Output lebih kecil, ya. Kompatibel universal, tidak. Base85 berisi karakter seperti <, >, &, " (dalam Ascii85) yang perlu escaping di XML, JSON, dan URL. Z85 menghindari ini tetapi sebagian besar tooling berbicara Base64 secara native.
Ascii85 jika Anda bekerja dengan file PostScript atau PDF. Z85 untuk kode sumber, file konfigurasi, dan protokol jaringan. Pengodean IPv6 RFC 1924 adalah penetapan berbeda dari 85 karakter yang sama dan jarang dipakai dalam praktik.
Tidak. Keduanya memakai alfabet berbeda. Mendecode Ascii85 dengan tabel Z85 akan menghasilkan sampah. Pilih satu sebelum encoding dan tetap gunakan itu.
Untuk Adobe Ascii85 dalam stream PDF atau PostScript, ya - delimiter menandai bagian yang dikodekan. Untuk penggunaan mandiri dan semua output Z85, delimiter tidak diperlukan.
Alat Terkait
Enkripsi / Dekripsi AES
Enkripsi dan dekripsi teks berisiko rendah dengan cipher AES OpenSSL. Passphrase di-hash dengan SHA-256 dan output Base64 berisi IV plus teks terenkripsi.
Pengode sandi A1Z26
Kodekan teks dengan sandi A1Z26 (A=1, B=2, ... Z=26) atau baca kembali urutan angka menjadi huruf, dengan pemisah yang bisa disesuaikan.
Encoder Sandi Atbash
Encode atau decode teks dengan sandi Atbash, substitusi Ibrani yang memetakan A-Z menjadi Z-A. Operasi yang sama mengenkripsi dan mendekripsi.
Encoder dan Decoder Base32
Encode dan decode string Base32 memakai alfabet RFC 4648. Berguna untuk secret TOTP, token case-insensitive, dan identifier yang diketik manusia.
Generator Hash bcrypt
Buat hash bcrypt atau verifikasi password plaintext terhadap hash bcrypt yang sudah ada. Mode generate dan verify berdampingan dalam satu tool.
Generator bcrypt
Buat hash bcrypt dari password plaintext. Faktor cost dapat diatur dari 4 sampai 14, kompatibel dengan Laravel, Django, Node, dan PHP.