ByteCompress

Base64 Kodlayıcı

Düz metin veya ikili dizeleri Base64 kodlu çıktıya dönüştürün. RFC 4648'e göre standart ve URL güvenli alfabeyi destekler ve emojiler ile Latin dışı yazı sistemlerini de kapsar.

0 chars
FreeClient-sideNo signup

Base64, veri boyutuna yaklaşık %33 ekler. Bu takas, ikili verilerin e-posta başlıkları, JSON yükleri ve HTTP Yetkilendirme başlıkları gibi yalnızca metin kanallarında hayatta kalması gerektiği için vardır. RFC 4648'de tanımlanan Base64, A-Z, a-z, 0-9, artı + ve / (veya URL güvenli modda - ve _) kullanan 64 karakterli bir alfabeyi kullanır. Bu tarayıcı tabanlı kodlayıcı, girişinizi tamamen cihazınızda işleyerek yerleşik btoa() ve TextEncoder API'lerini kullanır. Özel dizeler, jetonlar ve kimlik bilgileri asla herhangi bir sunucuya gönderilmez.

Base64'e Nasıl Kodlanır

  1. Kodlamak istediğiniz metni giriş alanına yazın veya yapıştırın.
  2. Standart veya URL güvenli kodlama modunu seçin.
  3. Kodlanmış Base64 çıktısı anında çıktı panelinde görünür.
  4. Sonucu panonuza kopyalamak için Kopyala'ya tıklayın.

Base64 Kodlaması Nasıl Çalışır

64 Karakterli Alfabe

Base64, A-Z (26), a-z (26), 0-9 (10) ve iki ek karakterden oluşan 64 karakterli bir alfabeyi kullanır. Standart Base64 (RFC 4648 §4) + ve / kullanır. URL güvenli Base64 (RFC 4648 §5) bunları - ve _ ile değiştirir. Kodlama, üç girdi baytını (24 bit) alır, bunları dört 6 bit gruba böler ve her 6 bit değerini karşılık gelen alfabedeki karaktere eşler. Bu nedenle Base64 çıktısı uzunluğu her zaman 4'ün katıdır.

Dolgu

Base64, verileri 3 bayt gruplarında işlediğinden, 3'ün katı olmayan girdi uzunlukları dolgu gerektirir. Bir kalan bayt sonunda == üretir. İki kalan bayt = üretir. Dolgu, standart Base64'te gereklidir ancak genellikle URL güvenli uygulamalarda, özellikle JWT'lerde çıkarılır.

Örnek

Girdi

Merhaba, Dünya!

Çıktı (Standart Base64)

TWVy aGFiYSwgRHVu eWEh

İki = dolgu karakteri, "Merhaba, Dünya!" 13 bayt olduğu için görünür - 13 mod 3 = 1, bu nedenle son grupta bir bayt kalır.

Yaygın Kullanım Alanları

  • HTTP Temel Kimlik Doğrulama - Authorization: Basic başlıkları, kullanıcı adı:şifre Base64 olarak kodlanmış olmalıdır.
  • HTML/CSS'de Satır İçi Görseller - Veri URI'leri: data:image/png;base64,iVBORw0KGgo...
  • JWT jetonları - Başlık ve yük bölümleri URL güvenli Base64 kullanır.
  • Email Ekleri - MIME (RFC 2045), metin tabanlı e-posta protokollerinde ikili ekleri kodlamak için Base64 kullanır.

Standart vs URL Güvenli Base64

Standart Base64, URL'lerde özel anlamı olan + ve / kullanır. URL güvenli Base64 bunları - ve _ ile değiştirir, böylece çıktı URL'lerde, dosya adlarında ve sorgu parametrelerinde yüzde kodlaması olmadan güvenli hale gelir. JWT'ler, OAuth jetonları ve URL'lerde görünen herhangi bir Base64 verisi için URL güvenli modu kullanın. Çıktıyı çözmek için Base64 Çözücü'yü kullanın. URL sorgu parametrelerine kodlanmış verileri gömmek için bu aracı URL Kodlayıcı ile birleştirin.

Sıkça Sorulan Sorular

Base64 bir şifreleme biçimi mi?

Hayır. Base64 bir kodlama şemasıdır, şifreleme veya herhangi bir güvenlik biçimi değildir. Base64 dizesine sahip olan herkes, bir anahtar olmadan anında çözebilir. Hiçbir gizlilik sağlamaz. Verilerinizi korumak için AES-256 veya RSA kullanın - Base64, ikili verilerin metin kanallarında güvenli taşınması içindir, bilgi gizlemek için değil.

Base64 çıktısı neden her zaman == veya = ile biter?

Base64, verileri 3 bayt gruplarında 4 karaktere kodlar. Girdi uzunluğu 3'e tam bölünemediğinde, son grup 3 yerine 1 veya 2 bayt içerir. Bir kalan bayt == dolgu üretir; iki kalan bayt = üretir. Dolgu, çıktı uzunluğunun her zaman 4'ün katı olmasını sağlar, bu RFC 4648 tarafından gereklidir.

Bu kodlayıcı Unicode ve emojileri doğru bir şekilde işliyor mu?

Evet. Kodlayıcı, önce metni tarayıcının TextEncoder API'sini kullanarak UTF-8 baytlarına dönüştürür, ardından Base64 uygular. Emojiler (UTF-8'de 4 bayt), Çince karakterler, Arap harfleri ve aksanlı Latin karakterleri dahil olmak üzere Unicode karakterleri doğru bir şekilde kodlanır ve orijinal metne geri çözülür.

URL güvenli Base64 nedir ve ne zaman kullanmalıyım?

URL güvenli Base64 (RFC 4648 §5), + karakterini - ile ve / karakterini _ ile değiştirir. Base64 verileri bir URL, dosya adı, çerez veya standart karakterlerin yanlış yorumlanacağı HTTP başlığı içinde göründüğünde kullanın. JWT jetonları, OAuth erişim jetonları ve PKCE kod doğrulayıcıları hepsi URL güvenli Base64 kullanır.

Base64 veri boyutunu ne kadar artırır?

Base64 kodlama, veri boyutunu tam olarak %33,33 artırır - 3 girdi baytı 4 çıktı karakterine dönüşür (4/3 = 1,333...). Ayrıca, çıktı en fazla 2 dolgu karakteri içerebilir. Büyük ikili yükler için, çok parçalı veya ikili protokoller Base64'ten daha bant genişliği verimlidir.