İçeriğe geç

Base32, Base58 ve Ascii85 Dönüştürücü

Metni ya da ham baytları Base32, Base58, Ascii85 ya da Z85 olarak kodlayın, ya da bunların herhangi birini geri çözün; her kodlamanın kendi alfabesi ve dolgu kurallarıyla. İşlem tablosu ilk baytların nasıl karakterlere dönüştüğünü gösterir. Base64, Metin Kodlayıcı ve Çözücü tarafından kapsanır. Tarayıcınızda çalışır; hiçbir şey yüklenmez.

Mod

A–Z harfleri ve 2–7 rakamları, karakter başına beş bit; karakter sayısı sekizin katına tamamlanacak şekilde = ile doldurulur. Çözerken harf büyüklüğü önemli değildir.

Nasıl hesaplandı

Baytlar bit olarak yazılır ve beşerli gruplara bölünür. Her grup 0 ile 31 arasında bir sayıdır ve bir karakter seçer.

BitlerDeğerKarakter
010019J
000011B
1001018S
1011022W
1100024Y
11011273
000113D
0111115P
001015F
1000016Q
1000016Q
001015F
0111014O
11011273
11011273
1001018S

İlk 16 satır gösteriliyor.

Base Kodlama Dönüştürücü Nasıl Kullanılır

  1. 1. Bir kodlama seçin. Genişletilmiş onaltılık alfabeli Base32, Bitcoin alfabeli Base58, Adobe'nin kullandığı Ascii85 ya da Z85. Menünün altındaki not seçtiğiniz kodlamayı açıklar.
  2. 2. Verinin ne olduğunu belirtin. Metin UTF-8 baytları olarak okunur. Onaltılık baytlar rastgele ikili veriyi — örneğin bir anahtarı — 86 4f d2 6f gibi çiftler hâlinde yazarak kodlamanıza izin verir.
  3. 3. Kodlayın ya da çözün. Kodlama, kodlamanın alfabesinden oluşan metin verir. Çözme, onu tekrar baytlara çevirir ve metin ya da onaltılık olarak gösterir. Girdideki boşluklar ve satır sonları yok sayılır.
  4. 4. Seçenekleri kontrol edin. Base32, = dolgusuyla ya da dolgusuz yazılabilir. Ascii85, <~ ve ~> ile sarılabilir ve dört sıfır baytı z olarak yazabilir.

Bu Kodlamalar Ne İşe Yarar

Bunların hiçbiri şifreleme değildir. Her biri, yazdırılamayabilecek baytları bir e-postaya, bir URL'ye, bir QR koda ya da bir yapılandırma dosyasına yapıştırılabilecek metne dönüştürür ve her biri kodlamanın adını bilen herkes tarafından geri çevrilebilir. Kullandıkları alfabede ve metnin veriden ne kadar uzun olduğunda ayrılırlar.

KodlamaKarakterBayta göre uzunlukHello, World olur
Base32 (RFC 4648)328 ÷ 5 kat uzunJBSWY3DPFQQFO33SNRSA====
Base32 genişletilmiş onaltılık328 ÷ 5 kat uzun91IMOR3F5GG5ERRIDHI0====
Base58 (Bitcoin)58yaklaşık 1,37 kat2NEpo7TZsLBYdvo5V
Ascii85 (Adobe)855 ÷ 4 kat uzun<~87cURD_*#4DfTZ)~>
Z85 (ZeroMQ)855 ÷ 4 kat uzunnm=QNz.92jz/PV8

Base32

Base32, baytları 5 bitlik gruplara böler ve her birini 32 karakterden biriyle yazar: A–Z ve 2–7. Yalnızca 2 ile 7 arasındaki rakamları kullanır; O, I ve B'ye benzeyen 0, 1 ve 8'i dışarıda bırakır ve harf büyüklüğünü yok sayar; böylece insanlar sesli okuyabilir ya da yazabilir. = dolgu işareti uzunluğu sekizin katına tamamlar. RFC 4648 foobar → MZXW6YTBOI====== gibi test vektörleri verir. Kimlik doğrulayıcı uygulamalarının gizli anahtarları ve Tor onion adresleri Base32'dir.

Base58

