Base64 tek cümlede
Base64, ikiliden metne bir kodlamadır: herhangi baytları 64 karakterlik bir metin alfabesiyle temsil eder. JSON, e-posta, HTTP başlıkları, Data URI’ler ve bazı token’lar gibi metin bekleyen sistemlerden veri geçirmek için kullanılır.
Şifreleme değildir. Bir Base64 dizesi parola olmadan çözülebilir; bu yüzden sırları korumak için kullanılmamalıdır.
Base64 adayı nasıl tanınır
Standart Base64 büyük harfler, küçük harfler, rakamlar, +, / ve isteğe bağlı = padding kullanır. Satır sonları ve boşluklar yok sayıldığında uzunluk genellikle dördün katıdır.
URL güvenli varyant Base64URL çoğu zaman + ve / yerine - ve _ kullanır. Görünüm yalnızca ipucudur: güvenilir test, çözmek ve sonucu incelemektir.
Güvenli sırayla çözün
Önce orijinal dizenin kopyasını saklayın. Zararsız boşlukları kaldırın, alfabe ve padding’i kontrol edin, sonra baytlara çözün. Ardından bu baytları UTF-8 metin, JSON, görüntü, sertifika, sıkıştırılmış veri veya başka bir format olarak yorumlayın.
Çıktı okunamıyorsa bu mutlaka hata değildir. Geçerli Base64 içinde ikili veri, sıkıştırılmış baytlar veya ayrı bir adım gerektiren şifreli içerik olabilir.
Kodlamanın içinde ne olur
Base64 giriş baytlarını üçlü gruplar halinde işler. Bu 24 bit dört adet 6 bitlik değere bölünür ve her değer Base64 alfabesinden bir karakter seçer. Man kelimesi TWFu olur.
Kontrol edilmiş metin örneği olarak Hello, Morse!, SGVsbG8sIE1vcnNlIQ== biçiminde kodlanır ve aynı UTF-8 metne geri çözülür.
Padding ve Unicode
Giriş uzunluğu üçe bölünmüyorsa Base64 padding ekler. Bir kalan bayt iki =, iki kalan bayt bir = üretir. Padding, son gruptan kaç bayt geri alınacağını çözücüye söyler.
Base64 soyut karakterleri değil baytları kodlar. Café ☕ gibi metin önce UTF-8 baytlarına dönüşür; bu baytlar Q2Fmw6kg4piV olarak kodlanır.
Yaygın kullanımlar ve güvenlik sınırları
Base64 API’lerde, JSON alanlarında, e-posta eklerinde, Basic Auth başlıklarında, JWT parçalarında, Data URI görüntülerinde, sertifikalarda ve yapılandırma dosyalarında görülür. Her durumda taşıma sorununu çözer: baytları metin kanallarına uygun hale getirir.
Base64 için “şifre çözme” demeyin ve parolaları, API anahtarlarını ya da kişisel verileri yalnızca Base64 ile saklamayın. Gizlilik gerekiyorsa taşıma kodlamasından önce gerçek şifreleme kullanın.