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. Alat ini mengimplementasikan varian Ascii85 dari Adobe, varian yang ada di dalam file PostScript dan PDF. Encoder selalu membungkus hasilnya dengan delimiter <~ dan ~>; decoder menerima input dengan atau tanpa keduanya.
Cara mengonversi Base85 (Ascii85)
-
1
Pilih encode atau decode
Encode mengubah byte mentah menjadi Ascii85; decode mengubah string Ascii85 kembali menjadi byte.
-
2
Tempel teks Anda
Tempel byte yang ingin di-encode atau string Ascii85 yang ingin di-decode ke kotak input.
-
3
Encoder memecah per 4 byte
Setiap blok 4 byte menjadi string Base85 5 karakter. Blok terakhir diberi padding lalu dipotong.
-
4
Salin hasil
Hasil Ascii85 dibungkus delimiter `<~` dan `~>`. Tempel lagi untuk men-decode-nya; delimiter dihapus otomatis.
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, dan 2 MB dalam hex.
Alfabet Ascii85
Ascii85 (Adobe): karakter ! hingga u (33-117 dalam ASCII), plus z sebagai pintasan untuk 4 byte nol. Ini pengodean standar dalam stream PostScript dan PDF, dibungkus sebagai <~...~>.
Z85 (ZeroMQ) dan alfabet RFC 1924 untuk IPv6 adalah penempatan lain dari gagasan 85 karakter yang sama. Alat ini tidak mengimplementasikannya, jadi string yang di-encode dengan varian tersebut akan salah didecode di sini.
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 harus bertahan dalam transmisi 7-bit (sistem lama bergaya faks). Pengodean yang sama muncul di banyak file PostScript dan dalam transport biner yang aman untuk email.
Kasus khusus
- Blok 4 byte nol semua: Ascii85 meng-encode-nya sebagai satu karakter
zalih-alih!!!!!. - Blok parsial terakhir: diberi padding byte nol, lalu jumlah karakter output yang bersesuaian dipotong di akhir.
Pertanyaan yang Sering Diajukan
Output lebih kecil, ya. Kompatibel universal, tidak. Ascii85 berisi karakter seperti <, >, &, " yang perlu escaping di XML, JSON, dan URL. Sebagian besar tooling berbicara Base64 secara native.
Di dalam stream PostScript dan PDF, tempat wilayah ter-encode ditandai dengan <~ dan ~>. Penampil dan editor PDF menangani pengodean ini otomatis.
Tidak. Alat ini hanya mengimplementasikan Adobe Ascii85. Z85 (ZeroMQ) dan alfabet RFC 1924 untuk IPv6 menempatkan 85 karakter secara berbeda, jadi string yang di-encode dengan varian tersebut akan salah didecode di sini.
Keduanya menandai wilayah ter-encode sesuai konvensi Ascii85. Encoder selalu menambahkannya dan decoder menghapusnya otomatis jika ada. Anda juga bisa menempel string tanpa keduanya.
Alat Terkait
Encoder File Base64
Encode file apa pun (PDF, ZIP, gambar, file program) menjadi teks Base64 untuk disematkan dalam JSON, email, YAML, atau data URI. Berjalan lokal, tanpa unggah.
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 dan Decoder Base58
Encode teks UTF-8 atau byte heksadesimal dan decode Base58 secara aman dengan alfabet Bitcoin, Ripple, atau Flickr.
Encoder Sandi Caesar
Enkripsi dan dekripsi teks menggunakan sandi Caesar. Pergeseran apa pun 1-25, mendukung ROT13 sebagai kasus khusus, mempertahankan tanda baca dan kapitalisasi.
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.
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.
Alat ini tersedia dalam bahasa lain
- Base85 Kodlayıcı ve Çözücü [TR]
- Codificador y Decodificador Base85 [ES]
- مشفر ومفكك Base85 [AR]
- Encodeur et décodeur Base85 [FR]
- Base85 encoder en decoder [NL]
- Base85 인코더 및 디코더 [KO]
- Base85 Encoder and Decoder [EN]
- Bộ mã hóa và giải mã Base85 [VI]
- Base85 编码器和解码器 [ZH]
- Base85エンコーダー・デコーダー [JA]
- ตัวเข้ารหัสและถอดรหัส Base85 [TH]
- Codificador e Decodificador Base85 [PT]
- Base85-Encoder/Decoder [DE]
- Base85-kodare och avkodare [SV]
- Koder i dekoder Base85 [PL]
- Codificatore e Decodificatore Base85 [IT]
- Кодировщик и декодировщик Base85 [RU]