Base58 girdinin tamamını tek bir büyük sayı olarak alır ve onu 58 tabanında yazar; 0, O, I ve l ile + ve / simgelerini dışarıda bırakır. Böylece sonuç çift tıklamayla kopyalanabilir ve yanlış okunması zordur. Başta gelen her sıfır bayt ilk karakter 1 ile yazılır. Bitcoin alfabesi birçok Base58 alfabesinden yalnızca biridir; Ripple ve Flickr'ın kullandığı alfabeler karakterleri farklı sıraya koyar, bu yüzden verinizin hangisini kullandığını kontrol edin. Bitcoin adresleri üstüne bir sağlama toplamı ve sürüm baytı ekler; buna Base58Check denir ve bu araç bunu hesaplamaz.

Ascii85 ve Z85

İkisi de dört baytı 32 bitlik bir sayı olarak okur ve onu 85 tabanında beş basamak olarak yazar; bu yüzden veriden yalnızca yüzde 25 daha uzundurlar. PostScript ve PDF'de kullanılan Adobe Ascii85, ! ile u arasındaki karakterleri kullanır, dört sıfır baytı z olarak kısaltır ve veriyi genellikle <~ ve ~> ile sarar. Son grup bir ile üç bayt arasındaysa baytlarından bir fazla karakter verir. ZeroMQ'nun RFC 32'sinde tanımlanan Z85, tırnak işaretlerinden ve ters eğik çizgilerden kaçınmak için seçilmiş farklı bir 85 karakterli alfabe kullanır; z kısaltması ya da kısa bir son grubu yoktur, bu yüzden girdisi dört baytın katı olmalıdır. Belirtimdeki örnek sekiz bayttır: 86 4f d2 6f b5 59 f7 5b, bu da HelloWorld olarak kodlanır. Git'in kullandığı RFC 1924'teki gibi başka 85 tabanlı alfabeler de vardır, bu yüzden alfabeyi kaynağıyla eşleştirin.

Sık sorulan sorular

Base32 ya da Base58 şifreleme midir?
Hayır. Bunlar kodlamadır: alfabe ve kurallar herkese açık olduğu için herkes tersine çevirebilir. Veriyi yazdırılabilir ve kopyalanması daha kolay hâle getirirler, gizli değil.
Base58 neden bazı karakterleri dışarıda bırakır?
Benzerliklerden ve simgelerden kaçınmak için. Birçok yazı tipinde karıştırılabilen 0 (sıfır), O (büyük harf O), I (büyük harf I) ve l (küçük harf L) ile çift tıklamayı bozan + ve / simgelerini çıkarır. Geriye 58 karakter kalır.
Base32 dizgesini nasıl çözerim?
Base32'yi seçin, Çöz moduna geçin ve dizgeyi yapıştırın. Harf büyüklüğü önemli değildir ve sondaki = işaretleri isteğe bağlıdır. Karakterleri adlandıran bir hata alırsanız dizge muhtemelen genişletilmiş onaltılık Base32, Base64 ya da başka bir kodlamadır.
Ascii85 ile Z85 arasındaki fark nedir?
İkisi de dört bayt için beş karakter kullanır, ancak alfabeleri farklıdır. Ascii85, ! ile u arasındaki karakterleri kullanır, sıfırlar için bir z kısaltması vardır ve etrafında <~ ve ~> bulunabilir. Z85 ise kaynak koduna güvenli bir alfabe kullanır ve hiçbir kısaltma yoktur.
Neden Z85 dört baytın katı gerektiğini söylüyor?
Z85 belirtimi dolgu tanımlamaz. Verisi tam sayıda 4 baytlık gruptan oluşmalı, metni de beşin katı karakter olmalıdır. Baytları kendiniz ekleyin ya da kısa bir son grubu kaldıran Ascii85'i kullanın.
Base64 dizgesini nasıl kodlarım?
Bu sayfa Base64 yapmaz. Metin Kodlayıcı ve Çözücü metni Base64'e, URL'lere ve HTML varlıklarına çevirir ve geri çevirir; XOR Cipher sayfası da onaltılık baytları Base64 olarak gösterebilir.

İlgili araçlar

Kodlar ve şifreler kategorisinde daha fazlası