# Kodla / Çöz

URL: https://discuvr.org/encode-decode/?hl=tr
Last updated: 2026-11-07
MCP tool: `encode_decode_text`

Base64, Base64URL, URL yüzde kodlaması, HTML varlıkları ve hex için yazarken kodlama veya çözme yapın. Tam UTF-8, eksik dolgu bildirilir, hiçbir şey saklanmaz.

Bir logdaki token, bir yönlendirmedeki sorgu dizesi, &amp; dolu bir e-posta: kodlanmış metin işte her yerde karşınıza çıkar. Buraya yapıştırın, biçimi seçin ve kodlanmış ya da çözülmüş sonucu yazarken görün.

## Ne işe yarar

- Base64, Base64URL (JWT tarzı, dolgusuz), URL yüzde kodlaması, HTML varlıkları ve hex.
- Tam UTF-8: Türkçe karakterler, Hintçe, Çince ve emoji gidiş-dönüşte bozulmaz.
- Eksik Base64 dolgusu eklenir ve bildirilir, asla sessizce düzeltilmez.
- Metin olmayan baytlar bozuk karakterler yerine hex olarak gösterilir.
- Tek tıkla çıktıyı yeniden girdi yapıp yönü tersine çevirin.

## Nasıl çalışır

1. Biçimi ve kodlama mı çözme mi yapacağınızı seçin.
2. Metninizi yapıştırın - sonuç siz yazarken güncellenir.
3. Çıktıyı kopyalayın veya bir sonraki girdi olarak kullanın.

## Uygulamalı örnek: JWT okumak

JSON Web Token, noktalarla birleştirilmiş üç Base64URL parçasıdır: başlık, yük ve imza. Ortadaki parçayı yapıştırın, Base64URL'yi seçip çözün; kullanıcı kimliği ve exp son kullanma zamanı (Unix zaman damgası dönüştürücüyle okuyabileceğiniz bir Unix zaman damgası) gibi JSON alanlarını görürsünüz. Çözmek doğrulamak değildir: bir JWT'nin yükünü herkes okuyabilir, değiştirilmediğini yalnızca sunucudaki imza kontrolü kanıtlar.

## İşte sorun çıkaran durumlar

Bazı sistemlerin yer kazanmak için dolgusunu sildiği Base64, katı çözücülerde hata verir; bu araç eksik = işaretlerini ekler ve size bildirir. Birçok sunucu sorgu dizesindeki +'yı boşluk olarak okur, bu yüzden bir bağlantıya kodlanmadan yapıştırılan Base64 değeri bozuk ulaşır; onu URL bileşeni olarak kodlayın ya da Base64URL kullanın. İki kez kodlanmış metin %2520 veya &amp;amp; olarak görünür ve iki kez çözülmesi gerekir.

## Her çözücü neyi kabul eder

Base64 çözme boşlukları ve satır sonlarını yok sayar; e-postadaki gibi birkaç satıra bölünmüş bir değer yapıştırıldığı haliyle çözülür. Base64URL + ve / karakterlerini de kabul eder, ancak düz Base64 - ve _ karakterlerini reddeder; bu yüzden bir JWT parçası için Base64URL seçeneği gerekir. Hex çözme boşlukları, iki nokta üst üsteyi, virgülleri, tireleri ve 0x öneklerini atlar; 48:65:6c:6c:6f de 0x48 0x65 de çalışır. URL çözme + işaretini boşluğa çevirir; gerçek bir artı işareti %2B olarak gelmelidir. HTML kodlama & < > " ve ' olmak üzere beş karakteri kaçışlar; HTML çözme &nbsp; ve &hellip; gibi tüm HTML5 adlandırılmış varlıklarını ve rupi simgesi için &#8377; gibi sayısal olanları tanır.

## Çözümlü örnekler: her biçim ne üretir

Buradaki URL kodlama tek bir değeri, örneğin tek bir sorgu parametresini kodlar; bu yüzden ayrılmış karakterlerin hepsi kaçışlanır: https://example.com/a b?x=1&y=2 şuna dönüşür: https%3A%2F%2Fexample.com%2Fa%20b%3Fx%3D1%26y%3D2. Yalnızca bağlantıya eklediğiniz değeri kodlayın, bağlantının tamamını asla. ASCII dışındaki metin UTF-8 baytları olarak kodlanır: café ₹ şuna dönüşür: caf%C3%A9%20%E2%82%B9; hex de aynı baytları gösterir, é için c3 a9, ₹ için e2 82 b9. user:pass değerinin Base64 karşılığı dXNlcjpwYXNz olur; bir HTTP Basic Authorization başlığı bu değeri taşır (RFC 7617). Bu yüzden o başlığı gören herkes parolayı okuyabilir.

## Sorular

**Çözülen metnim neden Ã© gibi garip karakterler gösteriyor?**

Baytlar UTF-8 idi ama kodlanmadan önce bir yerde Latin-1 veya Windows-1252 olarak okundu. Buradaki çözme baytları olduğu gibi gösterir; düzeltme, onları üreten sistemde yapılmalıdır.

**Bütün bir dosyayı çözebilir miyim?**

