Base64 Kodlayıcı
Metni Base64 dizisine dönüştürmek için girin. Kodlayıcı ASCII ve diğer tek baytlık karakterlerle çalışır; emoji gibi karakterler kodlama hatasına neden olabilir.
Metinden Base64 Kodlama Aracı
Base64 Kodlayıcı Formülü
Burada:
- \(n\) — girdi baytlarının sayısı.
- \(L\) — dolgu karakterleri dahil Base64 çıktısındaki karakter sayısı.
Base64, girdiyi üç baytlık gruplara böler ve her grubu dört karakterle temsil eder. Son grupta üçten az bayt varsa, çıktıda dolgu olarak bir veya iki = karakteri kullanılır.
Base64 Kodlayıcı – Hesaplama Örneği
Örnek: hesaplayıcının varsayılan metni olan Hello world! ifadesini girin. Desteklenen 12 karakter 12 bayt olarak kodlanır ve dört tam üç baytlık grup oluşturur.
\[ \operatorname{Base64}(\text{Hello world!})=\text{SGVsbG8gd29ybGQh} \]
\[ L=4\left\lceil\frac{12}{3}\right\rceil=16 \]
Sonuç: SGVsbG8gd29ybGQh, dolgu karakteri içermeyen 16 karakterlik bir Base64 dizisi.
Base64 Kodlayıcı nasıl kullanılır
- Girdinizi Kodlanacak Metin alanına girin veya yapıştırın. Yukarıdaki örneği doğrulamak için
Hello world!metnini olduğu gibi bırakabilirsiniz. - Kodlanmış diziyi Base64 Çıktısı alanında okuyun.
- Diziyi başka bir uygulamaya yapıştırmanız gerekiyorsa çıktının kopyalama seçeneğini kullanın. Sondaki
=karakterlerini koruyun: bunlar kodlanmış değerin bir parçasıdır.
Base64 Çıktısı alanında “Kodlama başarısız” yazıyorsa, metin bu kodlayıcının doğrudan işleyemediği bir karakter içeriyordur. Sonucu bir uygulamada kullanmadan önce aşağıdaki karakter kısıtlamasına bakın.
Base64 kodlaması ne yapar
Base64, baytları sınırlı bir yazdırılabilir karakter kümesiyle — büyük ve küçük harfler, rakamlar, + ve / — temsil etme yöntemidir. Bir biçim veya sistem ham bayt yerine metin gerektirdiğinde kullanışlıdır. Girdinin uzunluğuna bağlı olarak sonuç = veya == ile de bitebilir.
Kodlanmış dizi, metninizin anlamını değiştirmez; girdi baytlarının başka bir temsilidir. Bu baytlar bir Base64 Kod Çözücü ile geri kazanılabilir. Bu nedenle Base64 ne şifreleme ne de gizlilik sağlar. Kodlanmış bir parolayı, anahtarı (token) veya başka bir hassas değeri, yalnızca ilk bakışta okunması zor olduğu için korumalı saymayın.
Base64 çıktısı genellikle girdisinden uzundur: her üç bayt dört karaktere dönüşür; bu, çevresindeki biçimlendirme eklenmeden önce yaklaşık üçte birlik bir artıştır. Kısa girdilerde dolgu karakterleri oranlı artışı daha da büyütebilir. Yukarıdaki formül, \(n\) baytlık bir girdi için çıktı uzunluğunu verir; kodlanmış karakterlerin ne olacağını söylemez. Bu karakterler gerçek bayt değerlerine bağlıdır.
Karakter desteği ve pratik sınırlar
Bu hesaplayıcı, tarayıcının btoa() işlevini kullanır. Karakter kodları tek bayta (0 ile 255 arası) sığan metinleri kabul eder. Normal İngilizce harfler, rakamlar, boşluklar ve noktalama işaretleri çalışır. Emoji ve Latin olmayan yazıların çoğu dahil diğer birçok karakter “Kodlama başarısız” hatasına neden olur. Bu sayfa, metni önce UTF-8'e dönüştürmez.
Bu ayrım aksanlı karakterler için de geçerlidir. é gibi bir karakter burada tek bayt olarak kabul edilebilir; ancak çıktısı, karakterin UTF-8 baytlarının Base64 kodlaması değildir. Alan sistemi UTF-8 bekliyorsa, Base64 uygulamadan önce metni açıkça UTF-8'e dönüştüren bir kodlayıcı kullanın.
Base64'ün dosyalar için yaygın kullanımına rağmen bu hesaplayıcıda dosya yükleme değil, metin alanı vardır. Bir görselin veya başka bir ikili dosyanın görünür içeriğini yapıştırmak, o dosyayı güvenilir biçimde kodlamaz. Bir dosya için Base64'e ihtiyacınız olduğunda dosya destekli bir araç kullanın.
Base64, URL kodlamasından farklı bir amaca da hizmet eder. Bir URL'ye yerleştirmek için kaçış karakterleri kullanmanız gerekiyorsa bir URL Kodlayıcı kullanın. Standart Base64'ün kendisi de bir URL'de özel işlem gerektirebilecek +, / ve = karakterleri içerebilir. Tüm girdiyi Base64 olarak kodlamak yerine karakter değerlerini incelemek isterseniz ASCII Dönüştürücüyü deneyin.
Sıkça Sorulan Sorular
Metni elle Base64 olarak nasıl kodlayabilirim?
Her girdi baytını sekiz ikili rakama dönüştürün, ardından birleşik bitleri altılı gruplara bölün. Her altı bitlik grubu 0 ile 63 arasında bir sayı olarak okuyun ve standart Base64 alfabesinde karşılığını bulun. Örneğin, “Man” kelimesinin baytları 19, 22, 5 ve 46 altı bitlik değerlerini üretir ve bunlar “TWFu” ile eşleşir. Eksik bir son grup için, son karakterini bulmadan önce sıfır bitleri ekleyin.
Başka bir Base64 kodlayıcı é için neden farklı sonuç veriyor?
İki kodlayıcı farklı baytlarla başlıyor olabilir. Bu hesaplayıcı é karakterini 233 değerinde tek bayt olarak ele alır ve “6Q==” üretir. Bir UTF-8 kodlayıcı ise önce é karakterini 195 ve 169 olmak üzere iki baytla temsil eder ve “w6k=” üretir. Sonuçlardan hiçbiri kendiliğinden yanlış değildir; ancak kod çözücü, amaçlanan metni geri kazanmak için kodlayıcıyla aynı karakter kodlamasını kullanmalıdır.
Boş bir dizeyi kodlarsam ne olur?
Boş bir girdi, eşittir işareti veya özel bir işaret değil, boş bir Base64 dizisi olarak kodlanır. Dönüştürülecek bayt ve dolgu gerektiren bir son grup yoktur. Bu durum bir API'ye veri gönderirken önemli olabilir: boş bir kodlanmış değer geçerli olabilir; ancak alan uygulaması, boş bir dize içeren alan ile atlanan alanı farklı ele alabilir.
Base64, Base64URL ile aynı şey midir?
Hayır. Base64URL, standart alfabedeki “+” ve “/” karakterlerini “-” ve “_” ile değiştirir; ayrıca genellikle sondaki dolguyu atlar. Bu değişiklikler, kodlanmış veriyi URL bileşenlerine ve JWT gibi biçimlere yerleştirmeyi kolaylaştırır. Bu hesaplayıcı standart Base64 üretir; bu nedenle çıktısını kopyalamadan önce, alan servisinin özellikle Base64URL isteyip istemediğini kontrol edin.
Bir Base64 dizisinin sonundaki eşittir işaretlerini kaldırabilir miyim?
Yalnızca alan biçimi dolgusuz Base64'a açıkça izin veriyorsa. Bazı kod çözücüler eksik dolguyu dize uzunluğundan çıkarabilirken, bazıları bunu zorunlu kılar. “=” karakterini kaldırmak özgün veriyi değiştirmez; ancak diziyi katı bir kod çözücü için geçersiz kılabilir. Hedefiniz aksini belirtmedikçe bu hesaplayıcının sonucunu kopyalarken dolguyu koruyun.
Base64'te büyük-küçük harf veya boşluk önemli midir?
Büyük-küçük harf önemlidir: büyük ve küçük harfler farklı değerleri temsil eder; bu nedenle bir harfin boyutunu değiştirmek kodu çözülmüş baytları değiştirebilir. Boşluk farklıdır. Bazı kod çözücüler uzun Base64 dizilerine eklenen satır sonlarını yok sayarken, katı kod çözücüler bunları reddeder. En güvenilir kopyala-yapıştır sonucu için her karakteri tam olarak koruyun ve boşluk veya satır sonu eklemekten kaçının.