Base32: Perbedaan antara revisi

Konten dihapus Konten ditambahkan
Mayat2715 (bicara | kontrib)
k bahasa
Tag: VisualEditor Suntingan perangkat seluler Suntingan peramban seluler
k Bot: Perubahan kosmetika
Baris 1:
 
 
'''Base32''' adalah salah satu dari beberapa penyandian transfer base 32. Base32 mengeset 32-karakter yang terdiri dari huruf A - Z dan angka 2 - 7
 
Baris 8 ⟶ 6:
Base32 adalah notasi untuk penyadian data byte sewenang - wenang menggunakan seperangkat simbol terbatas yang dapat digunakan oleh manusia dan diproses oleh komputer.
 
Base32 terdiri dari simbol 32 karakter yang berbeda, serta algoritma untuk penyandian urutan sewenang - wenang dari byte 8-bit ke dalam abjad Base32. Karena lebih dari satu simbol Base32 5-bit diperlukan untuk mewakili setiap byte input 8-bit, simbol Base32 juga menentukan persyaratan panjang string Base32 yang diizinkan (yang harus merupakan kelipatan 40 bit). Sistem Base64 yang terkait erat, sebaliknya, menggunakan satu set 64 simbol.
 
Implementasi Base32 tersedia di C/C++,<ref>http://sourceforge.net/projects/cyoencode/</ref> Perl,<ref>{{cite web|url=https://metacpan.org/release/MIME-Base32|title=MIME-Base32 - Base32 encoder and decoder|website=MetaCPAN|accessdate=2018-07-29}}</ref> Java,<ref>https://commons.apache.org/proper/commons-codec/apidocs/org/apache/commons/codec/binary/Base32.html</ref>, JavaScript<ref>https://www.npmjs.com/package/base32</ref> Python<ref>https://docs.python.org/3/library/base64.html</ref>, Go<ref>https://golang.org/pkg/encoding/base32</ref> dan Ruby<ref>https://rubygems.org/gems/base32</ref>.
Baris 17 ⟶ 15:
# Semua set karakter yang dihasilkan adalah satu case, yang seringkali bermanfaat ketika menggunakan case-insensitive filesystem, bahasa lisan, atau memori manusia.
# Hasil bisa digunakan sebagai nama file karena tidak mengandung simbol '/', yang merupakan Unix path separator.
# Hurufnya terpilih untuk menghindari simbol yang terlihat sama, sehingga string dapat ditranskripsi secara akurat dengan tangan. (Contohnya, simbol <nowiki>RFC 4648</nowiki> yang diatur untuk menghilangkan nomor 1, 8, dan 0, karena mereka bisa bercampur aduk dengan huruf 'I', 'B', dan 'O'.)
# Hasil tidak termasuk padding dapat dimasukkan ke dalam URL tanpa menyandikan karakter apapun.
 
Baris 25 ⟶ 23:
 
== Kekurangan ==
Representasi Base32 membutuhkan sekitar 20% lebih banyak ruang daripada Base64. Juga, karena menyandikan 5 byte ke 8 karakter (daripada 3 byte ke 4 karakter), padding ke batas 8 karakter adalah beban yang lebih besar pada pesan pendek.
{| class="wikitable"
|+Panjang notasi Base64 and Base32 sebagai persentasi dari data biner
Baris 42 ⟶ 40:
 
== <nowiki>RFC 4648</nowiki> Base32 alphabet ==
Huruf Base32 yang paling banyak digunakan didefinisikan dalam . Itu menggunakan huruf A–Z, diikuti dengan 2–7. 0 dan 1 dilewati karena kesamaannya dengan huruf O dan I (dengan demikian "2" sebenarnya memiliki nilai desimal 26).
 
Dalam beberapa keadaan, padding tidak diperlukan atau digunakan (padding dapat disimpulkan dari panjang modulo string 8). <nowiki>RFC 4648</nowiki> menyatakan bahwa padding harus digunakan kecuali spesifikasi standar yang mengacu pada RFC secara eksplisit menyatakan sebaliknya. Mengecualikan padding berguna saat menggunakan data yang disandikan base32 di token URL atau nama file di mana karakter padding bisa menimbulkan masalah.
Baris 142 ⟶ 140:
 
=== z-base-32 ===
z-base-32<ref>{{cite web|url=http://philzimmermann.com/docs/human-oriented-base-32-encoding.txt|title=Human-oriented base-32 encoding|last=O'Whielacronx|first=Zooko|authorlink=Zooko Wilcox-O'Hearn|date=2009}}</ref> adalah pengkodean Base32 yang dirancang agar lebih mudah digunakan manusia dan lebih ringkas. Ini termasuk 1, 8 dan 9 tetapi tidak termasuk l, v dan 2. Ini juga memungkinkan huruf sehingga karakter yang lebih mudah adalah yang lebih sering muncul. Ini kompak mengkodekan bitstrings yang panjangnya dalam bit bukan kelipatan 8, dan menghilangkan karakter padding trailing.z-base-32 digunakan dalam proyek open source Mnet, dan saat ini digunakan dalam protokol Phil Zimmermann ZRTP, dan dalam proyek open source Tahoe-LAFS.
{| class="wikitable"
|+Huruf z-base-32