Co je Base64?

Base64 je metoda pro převod libovolných binárních dat, dat složených z více než pouhých textových znaků, na prostou textovou zprávu, která může být poté přenesena přes počítačovou síť. Tomu se říká kódování. Zatímco výstup zprávy kódované base64 není něčím, čemu člověk může snadno porozumět, stále se skládá ze 64 běžných znaků anglického jazyka, z nichž název pochází, s dalším 65. znakem používaným pro zvláštní účely.

Myšlenka za základem64 se objevila, když vznikla potřeba získat více než jednoduché textové znaky prostřednictvím síťové komunikace, jako je e-mail. První e-mailové zprávy začínaly jako znaky kódované v americkém standardním kódu pro výměnu informací (ASCII), což je metoda kódování používaná v počítačích pro reprezentaci znaků abecedy v anglickém jazyce jako text na displeji nebo tiskárně. Jako další binární informace potřebné k průchodu, byly vyvinuty nové kódovací schémata.

Metoda kódování base64 byla poprvé popsána v tzv. Standardu MIME (Multipurpose Internet Mail Extensions). Standardně definované metody MIME, kterými lze do ASCII sekvencí kódovat i jiné znaky, které nebyly kódovány ASCII, jako jsou například abecedy používané neanglickými jazyky, a další libovolná binární data a přenášet je prostřednictvím e-mailových zpráv. Ze dvou primárních prostředků kódování popsaných standardem MIME, base64 sdílí roli s jiným známým jako citovatelný tisk. Zatímco citovaná metoda pro tisk je schopna rozšířit ASCII poněkud za její omezené 94 tisknutelných znaků, base64 může vzít jakoukoli sekvenci bajtů a převést ji na ASCII sekvenci.

Base64 musí vzít řetězce dat, která by jinak nesplňovala standard ASCII, a převést je na ASCII. Za tímto účelem je metoda kódování proces shromažďování dat do skupin po třech bajtech a jejich převádění na čtyři čísla, která představují odpovídající znaky ASCII. Protože bajt je osm bitů, kde každý bit je reprezentován buď jedním, nebo nulou, jsou spojeny tři bajty od začátku do konce a celá sekvence přechází do 24bitové vyrovnávací paměti. Těch 24 a nul je pak rozděleno do čtyř skupin po šesti bitech, kde každé je pak přiřazena čísla, která odpovídají znaku ASCII.

Protože base64 je schopen kódovat jakákoli binární data, může tímto procesem projít jakákoli sekvence bytů. Existuje však háček v těch případech, kdy počet bajtů pro kódování nelze dělit třemi, takže bity se vejdou do vyrovnávací paměti. Pokud bajtová sekvence obsahuje, řekněme, čtyři nebo pět bajtů, je stále potřeba něco naplnit vyrovnávací paměť a doplnit celých 24 bitů. V těchto případech je každý chybějící bajt reprezentován osmi 0 s a následně je v hotovém kódování převeden na výplňové znaky. Odtud pochází výše uvedený 65. znak, představovaný v kódované zprávě znakem rovnosti (=); objevuje se vždy až na samém konci kódování, pokud je potřeba výplň.

Přestože byla základna původně navržena pro přenos binárních dat prostřednictvím e-mailových zpráv, její využití se začalo hrát v řadě dalších oblastí kromě MIME. Jedním takovým běžným způsobem je použití webových databází a aplikací pro kódování dat pro vytvoření jednotného vyhledávače zdrojů (URL) ve webovém formuláři. Rozšiřitelný značkovací jazyk (XML) také používá variantu, která umožňuje zahrnutí binárních dat, jako jsou malé obrázky, do dokumentů XML. Pro varianty šifrování a další techniky související se zabezpečením existují jiné variace, například skrytí hesel.

JINÉ JAZYKY

Pomohl vám tento článek? Děkuji za zpětnou vazbu Děkuji za zpětnou vazbu

Jak můžeme pomoci? Jak můžeme pomoci?