Mikä on Base64?

Base64 on tapa muuntaa mielivaltaiset binääritiedot, jotka sisältävät enemmän kuin pelkkiä tekstimerkkejä, pelkiksi tekstiviesteiksi, jotka voidaan sitten siirtää tietokoneverkon yli. Sitä kutsutaan koodaukseksi. Vaikka base64 -koodatun viestin tulostus ei ole sellainen, mitä ihminen voi helposti ymmärtää, se koostuu silti 64 yleisestä englanninkielisestä merkistä, mistä nimi tulee, ja lisäksi 65. merkki, jota käytetään erityistarkoituksiin.

Idea base64: stä syntyi, kun syntyi tarve saada enemmän kuin yksinkertaisia ​​tekstimerkkejä verkkoviestinnän, kuten sähköpostin, kautta. Ensimmäiset sähköpostiviestit alkoivat merkeinä, jotka on koodattu American Standard Code for Information Interchange (ASCII) -koodausmenetelmään. Kun tarvittiin lisätietoja binääritiedoista, kehitettiin uusia koodausmalleja.

Base64 -koodausmenetelmä kuvattiin ensin MIME (Multipurpose Internet Mail Extensions) -standardissa. MIME-standardi määritteli menetelmät, joilla muut merkit, joita ei ole ASCII-koodattu, kuten aakkoset, joita muut kuin englanninkieliset kielet käyttävät, sekä muut mielivaltaiset binääritiedot voidaan myös koodata ASCII-sekvensseiksi ja lähettää sähköpostiviesteillä. MIME-standardin kuvaamista kahdesta ensisijaisesta koodausmenetelmästä base64 jakaa roolin toisen kanssa, joka tunnetaan nimellä noteerattu tulostettava. Vaikka lainattu-tulostettava menetelmä pystyy laajentamaan ASCII: tä jonkin verran sen rajoitetun 94 tulostettavan merkin yli, base64 voi ottaa minkä tahansa tavusekvenssin ja muuntaa sen ASCII-sekvenssiksi.

Base64: n on otettava datajoukot, jotka eivät muuten täytä ASCII -standardia, ja muunnettava ne ASCII -muotoon. Tätä varten koodausmenetelmä on prosessi, joka kerää tiedot kolmen tavun ryhmiin ja muuntaa ne neljään numeroon, jotka edustavat vastaavia ASCII -merkkejä. Koska tavu on kahdeksan bittiä, jolloin jokainen bitti on joko yksi tai nolla, kolme tavua on linkitetty päästä päähän ja koko sekvenssi menee 24-bittiseen puskuriin. 24 ykköstä ja nollaa jaetaan sitten neljään kuuden bitin ryhmään, joista jokaiselle annetaan sitten ASCII -merkkiä vastaavat numerot.

Koska base64 pystyy koodaamaan mitä tahansa binääridataa, mikä tahansa tavusekvenssi voi käydä läpi prosessin. On kuitenkin saalis niissä tapauksissa, joissa koodauksen tavujen määrä ei jakaudu kolmella, jotta bitit mahtuvat puskuriin. Jos tavusekvenssi sisältää esimerkiksi neljä tai viisi tavua, puskurin täyttämiseksi ja 24 -bitin täyttämiseksi tarvitaan vielä jotain. Näissä tapauksissa kutakin puuttuvaa tavua edustaa kahdeksan 0: ta, ja se muunnetaan sitten täytetyiksi merkeiksi valmiissa koodauksessa. Tästä tulee aiemmin mainittu 65. merkki, jota edustetaan koodatussa viestissä yhtäläisyysmerkillä (=); se näkyy vain koodauksen lopussa, jos täyteaine on tarpeen.

Vaikka base64 suunniteltiin alun perin binääridatan lähettämiseksi sähköpostiviestien välityksellä, sen käyttö on tullut käyttöön monilla muilla alueilla MIMEn lisäksi. Yksi tällainen melko yleinen käyttötarkoitus on, että verkkotietokannat ja -sovellukset koodaavat tietoja, jotta voidaan luoda yhtenäinen resurssipaikannin (URL) verkkolomakkeelle. Laajennettavissa oleva merkintäkieli (XML) käyttää myös varianttia, joka mahdollistaa binääridatan, kuten pienten kuvien, sisällyttämisen XML -asiakirjoihin. Salausmenetelmille ja muille turvallisuuteen liittyville tekniikoille, kuten salasanojen piilottamiselle, on muitakin muunnelmia.