Encoder dan Decoder z-base-32

Ubah teks, byte hex, atau file ke z-base-32 dan sebaliknya. Alfabet huruf kecilnya tidak memakai karakter yang mudah tertukar, dan keluarannya tidak memerlukan padding.

Berjalan sepenuhnya di browser Anda. Tidak ada yang diunggah.

Cara menggunakan

  1. Pilih Enkode untuk mengubah teks menjadi z-base-32, atau Dekode untuk mengubah z-base-32 kembali menjadi teks.
  2. Biarkan varian z-base-32 tetap terpilih dan pastikan Padding dimatikan, karena format ini tidak memakainya.
  3. Ketik atau tempel masukan Anda, atau klik Buka file. Hasilnya diperbarui saat Anda mengetik.
  4. Salin hasilnya atau unduh sebagai file.

Apa itu z-base-32?

z-base-32 adalah pengodean Base32 yang dirancang oleh Zooko Wilcox-O'Hearn agar lebih mudah dibaca, ditulis, dan diucapkan manusia. Mekanismenya sama dengan Base32 RFC 4648: setiap karakter membawa 5 bit dan 5 byte menjadi 8 karakter. Yang membedakannya adalah alfabetnya:

ybndrfg8ejkmcpqxot1uwisza345h769

Alfabet ini seluruhnya huruf kecil dan tidak memakai 0, 2, l, dan v, yang mudah tertukar dengan o, z, 1, dan u. Urutan karakternya juga diubah, sehingga keluaran z-base-32 sama sekali tidak mirip dengan Base32 standar dari byte yang sama dan tidak dapat dibaca oleh decoder RFC 4648.

Tidak ada padding: panjang data ditentukan dari panjang string. Spesifikasinya juga dapat mengenkode deretan bit yang bukan byte utuh jika kedua pihak menyepakati panjangnya; alat ini selalu bekerja dengan byte utuh.

Penggunaan z-base-32

  • OpenPGP Web Key Directory (WKD). Untuk menerbitkan kunci di URL well-known, bagian lokal alamat email diubah menjadi huruf kecil dan di-hash dengan SHA-1, lalu hash 20 byte tersebut dienkode dengan z-base-32 menjadi nama file sepanjang 32 karakter.
  • ZRTP. String autentikasi pendek yang dibacakan oleh dua penelepon untuk mendeteksi serangan man-in-the-middle dapat ditampilkan sebagai Base32 dengan alfabet z-base-32 (RFC 6189).
  • Lightning Network. Perangkat lunak node seperti lnd dan Core Lightning mengembalikan pesan bertanda tangan sebagai string z-base-32.

Untuk format ramah manusia lainnya, bandingkan Crockford Base32, yang mempertahankan urutan digit dan memaafkan salah ketik, dengan Base58, yang lebih pendek tetapi peka huruf besar-kecil.

Spesifikasi

Alfabetybndrfg8ejkmcpqxot1uwisza345h769
Ukuran keluaran8 karakter per 5 byte (160%)
PaddingTidak ada
Standarz-base-32 (Zooko Wilcox-O'Hearn)
Peka huruf besar-kecilTidak

Contoh

Masukan (UTF-8)Keluaran
Hello, World!jb1sa5dxfoofq551pt1nn
Base64.isejozg3jsgozg1ha
你好h164b3pfzw

Pertanyaan yang sering diajukan

Apakah z-base-32 sama dengan Base32?

Tidak. z-base-32 memakai pengelompokan 5 bit yang sama dengan Base32 RFC 4648, tetapi dengan alfabet berbeda yang urutannya diubah dan tanpa padding. String z-base-32 harus didekode dengan decoder z-base-32.

Apakah z-base-32 peka huruf besar-kecil?

Alfabetnya huruf kecil dan keluarannya selalu huruf kecil. Decoder ini juga menerima masukan huruf besar dan mengubahnya menjadi huruf kecil sebelum mendekode.

Bagaimana jika string saya diakhiri tanda =?

z-base-32 tidak memakai padding, tetapi jika sebuah string diakhiri tanda =, decoder cukup mengabaikannya.

Bagaimana cara mendapatkan hash WKD?
WKD memerlukan hash SHA-1 dari bagian lokal alamat yang sudah diubah menjadi huruf kecil, dan alat ini tidak menghitungnya. Hitung hash di tempat lain, tempel di sini sebagai masukan hex, lalu enkode. GnuPG juga dapat langsung mencetak hash WKD dengan opsi --with-wkd-hash.