Base64 er et positionsnummersystem med en base på 64 printbare ASCII-tegn (American Standard Code for Information Interchange). Systemet bruges for eksempel til at præsentere binære filer i e-mail. Alle Base64-varianter bruger tegnene A-Z, a-z og 0-9, 62 tegn i alt, de manglende to tegn erstattes af forskellige tegn i implementeringssystemer. Hver tredje originale bytes er kodet med fire tegn.
Historie for Base64
I starten kunne kun tekst sendes via e-mail (RFC 822). Med tiden var det sammen med teksten nødvendigt at overføre lyd-, video- og grafikfiler, applikationer osv. Der var behov for at konvertere en binær fil til tekst. Base64 blev føjet til den dengang eksisterende UUE-kodning (Uuencode), som bruges i MIME-specifikationen (Multipurpose Internet Mail Extensions) (RFC 2045-2049).
MIME er en standard til at beskrive overskrifter i elektroniske meddelelser. Dens brug giver dig mulighed for at sende flere vedhæftede filer i ét brev, for eksempel arkiverede og tekstfiler eller HTML-sider. Et MIME-bevidst e-mail-program udtrækker frit arkivet fra en tekstfil, viser beskeden og analyserer HTML-tags. For eksempel kører Outlook Express automatisk scripts, der er indlejret i en HTML-side.
Base64 blev født i en æra med syv-, seks- og tre-bit bytes. Gamle kodninger understøttede ikke otte-bit standarden, på grund af dette gik en del af informationen tabt, når den blev overført fra det gamle system til det nye. Ofte, når man sendte breve, faldt mailserveren en ekstra, ottendedel, bit eller transmitterede ikke video og billeder. For at eliminere sådanne problemer blev der udviklet kodninger til konvertering af binær kode til tekst. Det mest populære og effektive system er Base64, på grund af dets enkelhed bruges det overalt.
En algoritme kaldet "encoding for printing" blev først beskrevet i 1987, Base64 udkom i juni 1992. Versionerne af dette system er Base16, Base32, Base36, Base58, Base85, Base91 og Base122. Senere standarder bruges aktivt på it-området.
Interessant fakta
Nogle systemer bruger Base58 til at kode URL'er, hvilket adskiller sig fra Base64 ved fraværet af tegn i den endelige tekst, som kan opfattes tvetydigt af en person. 0 (nul), O (stor latin o), I (stor latin i), l (lille latin L) er undtaget. Tegnene + (plus) og / (skråstreg) er også udelukket, som ved indkodning af en URL kan føre til forkert fortolkning af adressen.
Base64 giver reversibel og genskabelig kodning. Tjenesten oversætter tegnene i otte-bit kodetabellen til tegn, der bevares under overførsel af information i netværk og mellem enheder.