200.000 karaktere kadar metin yapıştırın. Görüntü gibi ikili dosyalarda çözülen baytlar indirme dosyasına dönüştürülmek yerine hex olarak gösterilir.

**Base64 bir şifreleme mi?**

Hayır. Base64 yalnızca baytların yazılış biçimini değiştirir, böylece düz metin bekleyen sistemlerden sağlam geçerler. Herkes çözebilir; bir parolayı veya sırrı gizlemek için asla kullanmayın.

**Base64 ile Base64URL arasındaki fark nedir?**

Base64URL, "+" ve "/" yerine "-" ve "_" kullanır ve genellikle "=" dolgusunu atar; böylece sonuç URL'lerde ve dosya adlarında güvenlidir. JSON Web Token'lar bunu kullanır.

**Metnim saklanıyor mu?**

Hayır. Aynı istekte dönüştürülüp geri gönderilir ve asla bir veritabanına veya loga yazılmaz.

**URL kodlu çıktı neden JavaScript'in encodeURIComponent sonucundan farklı?**

Bu araç, encodeURIComponent'in olduğu gibi bıraktığı ! ' ( ) ve * karakterlerini de kaçışlar; bu yüzden it's (50%) off! şuna dönüşür: it%27s%20%2850%25%29%20off%21. İki biçim de aynı metne çözülür ve bu karakterleri bir sorgu değerinde kaçışlamak her zaman güvenlidir. Boşluk + değil %20 olur; + biçimi HTML form kodlamasından gelir ve buradaki çözücü ikisini de okur.

**Komut satırında metni Base64 olarak nasıl kodlar veya çözerim?**

Linux veya Mac'te echo -n 'Hello, World' | base64 komutu SGVsbG8sIFdvcmxk verir, echo 'SGVsbG8sIFdvcmxk' | base64 --decode ise metne geri çevirir. -n yazmazsanız echo bir satır sonu ekler ve o da kodlanır, sonuç SGVsbG8sIFdvcmxkCg== olur: iki aracın farklı sonuç vermesinin en yaygın nedeni budur. PowerShell'de [Convert]::ToBase64String([Text.Encoding]::UTF8.GetBytes('Hello, World')) kodlar, [Text.Encoding]::UTF8.GetString([Convert]::FromBase64String('SGVsbG8sIFdvcmxk')) çözer. Bu sayfa yapıştırdığınız karakterleri tam olarak UTF-8 biçiminde kodlar ve satır sonu eklemez.

**Base64 bir görseli veya data URI'yi nasıl çözerim?**

Yalnızca virgülden sonraki kısmı yapıştırın: data:image/png;base64,iVBORw0KGgo... içinde bu iVBORw0KGgo... kısmıdır, çünkü data:image/png;base64, öneki Base64 değildir ve dizenin tamamı reddedilir. Base64 ve Decode seçin. Metin olmayan baytlar resim olarak çizilmek yerine onaltılık (hex) gösterilir; bu da dosyanın ne olduğunu anlamaya yeter: PNG 89 50 4e 47 ile, JPEG ff d8 ff ile, tam bir .docx, .xlsx veya ZIP tabanlı başka bir dosya 50 4b 03 04 ile başlar. Görselin kendisini görmek için data URI'nin tamamını tarayıcının adres çubuğuna yapıştırın. Giriş en fazla 200.000 karakterdir, bu da yaklaşık 150.000 baytlık dosya eder.

**Base64 neden orijinalden yaklaşık üçte bir daha uzun?**

Base64 her 3 baytı 4 karakterle yazar ve son grubu 4'ün katına tamamlamak için = ile doldurur (RFC 4648); bu yüzden çıktı, giriş baytlarının yukarı yuvarlanmış 4/3'üdür. Hello, World 12 bayttır ve 16 karakterlik SGVsbG8sIFdvcmxk olur. Harf değil UTF-8 baytı sayılır: café 4 karakter ama 5 bayttır ve Y2Fmw6k= olur; ₹100 6 bayttır ve 4oK5MTAw olur. E-posta ekleri biraz daha büyür, çünkü MIME Base64'ü en fazla 76 karakterlik satırlara böler (RFC 2045); bu sayfa çözerken bu satır sonlarını yok sayar. Dolgusuz Base64URL yalnızca = işaretlerinden tasarruf eder.

## Geliştirici Araçları içinde daha fazlası

- [Unix Zaman Damgası Dönüştürücü](https://discuvr.org/timestamp-converter/?hl=tr)
- [Sistem Diyagramı Oluşturucu](https://discuvr.org/system-diagram/?hl=tr)
- [JSON Biçimlendirici](https://discuvr.org/json-formatter/?hl=tr)
- [Python Biçimlendirici](https://discuvr.org/python-formatter/?hl=tr)

## Sıklıkla birlikte kullanılanlar

- [Şifre Oluşturucu](https://discuvr.org/password-generator/?hl=tr)

---

Part of Discuvr (https://discuvr.org/): Discuvr is a collection of free, focused tools for day-to-day professional work - office and data utilities, legal and compliance helpers, privacy and security checks, and developer formatters. Every tool has its own page, and most can also be called from ChatGPT or Claude over MCP.
