Menu

Base64 Kodlayıcı / Çözücü

Base64 dizelerini ve dosyalarını anında kodla veya çöz.

Son güncelleme

Mod
MetinBaşlamak için metin yapıştır
Base64
Kodlanmış veya çözülmüş çıktı burada görünür — her şey yerel çalışır.

Base64 nedir?

Base64, ikili veriyi 64 yazdırılabilir karakter kullanarak temsil eden bir kodlama şemasıdır. Yalnızca metin taşıyan bir sistemin byte taşıması gerektiğinde geliştiriciler bu yönteme başvurur — HTML içine gömülen küçük görseller, token'lar, e-posta ekleri, data URL'ler, loglara yapıştırılan secret'lar ve binary blob tutan JSON alanları gibi.

Base64 bir *encoding*'dir, encryption değildir. Bir Base64 metnini decode ettiğinizde orijinal içerik anında ortaya çıkar; bu yüzden onu asla bir güvenlik sınırı olarak görmeyin. Base64'ün içine konan her şey, kodlanmadan *önce* şifrelenmediği sürece pratik olarak herkese açıktır.

Perde arkasında Base64, 3 byte'ı (24 bit) alıp sabit 64 karakterlik bir alfabeden (AZ, az, 09, +, /) seçilen 4 karakter olarak yeniden yazar. Girdinin uzunluğu 3'ün katı değilse encoder, sona dolgu olarak bir veya iki = ekler. Base64 metinlerinin sıklıkla = ile bitmesinin nedeni budur.

Base64 kullanırken öğrenecekleriniz

  • Encoding, verinin nasıl temsil edildiğini değiştirir; veriyi gizlemez ya da korumaz — herkes decode edebilir.
  • Base64 çıktısı orijinal byte boyutunun yaklaşık 4/3 katıdır; yani pratik ama yer açısından verimli değildir.
  • = gibi dolgu karakterleri 4'lü son grubu tamamlar ve birçok Base64 metninde gayet normaldir.

Adım adım Base64 encode ve decode etme

  1. Yönü seçin

    Elinizde düz metin ya da bir dosya varsa ve Base64 çıktısı istiyorsanız Encode'u seçin. Elinizde bir Base64 metni varsa ve orijinal içeriğe geri dönmek istiyorsanız Decode'u seçin.

  2. Girdiyi yapıştırın veya dosya bırakın

    Metin kutusuna bir string yapıştırın ya da bir dosyayı (görsel, PDF, ne olursa) bırakma alanına sürükleyin. Dosyalar HTML veya CSS içine gömmeye hazır bir data: URL'sine dönüştürülür.

  3. Çıktıyı okuyun

    Encode edilmiş çıktı Base64 metnidir. Decode edilmiş çıktı orijinal metindir — ya da girdi bir dosyaysa, indirme bağlantısı olarak sunulan geri kazanılmış byte'lardır.

  4. Sonucu kopyalayın

    Sonucu panonuza almak için kopyala butonuna tıklayın. Her şey tarayıcınızda çalışır, yani girdi makinenizden hiç çıkmaz.

Base64 hızlı referansı

Base64 ile çalışmaya başladığınızda sürekli karşılaşacağınız parçalar — RFC 4648 ile tanımlanmıştır.

ÖğeAnlamıÖrnek
AlfabeStandart Base64'te kullanılan 64 karakterA–Z, a–z, 0–9, +, /
URL-safe alfabeJWT'ler ve URL'ler tarafından kullanılırA–Z, a–z, 0–9, -, _
PaddingUzunluk 3'ün katı değilken son grubu tamamlar= veya ==
Grup boyutuEncode edilen parça başına byte → 4 çıkış karakteri3 byte → 4 karakter
Boyut artışıÇıktı, girdiden ~%33 daha büyüktür100 B → 136 karakter
Data URLHTML/CSS için inline dosya gömmedata:image/png;base64,...

Deneyebileceğiniz Base64 örnekleri

Basit bir kelimeyi decode etme

Encode edilmiş

