Base64 Encoder / Decoder Online – Tekst & URL-safe UTF-8
Wilt u leesbare tekst omzetten naar Base64-formaat voor gebruik in HTTP-headers, of de inhoud van een API-token ontcijferen? Onze Base64 Tekst Encoder & Decoder is een gespecialiseerd hulpmiddel voor het werken met tekststrings, dat zelfs overweg kan met lastige zaken zoals diakritische tekens of speciale symbolen.
Werkt u met afbeeldingen?
Als uw code begint metdata:image/png...of u een bestand naar tekst wilt converteren, toont deze tool alleen onzinnige tekens. Gebruik onze gespecialiseerde tool voor het converteren naar afbeeldingen.
Hoe werkt het Base64-formaat?
Velen gebruiken Base64 dagelijks, maar weinigen weten hoe het ‘onder de motorkap’ werkt. Het is geen magie, maar eenvoudige bit-wiskunde.
Gewone tekst op een computer wordt opgeslagen in 8-bits eenheden (1 byte). Base64 gebruikt echter een ‘alfabet’ van 64 tekens (A-Z, a-z, 0-9, +, /). Omdat 2^6 = 64, vertegenwoordigt één Base64-teken precies 6 bits aan informatie.
Conversieproces (Algoritme):
- Neem drie tekens van uw tekst (3 × 8 bits = 24 bits).
- Deze 24 bits worden verdeeld in vier groepen van elk 6 bits.
- Aan elke groep wordt een teken uit de Base64-tabel toegewezen.
Resultaat: Omdat we van 3 tekens 4 tekens maken, is de resulterende Base64-string altijd ongeveer 33% langer dan de originele tekst.
Het tekensetprobleem: Waarom standaard Base64-converters uw tekst bederven?
Als u ooit het woord “Kůň” in de browserconsole probeerde te coderen met de functie btoa('Kůň'), kreeg u waarschijnlijk de foutmelding: String contains characters outside of the Latin1 range.
Base64 is oorspronkelijk ontworpen voor 7-bits ASCII-tekens. Echter, Nederlandse tekens, emoji en andere speciale symbolen (UTF-8) nemen meer bytes in beslag in het geheugen (multibyte-tekens).
- Letter
a= 1 byte. - Een letter met diakritisch teken (bijv.
ë) = 2 bytes. - Emoji 🚀 = 4 bytes.
Onze tool lost dit probleem op. Voordat de tekst naar Base64 wordt gecodeerd, converteren we deze correct naar een reeks UTF-8-bytes. Hierdoor kunt u veilig JSON-objecten, Nederlandse teksten en moderne symbolen coderen zonder risico op gegevensbeschadiging.
Waar wordt Base64 tekstcodering gebruikt?
Hoewel Base64-afbeeldingen voornamelijk dienen voor het insluiten in CSS/HTML, heeft tekstuele Base64 een heel andere toepassing in backend-systemen:
1. HTTP Basic Authenticatie
Wanneer u inlogt bij een API, ziet de header er vaak zo uit:
Authorization: Basic dXppdmF0ZWw6aGVzbG8=
Achter deze code schuilt een eenvoudig gecombineerde gebruikersnaam en wachtwoord in het formaat gebruikersnaam:wachtwoord. Onze tool stelt u in staat deze headers eenvoudig te genereren of te controleren.
2. JSON Web Tokens (JWT)
Moderne webapplicaties gebruiken zogenaamde JWT’s voor authenticatie. Zo’n token ziet eruit als drie lange strings gescheiden door een punt. Het gegevensgedeelte (Payload) is een gewoon JSON-object, gecodeerd in Base64.
- Tip: Probeer het middelste deel van uw JWT-token hier in te voegen en te decoderen. U zult precies zien welke gegevens de applicatie over u bijhoudt (bijv. gebruikers-ID, vervaldatum).
3. Configuratiebestanden (Kubernetes Secrets)
Platformen zoals Kubernetes slaan geheime gegevens (Secrets) in YAML-configuratiebestanden op, gecodeerd in Base64. Dit is geen encryptie, maar een manier om binaire gegevens of tekst met problematische tekens (nieuwe regels, aanhalingstekens) in een tekstbestand op te slaan.
Wat is “URL Safe Base64-codering” en waarom is het belangrijk?
Het standaard Base64-alfabet bevat de tekens + (plus) en / (schuine streep). Beide tekens hebben een speciale betekenis in URL-adressen:
/scheidt mappen.+wordt vaak geïnterpreteerd als een spatie.
Als u standaard Base64 in een URL-parameter zou verzenden (bijv. site.com?token=ab/cd+ef), zou de server de gegevens verkeerd kunnen interpreteren.
De oplossing (URL Safe-modus): Onze schakelaar activeert de Base64URL-variant (volgens RFC 4648), die de volgende wijzigingen aanbrengt:
+verandert in-(liggend streepje)./verandert in_(underscore).- Aan het einde worden de
=tekens (padding) verwijderd, die in URL’s niet nodig zijn.
Mythe: Base64 is geen encryptie!
Het is belangrijk om het fundamentele verschil te begrijpen dat beginners vaak verwarren:
- Codering (Encoding - Base64): Dient voor gegevensoverdracht. Het is alsof je iets inpakt in een koffer, zodat het onderweg niet breekt. Iedereen die de koffer vindt, kan hem openen (decoderen) en de inhoud zien. Het is niet veilig voor geheime gegevens.
- Versleuteling (Encryption - AES, RSA): Vergrendelt gegevens met een sleutel. Zonder de sleutel heeft u geen toegang tot de inhoud.
- Hashing (Hashing - SHA, MD5): Een eenrichtingsproces (bijv. voor het opslaan van wachtwoorden). Uit het resultaat kan de oorspronkelijke tekst niet worden herleid.
Als u een wachtwoord of gevoelige informatie moet verzenden, is Base64 alleen niet voldoende. U moet HTTPS (SSL/TLS) gebruiken, dat de overdracht versleutelt.