Base64 Kodlaşdırma
Base64 Encoding aləti ilə daxil etdiyiniz mətni Base64 metodu ilə şifrələyə bilərsiniz. İstəyirsinizsə, Base64 Decode aləti ilə şifrələnmiş Base64 kodunu deşifrə edə bilərsiniz.
Base64 Kodlaşdırma nədir?
Base64 Encoding ikili verilənlərin yalnız bəzi məhdud xarakter kodlaşdırmalarından (xml, html, skript, ani mesajlaşma proqramları kimi bütün simvol kodlarının istifadə edilə bilməyəcəyi mühitlər) istifadə edən mühitlərdə daşınmasına imkan verən kodlaşdırma sxemidir. Bu sxemdəki simvolların sayı 64-dür və Base64 sözündəki 64 rəqəmi buradan gəlir.
Niyə Base64 Encoding istifadə edin?
Base64 kodlaşdırmasına ehtiyac medianın xam binar formatda mətn əsaslı sistemlərə ötürülməsi zamanı yaranan problemlərdən qaynaqlanır. Mətn əsaslı sistemlər (məsələn, e-poçt) ikili məlumatları xüsusi əmr simvolları da daxil olmaqla geniş simvol diapazonu kimi şərh etdiyinə görə, ötürmə mühitinə ötürülən ikili məlumatların əksəriyyəti bu sistemlər tərəfindən yanlış şərh olunur və ötürülmə zamanı itirilir və ya korlanır. proses.
Bu cür ikili verilənləri belə ötürmə problemlərindən qaçacaq şəkildə kodlaşdırmağın üsullarından biri onları Base64 kodlu formatda düz ASCII mətn kimi göndərməkdir. Bu, MIME standartının düz mətndən başqa məlumatları göndərmək üçün istifadə etdiyi üsullardan biridir. PHP və Javascript kimi bir çox proqramlaşdırma dilləri Base64 kodlaşdırması ilə ötürülən məlumatları şərh etmək üçün Base64 kodlaşdırma və dekodlaşdırma funksiyalarını ehtiva edir.
Base64 Kodlaşdırma Məntiqi
Base64 kodlaşdırmasında 3 baytdan ibarət 3 * 8 bit = 24 bit verilənlər 6 bitlik 4 qrupa bölünür. Bu 4 6-bitlik qrupun [0-64] arasındakı onluq qiymətlərinə uyğun gələn simvollar kodlaşdırmaq üçün Base64 cədvəlindən uyğunlaşdırılır. Base64 kodlaşdırması nəticəsində əldə edilən simvolların sayı 4-ə çox olmalıdır. 4-ə qat olmayan kodlaşdırılmış məlumat etibarlı Base64 datası deyil. Base64 alqoritmi ilə kodlaşdırma zamanı, kodlaşdırma tamamlandıqda, verilənlərin uzunluğu 4-ə qat deyilsə, kodlaşdırmanın sonuna 4-ə qatlanana qədər "=" (bərabər) simvolu əlavə olunur. Məsələn, kodlaşdırma nəticəsində 10 simvoldan ibarət Base64 kodlu məlumatımız varsa, sonuna iki "==" əlavə edilməlidir.
Base64 kodlaşdırma nümunəsi
Məsələn, üç ASCII rəqəmini götürün 155, 162 və 233. Bu üç ədəd 100110111010001011101001 ikili axını təşkil edir. Şəkil kimi ikili fayl on və ya yüz minlərlə sıfır və birlər üçün işləyən ikili axın ehtiva edir. Base64 kodlayıcısı binar axını altı simvoldan ibarət qruplara bölməklə başlayır: 100110 111010 001011 101001. Bu qruplaşmaların hər biri 38, 58, 11 və 41 rəqəmlərinə çevrilir. Altı simvollu ikili axın ikili (və ya əsas) arasında çevrilir. 2) ikilik massivdə 1 ilə təmsil olunan hər bir dəyəri mövqe kvadratı ilə kvadratlaşdırmaqla onluq (əsas-10) simvollara. Sağdan sola doğru hərəkət edərək sıfırdan başlayaraq ikili axındakı dəyərlər 2^0, sonra 2^1, sonra 2^2, sonra 2^3, sonra 2^4, sonra 2^-ni təmsil edir. 5.
Baxmağın başqa yolu budur. Soldan başlayaraq hər mövqe 1, 2, 4, 8, 16 və 32-yə bərabərdir. Slotun ikili nömrəsi 1 varsa, siz bu dəyəri əlavə edirsiniz; slotda 0 varsa, siz itkinsiniz. İkili massiv 100110 38 dönər: 0 * 2 ^ 01 + 1 * 2 ^ 1 + 1 * 2 ^ 2 + 0 * 2 ^ 3 + 0 * 2 ^ 4 + 1 * 2 ^ 5 = 0 + 2 onluq + 4 + 0 + 0 + 32. Base64 kodlaşdırması bu ikili sətri götürür və onu 38, 58, 11 və 41-lik 6 bitlik dəyərlərə bölür. Nəhayət, bu nömrələr Base64 kodlaşdırma cədvəlindən istifadə edərək ASCII simvollarına çevrilir.