Base64-textencoder

Steg 1 / 333%

Inmatning

Base64 transporterar text, även tecken utanför ASCII, genom system som förväntar sig utskrivbar ASCII. Det här lokala webbläsarverktyget kodar UTF-8-text som Base64 eller avkodar Base64 till giltig UTF-8-text enligt RFC 4648, med valfritt URL-säkert alfabet och utfyllnad. Använd en fil- eller binäravkodare för binärdata.

Så fungerar Base64-kodning av text

  1. 1

    Klistra in din text

    UTF-8 är standardtolkningen - varje tecken blir först sin UTF-8-bytesekvens.

  2. 2

    Välj riktning

    Koda text-till-Base64 eller avkoda Base64-till-text.

  3. 3

    Välj variant

    Standard (`A-Z a-z 0-9 + /`) eller URL-säker (`+` och `/` ersätts av `-` och `_`). Slå på eller av utfyllnad (`=`) vid kodning.

  4. 4

    Kopiera resultatet

    Använd resultatet bara där formatet kräver Base64 eller ett Base64URL-värde utan utfyllnad. Att koda text skapar eller validerar inte i sig en fullständig JWT eller autentiseringsheader.

Genomarbetat exempel

Kodning av ordet café:

  1. UTF-8-kodning: 63 61 66 C3 A9 (5 bytes; é är två bytes i UTF-8)
  2. Gruppera i 3-byte-block: 63 61 66 | C3 A9
  3. Varje 3 bytes blir 4 Base64-tecken: Y 2 F m | w 6 k =
  4. Slutresultat: Y2Fmw6k=

URL-säker Base64

Standard-Base64 använder + och /, som har reserverade betydelser i URL:er och filnamn:

  • + kan bli ett mellanslag när formulärliknande frågedata avkodas
  • / avgränsar URL-sökvägssegment

URL-säker Base64 (RFC 4648 avsnitt 5) byter dem mot - och _. Verktyget behåller utfyllnaden = om du inte stänger av den separat vid kodning. Varianten används i JWT-segment och filnamnssäkra sammanhang.

Utfyllnad (padding)

Base64-utdata grupperas i block om 4 tecken. Om indatalängden inte är en multipel av 3 bytes fylls det sista blocket ut med = för att fylla 4 tecken:

Indatabytes Utdata Utfyllnad
1 4 ==
2 4 =
3 4 (ingen)

Vissa system (till exempel JWT-segment) tar bort utfyllnaden. Verktyget accepterar både korrekt utfylld och korrekt ofylld indata; andra mottagare kan kräva utfyllnad.

Vanliga misstag

  • Att behandla Base64 som kryptering. Det är det inte. Vem som helst kan avkoda Base64; det döljer ingenting.
  • Att glömma UTF-8. Att koda “café” som Latin-1 ger andra bytes än UTF-8. Om du inte känner mottagarens förväntan, håll dig till UTF-8.
  • Att godta blanktecken utan tillåtelse. RFC 4648 kräver som standard att tecken utanför alfabetet avvisas. Aktivera alternativet som accepterar ASCII-mellanslag, tabbar, radbrytningar och sidmatningar endast när det hänvisande formatet, till exempel MIME, uttryckligen tillåter dem.

Vanliga frågor

Nej. Det är en kodning, inte kryptering. “aGVsbG8=” avkodas till “hello” i vilken Base64-avkodare som helst. Om du behöver sekretess, kryptera först och Base64-koda chiffertexten för transport.

Base64 representerar 3 indatabyte som 4 utdatatecken, så den kodade formen växer med ungefär 33%. Utfyllnad kan lägga till högst två tecken.

Base64URL använder - och _ i stället för + och /. Utfyllnad är ett separat val; stäng av den om målformatet kräver ett värde utan utfyllnad.

Standard-Base64 bör procentkodas som frågevärde. Base64URL undviker + och /; stäng också av utfyllnad om målformatet inte tillåter =.

Relaterade verktyg