Nasıl kullanılır
- Base64 dizesini girdi alanına yapıştırın. Kaynak olarak Base64, hedef olarak Onaltılık önceden seçilidir.
- Onaltılık çıktıyı okuyun: her bayt iki onaltılık basamakla gösterilir.
- Farklı bir biçim gerekiyorsa Base58 veya Base32 gibi başka bir hedef kodlama seçin ya da hex değerini yeniden Base64'e çevirmek için "Girdi ve çıktının yerini değiştir" düğmesine basın.
- Sonucu kopyalayın.
Aynı baytları yazmanın iki yolu
Hex ve Base64, ikili veriyi metin olarak yazmanın iki farklı yoludur. Hex her bayt için iki karakter kullanır; bu da tek tek bayt değerlerini okumayı ve karşılaştırmayı kolaylaştırır. Base64 ise 3 baytı 4 karaktere sığdırır ve yaklaşık üçte bir daha kısadır. İkisi arasında dönüştürme yapmak yalnızca gösterimi değiştirir, verinin kendisine asla dokunmaz:
| Değer | Bayt | Hex uzunluğu | Base64 uzunluğu |
|---|---|---|---|
| MD5 hash değeri | 16 | 32 | 24 |
| SHA-1 hash değeri | 20 | 40 | 28 |
| SHA-256 hash değeri, Ed25519 açık anahtarı | 32 | 64 | 44 |
| SHA-384 hash değeri | 48 | 96 | 64 |
| SHA-512 hash değeri, Ed25519 imzası | 64 | 128 | 88 |
Hex editörleri, paket çözümleyiciler ve hata ayıklayıcılar da veriyi hex olarak gösterir. Base64'ü hex'e dönüştürerek veriyi bu araçlarda gördüklerinizle bayt bayt karşılaştırabilirsiniz.
Base64'ten hex'e ne zaman ihtiyaç duyulur
- Hash değerlerini karşılaştırma.
sha256sumgibi araçlar hex çıktı verirken Subresource Integrity öznitelikleri, Content Security Policy hash'leri veContent-MD5gibi sağlama toplamı başlıkları Base64 kullanır. Karşılaştırmak için taraflardan birini dönüştürün. - SSH parmak izleri.
ssh-keygen -l,SHA256:parmak izlerini dolgusuz Base64 olarak yazdırır; SSHFP DNS kayıtları ise aynı SHA-256 özetini hex olarak saklar. Hex biçimini elde etmek içinSHA256:ifadesinden sonraki kısmı yapıştırın. - Anahtarlar, IV'ler ve imzalar. Kriptografik kodda hata ayıklarken baytları hex olarak görmek uzunluğu kontrol etmeyi, değerleri karşılaştırmayı ve eksik ya da fazla bir baytı fark etmeyi kolaylaştırır.
Dönüştürücünün kabul ettiği girdiler
Base64 girdisindeki boşluklar ve satır sonları yok sayılır, URL güvenli - ve _ karakterleri kabul edilir ve = dolgusu isteğe bağlıdır. Böylece JSON'dan, JWT'lerden veya terminal çıktısından kopyalanan değerleri olduğu gibi yapıştırabilirsiniz. Dönüştürme, çözülmüş baytlar üzerinde yapılır: sonuç, Base64 karakterlerinin değil verinin kendisinin hex karşılığıdır. Bir metnin hex kodlarını görmek için bunun yerine Base16 aracını kullanın.
# Kabuk
printf '%s' "$B64" | base64 --decode | xxd -p
# Python
base64.b64decode(s).hex()
// Node.js
Buffer.from(s, 'base64').toString('hex')
Sıkça sorulan sorular
Bu araç Base64 metnini mi, yoksa temsil ettiği baytları mı dönüştürür?
Hex çıktısı neden Base64 girdisinden daha uzun?
Hex bayt başına 2 karakter gerektirirken Base64 yaklaşık 1,33 karakter gerektirir. 32 baytlık bir SHA-256 özeti Base64'te 44, hex'te ise 64 karakterdir.
Büyük harfli hex veya iki nokta ayırıcıları nasıl elde ederim?
Bir JWT'deki veya JSON Web Key'deki Base64URL değerlerini dönüştürebilir miyim?
Evet. URL güvenli karakterler ve eksik dolgu otomatik olarak işlenir; bu nedenle anahtar parametrelerini ve imzaları hiçbir değişiklik yapmadan yapıştırabilirsiniz.