Base64 Kodearring

Mei it Base64 Encoding-ark kinne jo de tekst dy't jo ynfiere fersiferje mei de Base64-metoade. As jo ​​​​wolle, kinne jo de fersifere Base64-koade ûntsiferje mei it Base64 Decode-ark.

Wat is Base64-kodearring?

Base64 Kodearring is in kodearring skema wêrmei binêre gegevens wurde ferfierd op omjouwings dy't brûke mar guon beheinde karakter kodearring (omjouwings dêr't net alle karakter koades kinne brûkt wurde, lykas xml, html, skript, instant messaging applikaasjes). It oantal karakters yn dit skema is 64, en it nûmer 64 yn it wurd Base64 komt hjirwei.

Wêrom brûke Base64-kodearring?

De needsaak foar Base64-kodearring komt út problemen dy't ûntsteane as media yn rau binêre opmaak wurde oerbrocht nei tekstbasearre systemen. Om't tekstbasearre systemen (lykas e-post) binêre gegevens ynterpretearje as in breed skala oan karakters, ynklusyf spesjale kommando-karakters, wurde de measte binêre gegevens dy't oerbrocht binne nei it oerdrachtmedium ferkeard ynterpretearre troch dizze systemen en binne ferlern of beskeadige yn 'e oerdracht proses.

Ien metoade foar it kodearjen fan sokke binêre gegevens op in manier dy't sokke oerdrachtproblemen foarkomt is om se te stjoeren as gewoane ASCII-tekst yn Base64-kodearre formaat. Dit is ien fan 'e techniken dy't brûkt wurdt troch de MIME-standert om oare gegevens as gewoane tekst te ferstjoeren. In protte programmeartalen, lykas PHP en Javascript, omfetsje Base64-kodearjen en dekodearjen fan funksjes om gegevens te ynterpretearjen dy't oerdroegen wurde mei Base64-kodearring.

Base64 kodearring logika

Yn Base64 kodearring, 3 * 8 bits = 24 bits fan gegevens besteande út 3 bytes wurde ferdield yn 4 groepen fan 6 bits. De karakters dy't oerienkomme mei de desimale wearden tusken [0-64] fan dizze 4 6-bit groepen wurde oerienkomme mei de Base64-tabel om te kodearjen. It oantal karakters krigen as gefolch fan Base64-kodearring moat in mearfâld fan 4 wêze. Kodearre gegevens dy't net in mearfâldichheid fan 4 is net jildich Base64 gegevens. By kodearring mei it Base64-algoritme, as de kodearring foltôge is, as de lingte fan de gegevens net in mearfâld fan 4 is, wurdt it "=" (lykweardich) karakter tafoege oan it ein fan 'e kodearring oant it in mearfâld fan 4 is. As wy bygelyks 10-karakter Base64 kodearre gegevens hawwe as gefolch fan 'e kodearring, moatte twa "==" oan it ein tafoege wurde.

Foarbyld fan Base64-kodearring

Nim bygelyks de trije ASCII-nûmers 155, 162 en 233. Dizze trije nûmers foarmje in binêre stream fan 100110111010001011101001. In binêre triem lykas in ôfbylding befettet in binêre stream dy't wurket foar tsientallen of hûnderttûzenen nullen en ienen. In Base64-kodearder begjint mei it splitsen fan de binêre stream yn groepen fan seis karakters: 100110 111010 001011 101001. Elk fan dizze groepearrings wurdt oerset yn nûmers 38, 58, 11 en 41. In binêre stream fan seis tekens wurdt konvertearre tusken binêr (as basis). 2) nei desimaal (basis-10) karakters troch elke wearde fertsjintwurdige troch 1 yn 'e binêre array te kwadraatsjen troch it posysjonele fjouwerkant. Begjinnend fan rjochts en ferpleatse nei lofts en begjinnend by nul, fertsjintwurdigje de wearden yn 'e binêre stream 2^0, dan 2^1, dan 2^2, dan 2^3, dan 2^4, dan 2^ 5.

Hjir is in oare manier om it te sjen. Fanôf links is elke posysje wurdich 1, 2, 4, 8, 16 en 32. As it slot hat in binêre getal 1, jo tafoegje dy wearde; as it slot hat 0, do mist. Binary array 100110 draait 38: 0 * 2 ^ 01 + 1 * 2 ^ 1 + 1 * 2 ^ 2 + 0 * 2 ^ 3 + 0 * 2 ^ 4 + 1 * 2 ^ 5 = 0 + 2 desimaal + 4 + 0 + 0 + 32. Base64-kodearring nimt dizze binêre tekenrige en dielt it yn 6-bit wearden 38, 58, 11 en 41. Uteinlik wurde dizze nûmers omboud ta ASCII-tekens mei de Base64-kodearringstabel.