MagmaNex LogoMagmaNex
Ana Sayfa/Blog/Base64 Nedir, Ne İşe Yarar?
Base64 Nedir, Ne İşe Yarar?
Rehber1 Haziran 2026· 6 dk okuma

Base64 Nedir, Ne İşe Yarar?

Base64 nedir, nasıl çalışır ve neden boyutu yaklaşık %33 büyütür? Data URI, e-posta ve kimlik doğrulama örnekleriyle anlaşılır bir Türkçe rehber.

#base64#kodlama#encoding

Base64 Nedir, Ne İşe Yarar?

İnternette dosya gönderirken, bir resmi doğrudan HTML içine gömerken ya da API'lere kimlik bilgisi iletirken sıkça karşımıza çıkan bir terim var: Base64. Çoğu zaman "şifreleme" sanılan ama aslında şifrelemeyle hiç ilgisi olmayan bu kavramı bu yazıda baştan sona, örneklerle açıklıyoruz.

Base64 Tam Olarak Nedir?

Base64, ikili (binary) veriyi metin (text) biçiminde temsil etmeye yarayan bir kodlama (encoding) yöntemidir. Adındaki "64" sayısı, kullanılan karakter alfabesinin 64 karakterden oluşmasından gelir. Bu alfabe şunları içerir:

  • AZ (26 büyük harf)
  • az (26 küçük harf)
  • 09 (10 rakam)
  • + ve / (2 özel karakter)

Toplamda 64 karakter eder. Ayrıca dolgu (padding) amacıyla = işareti kullanılır.

Buradaki temel fikir şudur: Bilgisayarlardaki her şey aslında 0 ve 1'lerden, yani byte'lardan oluşur. Ancak bazı sistemler yalnızca güvenli, okunabilir metin karakterleriyle çalışır. Örneğin eski e-posta protokolleri sadece 7-bit ASCII metni taşıyabiliyordu. İşte Base64, "her türlü ham veriyi, hiçbir yerde bozulmayacak güvenli metin karakterlerine çevirelim" ihtiyacından doğdu.

Nasıl Çalışır? (Adım Adım)

Base64 mantığı aslında oldukça basittir. Veri, 3 byte'lık (24 bit) gruplara bölünür. Bu 24 bit, 6 bitlik 4 parçaya ayrılır. Her 6 bitlik parça, 0–63 arasında bir sayıya karşılık gelir ve bu sayı Base64 alfabesindeki ilgili karaktere dönüştürülür.

Kısa bir örnekle "Hi" kelimesini kodlayalım:

Adım Değer
Metin Hi
ASCII (ondalık) 72, 105
Binary 01001000 01101001
6'şarlı gruplar 010010 000110 1001(00)
Base64 sayıları 18, 6, 36
Sonuç SGk=

Görüldüğü gibi 2 byte'lık veri tam 3 byte'lık gruba tamamlanamadığı için sona = dolgusu eklenir. Bu hesaplamaları kafa yormadan denemek isterseniz, metninizi anında dönüştürmek için Base64 Kodlayıcı aracını kullanabilirsiniz; aracın tersini, yani Base64 metnini okunabilir hâle getirmeyi ise Base64 Çözücü ile yapabilirsiniz. Her iki araç da tamamen tarayıcınızda çalışır, ücretsizdir ve üyelik gerektirmez.

Neden Boyut Yaklaşık %33 Büyür?

Base64'ün en çok yanlış anlaşılan yönlerinden biri budur. Mantık şöyle: Normalde her byte 8 bit taşır. Base64 ise her karaktere yalnızca 6 bit veri sığdırır. Yani aynı bilgiyi taşımak için daha fazla karaktere ihtiyaç duyulur.

Matematiksel olarak: Her 3 byte (24 bit) orijinal veri, 4 karakter Base64 metnine dönüşür. 4 / 3 ≈ 1.33 olduğundan, çıktı yaklaşık %33 daha büyük olur. Padding karakterleri ve satır sonları eklendiğinde bu oran biraz daha artabilir.

Önemli not: Base64 veriyi sıkıştırmaz, tam tersine büyütür. Amacı boyut kazanmak değil, veriyi taşınabilir kılmaktır.

Base64 Ne İşe Yarar? (Gerçek Kullanım Alanları)

