Base64 je pozicioni brojevni sistem sa osnovom od 64 ASCII (Američki standardni kod za razmenu informacija) znaka za štampanje. Sistem se koristi, na primer, za predstavljanje binarnih datoteka u e-pošti. Sve Base64 varijante koriste znakove A-Z, a-z i 0-9, ukupno 62 znaka, dva znaka koja nedostaju su zamenjena različitim znakovima u sistemima implementacije. Svaka tri originalna bajta su kodirana sa četiri znaka.
Istorija Base64
U početku je samo tekst mogao da se šalje putem e-pošte (RFC 822). Vremenom je, uz tekst, bilo potrebno preneti audio, video i grafičke fajlove, aplikacije itd. Pojavila se potreba da se binarni fajl konvertuje u tekst. Base64 je dodat tada postojećem UUE kodiranju (Uuencode), koje se koristi u specifikaciji MIME (višenamenske ekstenzije Internet pošte) (RFC 2045-2049).
MIME je standard za opisivanje zaglavlja u elektronskim porukama. Njegova upotreba vam omogućava da pošaljete nekoliko priloga u jednom pismu, na primer, arhivirane i tekstualne datoteke ili HTML stranice. Program za e-poštu koji podržava MIME slobodno izvlači arhivu iz tekstualne datoteke, prikazuje poruku i analizira HTML oznake. Na primer, Outlook Ekpress automatski pokreće skripte ugrađene u HTML stranicu.
Base64 je rođen u eri sedmo-, šest- i tro-bitnih bajtova. Stara kodiranja nisu podržavala osmobitni standard, zbog toga je deo informacija izgubljen pri prenošenju iz starog sistema u novi. Često, prilikom slanja pisama, mail server je ispustio dodatni, osmi, bit ili nije prenosio video i slike. Da bi se eliminisali takvi problemi, razvijena su kodiranja za pretvaranje binarnog koda u tekst. Najpopularniji i najefikasniji sistem je Base64, koji se zbog svoje jednostavnosti koristi svuda.
Algoritam pod nazivom „kodiranje za štampanje“ prvi put je opisan 1987. godine, Base64 se pojavio u junu 1992. godine. Verzije ovog sistema su Base16, Base32, Base36, Base58, Base85, Base91 i Base122. Kasniji standardi se aktivno koriste u IT oblasti.
Zanimljiva činjenica
Neki sistemi koriste Base58 za kodiranje URL-ova, koji se razlikuje od Base64 po odsustvu znakova u konačnom tekstu koji osoba može dvosmisleno da shvati. 0 (nula), O (velika latinica o), I (velika latinica i), l (mala latinica L) su isključeni. Takođe su isključeni znakovi + (plus) i / (kosa crta), koji prilikom kodiranja URL-a mogu dovesti do netačne interpretacije adrese.
Base64 pruža reverzibilno i povratno kodiranje. Usluga prevodi karaktere osmobitne tabele kodova u znakove koji se čuvaju tokom prenosa informacija u mrežama i između uređaja.