Base64-tekstencoder

Stap 1 / 333%

Invoer

Base64 vervoert tekst, ook met niet-ASCII-tekens, door systemen die afdrukbare ASCII verwachten. Deze lokale browsertool encodeert UTF-8-tekst als Base64 of decodeert Base64 naar geldige UTF-8-tekst volgens RFC 4648, met een optioneel URL-veilig alfabet en optionele opvulling. Gebruik voor binaire gegevens een bestands- of binaire decoder.

Hoe Base64-tekstencoding werkt

  1. 1

    Plak je tekst

    UTF-8 is de standaardinterpretatie: elk teken wordt eerst zijn UTF-8-bytevolgorde.

  2. 2

    Kies de richting

    Codeer tekst naar Base64 of decodeer Base64 naar tekst.

  3. 3

    Kies de variant

    Standaard (`A-Z a-z 0-9 + /`) of URL-safe (`+` en `/` vervangen door `-` en `_`). Zet bij het coderen padding (`=`) aan of uit.

  4. 4

    Kopieer het resultaat

    Gebruik het resultaat alleen waar Base64 of een Base64URL-waarde zonder opvulling wordt verwacht. Alleen tekst encoderen maakt of controleert geen volledige JWT of authenticatieheader.

Uitgewerkt voorbeeld

Het woord café encoderen:

  1. UTF-8-encoding: 63 61 66 C3 A9 (5 bytes; de é is twee bytes in UTF-8)
  2. Groepeer in blokken van 3 bytes: 63 61 66 | C3 A9
  3. Elke 3 bytes worden 4 Base64-tekens: Y 2 F m | w 6 k =
  4. Eindresultaat: Y2Fmw6k=

URL-safe Base64

Standaard Base64 gebruikt + en /, die gereserveerde betekenissen hebben in URL’s en bestandsnamen:

  • + kan bij het decoderen van formulierachtige querygegevens in een spatie veranderen
  • / scheidt URL-padsegmenten

URL-safe Base64 (RFC 4648 sectie 5) wisselt ze om voor - en _. Deze tool laat =-padding staan tenzij je die bij het coderen afzonderlijk uitschakelt. De variant wordt gebruikt in JWT-segmenten en bestandsnaamveilige contexten.

Opvulling (padding)

Base64-uitvoer is gegroepeerd in blokken van 4 tekens. Als de invoerlengte geen veelvoud van 3 bytes is, wordt het laatste blok aangevuld met = om de 4 tekens te vullen:

Invoerbytes Uitvoer Opvulling
1 4 ==
2 4 =
3 4 (geen)

Sommige systemen (bijvoorbeeld JWT-segmenten) verwijderen de opvulling. Deze tool accepteert zowel correct opgevulde als correct ongepaddede invoer; andere ontvangers kunnen padding verplicht stellen.

Veelgemaakte fouten

  • Base64 behandelen als encryptie. Dat is het niet. Iedereen kan Base64 decoderen; het verbergt niets.
  • UTF-8 vergeten. “café” encoderen als Latin-1 geeft andere bytes dan UTF-8. Tenzij je de verwachting van de ontvanger kent, blijf bij UTF-8.
  • Whitespace zonder toestemming accepteren. RFC 4648 schrijft standaard voor dat niet-alfabettekens worden afgewezen. Schakel de optie die ASCII-spaties, tabs, regeleinden en pagina-einden accepteert alleen in als het verwijzende formaat, zoals MIME, die uitdrukkelijk toestaat.

Veelgestelde vragen

Nee. Het is een encoding, geen encryptie. “aGVsbG8=” decodeert naar “hello” in elke Base64-decoder. Als je geheimhouding nodig hebt, versleutel dan eerst en zet de cijfertekst daarna in Base64 voor transport.

Base64 stelt elke 3 invoerbytes voor als 4 uitvoertekens, dus de gecodeerde vorm groeit met ongeveer 33%. Opvulling kan maximaal twee tekens toevoegen.

Base64URL gebruikt - en _ in plaats van + en /. Opvulling is een aparte keuze: schakel die uit als het doelformaat een waarde zonder opvulling vereist.

Standaard Base64 moet als querywaarde met procentcodering worden opgenomen. Base64URL vermijdt + en /; schakel ook opvulling uit als het doelformaat geen = toestaat.

Gerelateerde tools