RUNWEBTOOLS
Nederlands
Dataformaten & codering

Base64-codering uitgelegd: wat het is en wanneer je het gebruikt

Bijgewerkt 2026-07-06

Base64 is zo'n term die voortdurend opduikt — in data-URI's, e-mailbijlagen, API-tokens en configuratiebestanden — maar zelden helder wordt uitgelegd. Het wordt vaak aangezien voor versleuteling, wat tot echte beveiligingsfouten leidt. Deze gids legt uit wat Base64 werkelijk doet, waarom het data groter maakt, waar het echt nuttig is en welke mythes je moet afleren.

Wat Base64 is

Base64 is een codering, geen versleuteling of compressie. Zijn taak is willekeurige binaire data — een afbeelding, een bestand, elke reeks bytes — weer te geven met slechts 64 „veilige” teksttekens: A–Z, a–z, 0–9, plus + en / (met = als opvulling). Elk van die tekens overleeft systemen die gebouwd zijn om platte tekst te verwerken, en dat is precies de reden dat Base64 bestaat.

Waarom het nodig is

Veel oude maar nog steeds cruciale systemen — e-mail is het klassieke voorbeeld — zijn ontworpen om tekst te verplaatsen, niet ruwe binaire data. Binaire data er rechtstreeks doorheen sturen kan de data beschadigen: bepaalde bytewaarden worden als stuurtekens geïnterpreteerd, verwijderd of verminkt. Base64 omzeilt het probleem door binair te vertalen naar een tekstvorm die ongeschonden doorkomt, en die aan de andere kant terug te vertalen.

Conceptueel ziet de heen-en-terugreis er zo uit:

binaire data  →  Base64-tekst        →  binaire data
(origineel)      (veilig te versturen)   (identieke kopie)

Waarom Base64 data ~33% groter maakt

Niets is gratis. Base64 neemt drie invoerbytes (24 bits) en splitst ze in vier groepen van 6 bits, elk toegewezen aan een van de 64 tekens. Drie bytes erin, vier tekens eruit — dus de gecodeerde uitvoer is ongeveer een derde groter dan het origineel. Die overhead is de prijs om binair veilig als tekst te verzenden, en de reden waarom je grote bestanden niet zonder goede reden in Base64 moet coderen.

Waar je het echt zult zien

Data-URI's

Je kunt een kleine afbeelding rechtstreeks in HTML of CSS insluiten als een Base64-data-URI, waarmee je een aparte netwerkaanvraag vermijdt:

<img src="data:image/png;base64,iVBORw0KGgoAAAANSUh..." />

Handig voor piepkleine iconen, maar door de 33%-groottestraf een slechte keuze voor iets groots.

E-mailbijlagen

Onder de motorkap worden e-mailbijlagen in Base64 gecodeerd zodat binaire bestanden ongeschonden door het tekstgebaseerde e-mailsysteem reizen.

Tokens en configuratie

Tokens en inloggegevens worden vaak in Base64 gecodeerd zodat ze veilig in headers, URL's of tekstconfiguraties passen. Een JWT (JSON Web Token) bestaat bijvoorbeeld uit drie Base64-gecodeerde secties verbonden door punten — precies waarom een JWT-decoder de inhoud direct kan lezen.

De beveiligingsmythe

Dit is het belangrijkste om te begrijpen: Base64 is geen versleuteling en biedt geen enkele beveiliging. Er is geen sleutel en geen geheim — iedereen kan Base64 in een fractie van een seconde terugdecoderen naar de originele data. Zie je een wachtwoord of API-sleutel die alleen door Base64 „beschermd” is, behandel het dan als platte tekst, want dat is het feitelijk.

Base64 beantwoordt de vraag „hoe verplaats ik deze data veilig via een tekstkanaal?” — niet „hoe houd ik deze data geheim?”. Voor geheimhouding heb je echte versleuteling nodig. Het is gebruikelijk de twee te combineren: versleutel eerst, codeer dan het versleutelde resultaat in Base64 zodat het als tekst kan worden verzonden.

Base64 en URL's

Standaard-Base64 gebruikt + en /, die speciale betekenissen in URL's hebben en beschadigd kunnen raken als ze als queryparameters worden doorgegeven. Een variant genaamd Base64URL vervangt ze door - en _ en laat de opvulling weg, waardoor de uitvoer veilig rechtstreeks in een URL past. Worstel je ook met tekens als spaties of ampersands in een URL, dan is dat werk voor URL-codering — een ander gereedschap voor een ander probleem.

Het zelf coderen en decoderen

Je hoeft Base64 zelden met de hand te doen, maar je moet het vaak inspecteren of produceren — een data-URI lezen, controleren wat er in een token zit, of een ingesloten afbeelding maken. Onze Base64-encoder en -decoder zet tekst in beide richtingen direct om en volledig in je browser, zodat zelfs gevoelige waarden je apparaat nooit verlaten. Plak Base64 om het origineel te zien, of plak tekst om de gecodeerde vorm te krijgen.

De samenvatting in één zin

Base64 verandert binair in veilige tekst en terug, tegen de prijs van ongeveer 33% meer grootte, en biedt nul geheimhouding. Gebruik het om data te vervoeren, nooit om ze te beschermen.

Meer over Dataformaten & codering

Alle Dataformaten & codering-gidsen bekijken →

Tools genoemd in deze gids