İçeriğe geç

Base64 kodlayıcı ve çözücü

Metni Base64'e kodlayın veya geri çözün; ç, ğ, ı, ö, ş, ü dahil tam UTF-8 desteğiyle. Dosyayı data URI'ye dönüştürün.

Ücretsiz, kayıt gerektirmez. Her şey tarayıcınızda çalışır. Verileriniz cihazınızdan çıkmaz.

Nasıl kullanılır

  1. 1Kodlama veya çözmeyi seçin.
  2. 2Metni girin.
  3. 3Sonucu kopyalayın.
  4. 4Dosya için dosyayı seçip data URI'yi kopyalayın.

Araç hakkında

Base64, ikili verileri 64 güvenli karakterden oluşan metne dönüştürür. Görselleri HTML ve CSS'e gömmek, JSON API'leriyle dosya göndermek, e-posta ekleri ve kimlik doğrulama için kullanılır. Base64 şifreleme değildir.

Base64 nedir ve ne işe yarar

Base64, herhangi bir bayt dizisini ASCII tablosundaki 64 karakterle (büyük ve küçük harfler, rakamlar, artı ve eğik çizgi) temsil etmenin bir yoludur. Mantık basittir: verilerin geçtiği birçok sistem (e-posta protokolleri, JSON, HTML öznitelikleri, URL parametreleri) ikili baytları güvenli şekilde iletmek için tasarlanmamıştır, bu yüzden baytlar önce düz metne "paketlenir".

Bu yüzden Base64 ile her yerde karşılaşırsınız: data: URI'si aracılığıyla doğrudan CSS'e gömülü görsel, e-postadaki ek, HTTP isteği başlığındaki kimlik doğrulama tokenı, API çağrısının JSON gövdesindeki alan. Bu sayfadaki araç her iki yönde de çalışır ve UTF-8 desteği sunar, böylece Sırpça karakterler ve Kiril alfabesi bozulmadan geçer.

Önemli olan Base64'ün ne olmadığını anlamaktır: bu bir şifreleme veya koruma değildir. Kodu ele geçiren herkes, anahtar ve parola olmadan saniyeler içinde çözebilir. Verileri gizlemeniz gerekiyorsa Base64 değil, gerçek kriptografiye ihtiyacınız vardır.

Metinden veya dosyadan Base64 nasıl oluşturulur

Kodladığınız şey ne olursa olsun süreç her zaman aynıdır:

  1. Metni giriş alanına yapıştırın veya bir dosya seçin.
  2. Araç, kaydın baytlarını (çoğunlukla UTF-8) alır ve üçer baytlık gruplara böler.
  3. Her grup dört Base64 karakterine dönüştürülür. Sonda bir veya iki bayt kalırsa tamamlama için = karakterleri eklenir.
  4. Elde edilen kodu kopyalayıp ihtiyacınız olan yerde kullanırsınız.

Pratik bir örnek: UTF-8'de Zdravo metni 6 bayttır ve WmRyYXZv üretir. Sırpça č iki bayt kaplar, bu yüzden čaj kelimesi xI1hag== verir. Sondaki bu = karakterleri hata değildir, yalnızca kaç baytın tamamlandığını söyler.

Dosyalarda boyuta dikkat edin. 100 KB'lık bir görsel kodlandıktan sonra yaklaşık 133 KB metin olur ve tüm içerik tek bir string'e sığmalıdır. CSS'teki data URI için bu, simgeler ve küçük görseller açısından kabul edilebilir, ancak büyük fotoğraflar için değildir, çünkü böyle bir CSS sayfa her açıldığında yüklenir.

İleri düzey ipucu: Base64 bir URL'ye veya dosya adına gidecekken, + ve / yerine - ve _ kullanılan ve = işaretinin genellikle atlandığı URL güvenli varyantı kullanın. Standart ve URL güvenli Base64 her zaman birbirinin yerine geçmez, bu yüzden diğer sistemin ne beklediğini kontrol edin.

Base64 metni neden daha uzun görünür ve bu nasıl kontrol edilir

Base64 64 karakter kullanır ve her karakter 6 bit taşır. Bir bayt 8 bit olduğundan, baytlardan daha fazla karakter gerekir, yaklaşık dörtte bir oranında daha fazla, artı olası = işareti. Bu yüzden metin her zaman orijinalinden daha uzun görünür ve bu bir hata değil, normaldir.

Kod çözme başarısız olduğunda neden neredeyse her zaman şunlardan biridir:

  • kod kesilmiştir veya e-postadan ya da sohbet mesajından kopyalanırken bir kısmı kaybolmuştur;
  • koda boşluklar, satır sonları veya görünmez karakterler girmiştir;
  • standart ve URL güvenli Base64 karıştırılmıştır;
  • metin farklı bir karakter kodlamasında kodlanmıştır, bu yüzden Sırpça karakterler soru işareti veya garip semboller olarak görünür.

Kontrol basittir: geçerli bir Base64 kodunun uzunluğu her zaman dörde tam bölünür ve temel küme dışındaki karakterler nadirdir. Çözülen metin doğru görünüyor ama karakterler bozuksa sorun Base64 kodunda değil, karakter kodlamasındadır.

Base64 ile çalışırken en sık yapılan hatalar

En büyük hata, Base64 kodunu gizli sanmaktır. Base64 formatındaki parolalar, API anahtarları ve kişisel veriler, onları ele geçiren herkes için tamamen okunabilir kalır. Token HTTPS üzerinden aktarılıyorsa korumayı kodlama değil TLS sağlar.

Bir diğer yaygın hata çift kodlamadır. Kodu çözüp aynı sonucu yeniden kodlarsanız farklı bir string elde edersiniz ve sorunun nerede oluştuğunu fark etmek zorlaşır. Hangi yönde gittiğinize her zaman dikkat edin ve sonucun doğru olduğunu onaylayana kadar orijinali saklayın.

Üçüncüsü karakter kodlamalarını karıştırmaktır. Araç bir metni aldığında bunun UTF-8 olduğunu bilmelidir, aksi halde š ve đ okunamaz diziler haline gelebilir. Bu yüzden başka bir sistemle veri alışverişinde kodlamayı her zaman belirtin, örneğin Content-Type: application/json; charset=utf-8 başlığında.

Base64 daha büyük bir sistemin parçası haline geldiğinde, örneğin dosya alan bir API'de veya sunucuda token işlemede, hatalar hızla çoğalır. Bu gibi durumlarda EVI Solutions mimari ve entegrasyon konusunda yardımcı olabilir; bu araç ise tek bir metni veya dosyayı hızlıca kontrol etmeniz için idealdir.

Sık sorulan sorular

Base64 şifreleme mi?

Hayır, herkesin geri çevirebileceği bir kodlamadır.

Base64 neden daha uzun?

Base64 boyutu yaklaşık %33 artırır.

Türkçe karakterler destekleniyor mu?

Evet, metin UTF-8 olarak kodlanır.

Tüm araçlar