1. Data URI ile Resim Gömme

Web geliştiricileri küçük resimleri, ikonları veya yazı tiplerini doğrudan HTML/CSS içine gömmek için Base64 kullanır. Buna data URI denir:

<img src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUg...">

Böylece tarayıcı resim için ayrı bir sunucu isteği yapmak zorunda kalmaz. Bir görseli bu formata çevirmek için Resimden Base64'e Dönüştürücü aracını kullanabilir, ürettiği kodu doğrudan projenize yapıştırabilirsiniz. Yalnızca küçük dosyalar için mantıklı olduğunu unutmayın; büyük resimlerde %33'lük büyüme ve önbellekleme dezavantajı işe yaramaz.

2. E-posta Ekleri (MIME)

E-posta protokolleri tarihsel olarak yalnızca metin taşıyabildiğinden, PDF, resim veya video gibi ikili ekler MIME standardı içinde Base64'e çevrilerek gönderilir. Alıcı tarafta tekrar çözülerek orijinal dosyaya dönüştürülür.

3. Kimlik Doğrulama (Auth) Başlıkları

HTTP'deki Basic Authentication yönteminde kullanıcı:parola bilgisi Base64 ile kodlanıp Authorization başlığında gönderilir:

Authorization: Basic a3VsbGFuaWNpOnBhcm9sYQ==

Burada kritik bir uyarı var: Bu şifreleme değildir. Aşağıda detaylandıracağız.

4. Veri Aktarımı ve JSON

JSON gibi formatlar yalnızca metin taşır. İkili veriyi (örneğin bir dosya içeriğini) JSON içinde göndermek gerektiğinde, veri önce Base64'e çevrilir. JWT (JSON Web Token) içindeki parçalar da Base64URL adı verilen bir varyantla kodlanır.

Base64 Şifreleme DEĞİLDİR

Bu, vurgulanması gereken en önemli noktadır. Base64 ne kadar "rastgele harf-rakam karışımı" gibi görünse de hiçbir güvenlik sağlamaz. Çünkü:

  • Anahtar yoktur. Şifrelemede gizli bir anahtar gerekir; Base64'te yoktur.
  • Herkes geri çözebilir. Base64 metnini gören herkes, hiçbir parola olmadan saniyeler içinde orijinal veriye ulaşabilir.

Yani a3VsbGFuaWNpOnBhcm9sYQ== gibi bir metin, hassas verinizi gizlemez, yalnızca farklı bir biçimde temsil eder. Hassas bilgileri korumak için AES gibi gerçek şifreleme algoritmaları veya en azından HTTPS üzerinden iletim gereklidir.

Kavram Amaç Geri Döndürmek İçin Anahtar Gerekir mi?
Base64 (Encoding) Veriyi taşınabilir metne çevirmek Hayır
Şifreleme (Encryption) Veriyi gizlemek Evet
Hash'leme (Hashing) Veriyi geri döndürülemez şekilde özetlemek Geri döndürülemez

Base64URL: Bir Önemli Varyant

Standart Base64'teki + ve / karakterleri URL'lerde ve dosya adlarında sorun çıkarabilir. Bu yüzden web ortamında çoğu zaman Base64URL kullanılır: + yerine -, / yerine _ konur ve genelde padding (=) kaldırılır. JWT token'ları bu varyantı kullanır.

Özet

Base64, ikili veriyi güvenli ve taşınabilir metne dönüştüren basit ama son derece yaygın bir kodlama yöntemidir. Özetle aklınızda kalması gerekenler:

  • 64 karakterlik bir alfabe kullanır.
  • Çıktıyı orijinaline göre yaklaşık %33 büyütür.
  • Data URI, e-posta ekleri, auth başlıkları ve JSON veri aktarımında kullanılır.
  • Asla bir şifreleme yöntemi değildir ve güvenlik sağlamaz.

Metinlerinizi hızlıca Base64'e çevirmek için her şeyin tarayıcınızda, ücretsiz ve kayıt olmadan çalıştığı Base64 Kodlayıcı aracını deneyebilirsiniz.

İlgili Araçlar


🛠 İlgili Araçlar

📚 İlgili Yazılar

← Tüm Yazılar🛠 Araçları Keşfet