SGVsbG8gV29ybGQ=

Decode edilmiş

Hello World

Sondaki = bir padding'dir; çünkü Hello World 11 byte'tır, bu da 3'ün katı değildir. Decode işlemi bunu her zaman doğru şekilde temizler.

Küçük bir JSON payload'unu encode etme

Orijinal
{"role":"student","active":true}
Base64

eyJyb2xlIjoic3R1ZGVudCIsImFjdGl2ZSI6dHJ1ZX0=

JWT token'ları her segmenti tam olarak böyle encode eder — JWT payload'larının genelde eyJ ile başlamasının sebebi de budur, çünkü bu {" ifadesinin Base64 karşılığıdır.

Bir data URL'sini tanıma

Data URL

data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAQAAAC1HAwCAAAAC0lEQVR42mNgAAIAAAUAAen8GVAAAAAASUVORK5CYII=

Önek, medya türünü (image/png) ve kodlamayı (base64) belirtir. Virgülden sonrası ise dosya içeriğidir. Sayfayla birlikte yüklenen ufak görseller için kullanışlıdır.

Standart ve URL-safe alfabeleri karşılaştırma

Standart

Pj4/Pyc+Pg==

URL-safe

Pj4_Pyc-Pg

URL-safe Base64, + yerine - ve / yerine _ kullanır; böylece değer ek bir escape gerekmeden URL'nin içinde durabilir. JWT'ler bu varyantı kullanır.

Yaygın Base64 hataları

  • Base64'e "şifrelenmiş" demek. Parola ya da anahtar olmadan herkes decode edebilir.
  • Unicode metnin Base64 ile encode edilmeden *önce* UTF-8 byte'larına çevrilmesi gerektiğini unutmak — aksi halde ASCII dışı karakterler gidip-dönüşte bozulur.
  • = padding'ini elle silip, sonucu padding bekleyen sıkı bir decoder'a vermek. (URL-safe decoder'lar genelde eksik padding'i kabul eder; standart decoder'lar etmeyebilir.)

Base64 SSS

Base64 encoding nedir?
Base64, ikili veriyi 64 karakterlik bir alfabe kullanarak yazdırılabilir metin biçiminde temsil eden bir kodlamadır. Byte'ların yalnızca metin taşıyan bir sistem üzerinden geçmesi gereken her yerde kullanılır — API'ler, JSON, JWT, e-posta, data URL'ler.
Base64 nasıl çalışır?
Base64, 3 byte'lık girdiyi (24 bit) alıp dört adet 6 bitlik gruba böler. Her 6 bitlik grup 64 karakterden birine eşlenir. Girdi 3 byte'ın katı uzunluğunda değilse, padding olarak bir veya iki = karakteri eklenir.
Bir Base64 metnini nasıl decode ederim?
Metni bir Base64 decoder'a yapıştırın. Çıktı, orijinal metin ya da dosyadır. Kod tarafında çoğu dilde hazır bir fonksiyon vardır: tarayıcılarda atob(), Node.js'de Buffer.from(str, 'base64'), Python'da base64.b64decode().
Base64 güvenli midir?
Hayır. Base64 bir encoding'dir, encryption değildir. Gizlilik için değil, temsil ve taşıma için tasarlanmıştır. Gizlilik gerekiyorsa veriyi önce şifreleyin, ardından şifreli metni Base64 ile kodlayın.
Base64 neden bazen = ile biter?
= bir padding karakteridir. Base64, her 3 byte'lık girdi için 4 karakter üretir. Girdi uzunluğu 3'ün katı değilse, encode edilmiş uzunluğun 4'ün katı kalması için bir veya iki = eklenir.
Base64 görselleri encode edebilir mi?
Evet. Görsel byte'ları Base64 ile encode edilip data:image/png;base64,... biçiminde bir URL içine yerleştirilebilir; böylece görsel ayrı bir ağ isteği olmadan doğrudan HTML, CSS veya JSON içine gömülmüş olur.

Diğer geliştirici araçları

Coddy ile kodlamayı öğren

BAŞLA