Konverter Text ke Base58
Enkode teks ke Base58 atau dekode Base58 kembali menjadi teks menggunakan alfabet Bitcoin, yang tidak menyertakan 0, O, I, dan l agar tidak membingungkan. Alat ini mengonversi masukan Anda menjadi byte UTF-8, mempertahankan byte nol di awal sebagai karakter 1 di awal, dan memeriksa setiap karakter saat decoding. Alat ini cocok bagi developer yang bekerja dengan pengenal Bitcoin, Solana, dan IPFS. Masukan dibatasi hingga 10 KiB karena ukuran Base58 bertambah secara kuadratik.
Pertanyaan yang sering diajukan
Apa itu Base58?
Base58 adalah encoding biner-ke-teks yang memperlakukan data sebagai satu angka besar lalu menuliskannya dalam basis 58. Encoding ini diperkenalkan bersama Bitcoin untuk menghasilkan string ringkas yang mudah dibaca dan disalin. Alfabetnya menggunakan angka dan huruf, tetapi tidak menyertakan 0, O, I, dan l.
Alfabet apa yang digunakan alat ini?
Alat ini menggunakan alfabet Bitcoin 123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz, yang juga digunakan Solana, IPFS, dan sebagian besar pustaka. Ripple dan Flickr menggunakan urutan berbeda dan tidak didukung.
Bisakah saya mencoba contoh yang sudah diketahui?
Teks hello world dienkode menjadi StV1DL6CwTryKyV dan abc dienkode menjadi ZiCa. Masukan kosong menghasilkan hasil kosong. Mendekode string tersebut akan mengembalikan teks asli.
Apakah ini Base58Check?
Tidak. Base58Check, yang digunakan untuk alamat Bitcoin, menambahkan byte versi dan checksum SHA-256 ganda sepanjang empat byte sebelum encoding. Alat ini mengenkode byte teks mentah tanpa checksum.
Mengapa batasnya 10 KiB?
Konversi Base58 berulang kali membagi satu angka besar, sehingga beban kerjanya bertambah seiring kuadrat panjang masukan. Base58 ditujukan untuk nilai pendek seperti kunci dan alamat, dan 10,240 byte jauh lebih besar daripada yang dibutuhkan.
Bagaimana byte nol di awal ditangani?
Setiap byte nol di awal menjadi karakter 1 di awal, dan setiap 1 di awal saat decoding kembali menjadi byte nol. Teks jarang dimulai dengan byte nol, tetapi cara ini menjaga encoding tetap akurat.
Mengapa decoding gagal dengan pesan tentang UTF-8?
Banyak string Base58, seperti kunci publik atau alamat, berisi byte acak alih-alih teks. Alat ini hanya menampilkan data hasil decode yang merupakan teks UTF-8 valid, sehingga melaporkan masukan semacam itu alih-alih mencetak karakter yang tidak dapat dibaca.
Mengapa masukan saya ditolak sebagai tidak valid?
Karakter di luar alfabet, termasuk 0, O, I, l, spasi di tengah, dan tanda baca, bukan Base58 yang valid. Spasi di awal dan akhir dihapus sebelum decoding.
Apakah Base58 termasuk enkripsi?
Tidak. Base58 adalah encoding yang dapat dibalik dan tidak menggunakan kunci, sehingga siapa pun dapat mendekodenya. Gunakan untuk memudahkan pembacaan, bukan untuk menjaga kerahasiaan.
Apakah Base58 lebih besar daripada Base64?
Sedikit. Base58 memerlukan sekitar 1.37 karakter per byte, sedangkan Base64 memerlukan sekitar 1.33. Biaya kecil ini menghasilkan alfabet tanpa karakter yang mirip atau tanda baca.