Base64 Nedir?
Base64 binary verinin sadece bazı ASCII karakter içerecek şekilde kodlanması anlamına gelir.
Base64 binary verinin sadece bazı ASCII karakter içerecek şekilde kodlanması anlamına gelir.
Base64 encoding schemes are commonly used when there is a need to encode binary data that needs be stored and transferred over media that are designed to deal with textual data. This is to ensure that the data remains intact without modification during transport.Binary verinin bazı transfer protokolleri ile kullanırken, kontrol karakteri olarak algılandığı için bozulduğu yazılı. Böyle bir transfer protokolüne örnek veremiyorum.
Hangi Karakterler Vardır
Base64 ile kullanılan ASCII alt kümesi A–Z, a–z, 0–9, +, /, = karakterleridir. Toplam 64 tane karakter vardır. Yani her karakter 6 bit ile temsil edilebilir.
Bir string'in Base64 olup olmadığını anlamak için [^A-Za-z0-9+/=] düzenli ifadesine başvurulabilir.
Ne Tür Binary Veri İçin Kullanılır?
1. hash sonucu elimize geçen byte[] değeri,
2. MIME eklentileri Base64 string haline çevrilmiş şekilde karşımıza çıkıyor. Örneğin e-posta'da eklenti olarak gönderilen bir gif dosyası Base64 olarak gönderilebilir.
MIME Base64 binary to text çevriminde kullanılabilecek bir standart. Bu standarda göre bir satırın uzunluğu en fazla 76 karakter olabilir.MIME-Version: 1.0Content-Description: "Base64 encode of a.gif"Content-Type: image/gif; name="a.gif"Content-Transfer-Encoding: Base64Content-Disposition: attachment; filename="a.gif"
Veri Neden = Karakteri İle Biter? - Veri 3'ün Katı Olacak Şekilde Tamamlanır
Base64 veriyi 3 byte'lık gruplar halinde okur. Eğer veri 3'ün katı değilse olacak şekilde tamamlanır. Bu durumda çevrimin sonunda genellikle "=" karakteri ile biten string'ler elde ederiz. "=" karakteri Base64 çevrim tablosunda boşluk karakterine denk gelir. Dolayısıyla bir string'e bakıp sonu 2/3 ihtimalle = karakteri ile bitiyorsa, Base64 ile kodeklendiğini tahmin edebiliriz.
Base64 ve URL Safe Çevrim
Bazı Base64 kodekleri URL Safe bir mod sunuyorlar. URL içinde + ve / karakterleri kullanılmaz. Standart Base64 ise bu karakterleri kullanır. URL Safe çevrim yapan kodekler + ve / karakterleri yerine "_" karakteri kullanır. Örneğin Apache Commons kütüphanesi aşağıdaki gibi kullanılabilir.
Base64 Sınıfı kullanılabilir.
Base64 ve URL Safe Çevrim
Bazı Base64 kodekleri URL Safe bir mod sunuyorlar. URL içinde + ve / karakterleri kullanılmaz. Standart Base64 ise bu karakterleri kullanır. URL Safe çevrim yapan kodekler + ve / karakterleri yerine "_" karakteri kullanır. Örneğin Apache Commons kütüphanesi aşağıdaki gibi kullanılabilir.
base64String = Base64.encodeBase64URLSafeString(myByteArray);
Apache CommonsBase64 Sınıfı kullanılabilir.
Linux
Hiç yorum yok:
Yorum Gönder