ByteCompress

Base64 Decoder

Decodeer Base64-gecodeerde strings terug naar hun oorspronkelijke platte tekst of binaire representatie. Ondersteunt zowel standaard RFC 4648 als URL-veilige Base64-alphabeten, inclusief JWT-tokens.

0 chars
FreeClient-sideNo signup

Base64-strings zijn opzettelijk ondoorzichtig - SGVsbG8sIFdvcmxkIQ== is betekenisloos totdat het terug is gedecodeerd naar Hello, World!. Gedefinieerd in RFC 4648, codeert Base64 elke 3 invoerbytes als 4 uitvoertekens, met ongeveer 33% overhead. Deze decoder keert dat om met behulp van de native atob() en TextDecoder API's van de browser. Het ondersteunt zowel standaard Base64 als de URL-veilige variant (- en _ in plaats van + en /) die wordt gebruikt in JWT's en OAuth-tokens. Er wordt niets naar een server geüpload.

Hoe Base64 te Decoderen

  1. Plak je Base64-gecodeerde string in het invoerveld.
  2. Kies Standaard of URL-veilige modus om overeen te komen met hoe de data oorspronkelijk was gecodeerd.
  3. De gedecodeerde platte tekst verschijnt onmiddellijk in het outputpaneel.
  4. Klik op Kopiëren om het resultaat te kopiëren.

Hoe Base64 Decoderen Werkt

Het Decoderen Proces

Decoderen keert coderen precies om. Elk Base64-teken wordt teruggekoppeld naar zijn 6-bits waarde met behulp van de alfabet-tabel. Vier opeenvolgende tekens (24 bits) reconstrueren drie bytes. De atob() functie van de browser behandelt standaard Base64 van nature. Voor URL-veilige Base64 worden - en _ terugvertaald naar + en / voor het decoderen. De resulterende UTF-8 bytevolgorde wordt vervolgens gedecodeerd naar een Unicode-string met behulp van TextDecoder.

Omgaan met Ontbrekende Padding

Standaard Base64 vereist = padding om de stringlengte een veelvoud van 4 te maken. JWT's en OAuth-tokens verwijderen padding om de grootte te verkleinen. Deze decoder berekent en voegt automatisch de vereiste padding toe op basis van de stringlengte. Als de stringlengte mod 4 gelijk is aan 2, is één = nodig; als het 3 is, zijn twee = tekens nodig.

Voorbeeld

Invoer (Standaard Base64)

SGVsbG8sIFdvcmxkIQ==

Output

Hello, World!

Veelvoorkomende Toepassingen

  • JWT-token inspectie - Decodeer de header en payload secties om claims te lezen zonder een bibliotheek
  • HTTP Basic Auth - Decodeer Authorization: Basic dXNlcjpwYXNz headers om ingesloten inloggegevens te verifiëren
  • Data URI inspectie - Decodeer het Base64-gedeelte van data:image/png;base64,... URI's
  • API-respons debugging - Sommige API's Base64-coderen binaire inhoud in JSON-responses

Beste Praktijken

  • Selecteer de juiste modus (Standaard vs URL-veilige) - het gebruik van de verkeerde modus produceert onleesbare output
  • Voor JWT-tokens, decodeer alleen de header (eerste deel) en payload (tweede deel); het derde deel is een cryptografische handtekening, geen gecodeerde tekst
  • Als de output onleesbare tekens bevat, was de brondata binair (afbeelding, PDF, enz.), geen tekst
  • Base64 decoderen is geen beveiligingscontrole - iedereen kan het decoderen

Om tekst terug naar Base64 te coderen, gebruik de Base64 Encoder. Voor URL-gecodeerde data, gebruik de URL Decoder. Om een JWT volledig te inspecteren, decodeer de eerste twee punt-gescheiden delen afzonderlijk met de URL-veilige modus geselecteerd.

Veelgestelde Vragen

Hoe decodeer ik een JWT-token met deze tool?

Een JWT bestaat uit drie delen gescheiden door punten: header.payload.signature. Kopieer de header (eerste deel) of payload (tweede deel), selecteer URL-veilige modus en plak het in de decoder. De output is het JSON-object met het algoritme (header) of de claims (payload). Decodeer de handtekening niet - het is een cryptografische hash, geen Base64-gecodeerde JSON-string.

Waarom toont mijn gedecodeerde output vreemde tekens?

Dit betekent een van de drie dingen: (1) de originele data was binair (afbeelding, PDF, zip) in plaats van tekst; (2) je hebt de verkeerde modus geselecteerd - probeer te wisselen tussen Standaard en URL-veilige; (3) de originele tekst was gecodeerd met een charset anders dan UTF-8. Probeer eerst de modi te wisselen. Als de output nog steeds onleesbaar is, was de brondata waarschijnlijk binair.

Heb ik de padding-tekens (==) nodig voor de decoding?

Standaard Base64 vereist padding om de stringlengte een veelvoud van 4 te maken. Deze decoder voegt automatisch ontbrekende padding toe, wat belangrijk is voor JWT- en OAuth-tokens die de laatste =-tekens verwijderen. Plak de string zoals deze is en de decoder behandelt de padding automatisch.

Is mijn gevoelige data veilig tijdens het decoderen hier?

Ja. Decoderen gebeurt volledig in je browser met behulp van de native atob() en TextDecoder API's. Tokens, inloggegevens en privégegevens die je plakt worden nooit naar een server gestuurd, nooit gelogd en nooit opgeslagen. Open het Netwerktabblad van de browser tijdens het decoderen en je zult geen uitgaande verzoeken zien.

Wat is het verschil tussen Standaard en URL-veilige Base64?

Standaard Base64 (RFC 4648 §4) gebruikt + en /. URL-veilige Base64 (RFC 4648 §5) vervangt deze door - en om conflicten in URL's, bestandsnamen en HTTP-headers te vermijden. JWT's, OAuth-tokens en PKCE-codeverifiers gebruiken allemaal URL-veilige Base64. Als je string - of bevat, selecteer dan de URL-veilige modus.