Base64 encoder / decoder
Gratis online Base64 encoder en decoder. Encodeer tekst of bestanden naar Base64 of decodeer Base64 terug naar leesbare tekst.
Sleep bestand of Bladeren
Privé en veilig
Verwerking volledig lokaal. Je data wordt nooit geüpload naar een server.
Bestandsondersteuning
Converteer eenvoudig afbeeldingen, documenten of binaire bestanden naar Base64.
Offline klaar
Werkt zonder internetverbinding na het laden.
Veelgestelde vragen
Wat is Base64-codering en waarvoor wordt het gebruikt?
Base64 is een binaire-naar-tekst-codeerschema dat binaire gegevens omzet in een ASCII-tekenreeksformaat met behulp van 64 tekens (A-Z, a-z, 0-9, +, /). Het wordt voornamelijk gebruikt om binaire gegevens te verzenden via op tekst gebaseerde protocollen zoals HTTP, SMTP of in JSON-payloads. Veelvoorkomende toepassingen zijn e-mailbijlagen via MIME, het insluiten van afbeeldingen in HTML en CSS als data-URL's, het coderen van payloads in JSON Web Tokens (JWT) en het opslaan van binaire gegevens in op tekst gebaseerde databasekolommen.
Is Base64-versleuteling? Is het veilig?
Nee. Base64 is een codeerschema, geen versleuteling. Iedereen die een Base64-gecodeerde tekenreeks heeft, kan deze direct terug decoderen naar de oorspronkelijke gegevens zonder dat hiervoor een sleutel, wachtwoord of geheim nodig is. Het biedt geen vertrouwelijkheid, integriteit of authenticatie. Zie het als een manier om dezelfde gegevens in een ander formaat weer te geven — zoals het vertalen van Engels naar morsecode. Als u gevoelige gegevens wilt beschermen, gebruik dan eerst een goed versleutelingsalgoritme (zoals AES) en codeer de versleutelde bytes vervolgens eventueel met Base64 voor transport.
Waarom eindigt Base64 soms met =- of ==-tekens?
Het =-teken is opvulling. Base64 verwerkt invoergegevens in groepen van 3 bytes (24 bits) en produceert 4 Base64-tekens per groep. Wanneer de invoerlengte geen veelvoud van 3 bytes is, voegt de codering opvultekens = toe om de uitvoer een veelvoud van 4 tekens te maken. Er wordt één = toegevoegd wanneer er 2 bytes overblijven, en twee =-tekens worden toegevoegd wanneer er slechts 1 byte overblijft. "Man" (3 bytes) wordt bijvoorbeeld gecodeerd naar "TWFu" zonder opvulling, maar "Ma" (2 bytes) wordt gecodeerd naar "TWE=" en "M" (1 byte) naar "TQ==".
Maakt Base64 gegevens groter? Hoeveel overhead voegt het toe?
Ja, Base64-codering vergroot de gegevens met ongeveer 33%. Voor elke 3 bytes binaire invoer is de uitvoer 4 bytes, plus optionele opvulling. Een binair bestand van 3 MB wordt dus ruwweg 4 MB wanneer het met Base64 wordt gecodeerd. Dit is de prijs voor het kunnen verzenden van binaire gegevens via kanalen die alleen tekst ondersteunen. Vergeleken met andere binaire-naar-tekst-coderingen is Base64 relatief efficiënt — hexadecimale codering voegt bijvoorbeeld 100% overhead toe.
Wat is het verschil tussen standaard Base64 en Base64url?
Standaard Base64 gebruikt + en / in het alfabet en = voor opvulling. Base64url (URL-veilige Base64) vervangt + door - en / door _, en laat de opvulling meestal weg. Hierdoor is Base64url veilig te gebruiken in URL's, queryparameters en bestandsnamen zonder extra procent-codering. Base64url is gedefinieerd in RFC 4648 en wordt op grote schaal gebruikt in JSON Web Tokens (JWT), OAuth-tokens en web-API's. Een standaard Base64-tekenreeks zoals Pj4+Pz8/Pw== wordt bijvoorbeeld Pj4-Pz8_Pw in Base64url.
Wat is een Base64-data-URL en hoe wordt deze gebruikt in HTML en CSS?
Een data-URL is een URI-schema dat gegevens rechtstreeks in een webdocument insluit. Voor afbeeldingen is het formaat data:image/png;base64,iVBORw0KGgo.... Het kan worden gebruikt in plaats van een bestands-URL in HTML-<img>-tags en CSS-background-image-eigenschappen. Data-URL's elimineren de noodzaak van een afzonderlijk HTTP-verzoek om de afbeelding te laden, wat de prestaties voor kleine assets (doorgaans onder 10 KB) kan verbeteren. Ze vergroten echter de bestandsgrootte van HTML/CSS met ongeveer 33% en voorkomen dat de browser de afbeelding onafhankelijk in de cache opslaat.
Kun je elk bestand naar Base64 converteren?
Ja — elke binaire gegevens, of het nu tekst, een afbeelding, audio, video, een PDF of een gecomprimeerd archief is, kunnen naar Base64 worden gecodeerd. Het proces is hetzelfde: lees de onbewerkte bytes van het bestand en pas het Base64-coderingsalgoritme toe. Wanneer u de Base64-tekenreeks decodeert, krijgt u de exacte oorspronkelijke bytes terug. Zo werken e-mailbijlagen — het binaire bestand wordt met Base64 gecodeerd voordat het via SMTP wordt verzonden en aan de ontvangende kant terug gedecodeerd naar het oorspronkelijke bestand.
Hoe ga ik om met Unicode-tekens (zoals emoji of Chinese tekst) bij het coderen van Base64 in JavaScript?
De ingebouwde functie btoa() werkt alleen met Latin-1-tekens (enkelbyte-tekens). Voor Unicode-tekenreeksen met emoji, Chinese tekens of andere multibyte-tekens moet u eerst converteren naar bytes met behulp van de TextEncoder-API: In Node.js verwerkt de Buffer-klasse Unicode standaard: Buffer.from('Hello 你好 🚀').toString('base64') werkt zonder speciale afhandeling.