Base64-paddingverwerking
Berekent automatisch in de browser volgens de RFC 4648-standaard het juiste aantal = padding aan het einde van een Base64-tekenreeks, ondersteunt opvullen of verwijderen van padding in beide richtingen en herstelt niet-conforme Base64-tekenreeksen, volledig lokaal.
Gerelateerde aanbevelingen
Wat is Base64-padding?
Base64-padding is het teken '=' zoals vastgelegd in de RFC 4648-standaard, en dient om de Base64-uitvoerlengte een veelvoud van 4 te maken. Base64 zet 3 bytes (24 bits) om in 4 tekens, maar wanneer er aan het einde minder dan 3 bytes over zijn, moet dit met = worden aangevuld; anders kan de decoder het werkelijke aantal bytes aan het einde niet bepalen.
Paddingregels: ① aantal originele bytes mod 3 = 0 → 0 = aan het einde; ② mod 3 = 1 → 2 = aan het einde; ③ mod 3 = 2 → 1 = aan het einde. De Base64-tekenreekslengte mod 4 moet gelijk zijn aan het aantal ontbrekende = tekens.
Waarom padding nodig is: Base64-decodering vereist een duidelijke grens. Padding geeft de decoder aan hoeveel echte bytes de = aan het einde vertegenwoordigt, wat ambiguïteit voorkomt. Zonder padding kunnen invoeren van 1 byte en 2 bytes tot Base64 van dezelfde lengte leiden, waardoor decodering het aantal bytes niet kan vaststellen.
Praktijk: de meeste protocollen (Data-URL, MIME, JWT, configuratiebestanden) volgen padding strikt; in sommige scenario's (URL-paden, bestandsnamen, korte links) wordt padding weggelaten om ruimte te besparen. Deze tool ondersteunt beide richtingen.
Toepassingsgevallen
- Herstel Base64-decodeerfouten (zoals InvalidCharacterError of lengte die geen veelvoud van 4 is) door eerst = toe te voegen en daarna te decoderen.
- Verwijder overbodige regelovergangen en ontbrekende padding bij Base64-uitvoer uit API's, JWT's en logbestanden.
- Zorg er bij het genereren van een Data-URL voor dat het Base64-gedeelte strikt voldoet aan RFC 4648, zodat browsers of tools van derden correct decoderen.
- Valideer en vul snel padding aan voor JWT-tokens, configuratiebestanden en API-referenties.
- Verwijder padding voor URL's, bestandsnamen en dergelijke om tekens te besparen (mits het protocol dit toestaat).
- Vergelijk bij het leren van Base64-coderingsprincipes de relatie tussen het aantal invoerbytes en het aantal paddingtekens.
Hoe te gebruiken
- Plak of typ de te verwerken Base64-tekenreeks (met of zonder padding en regelovergangen).
- Kies een modus: opvullen (= aan het einde toevoegen) of padding verwijderen (= aan het einde wissen).
- De tool berekent en toont het resultaat automatisch, met realtime tekentelling en padding-wijzigingen.
- Kopieer het resultaat naar het klembord of download het als .txt-bestand voor verdere verwerking.
Functies
- Automatische padding-berekening: toont in realtime het verschil tussen het verwachte aantal = tekens en het aanwezige aantal.
- Opvulmodus: vult elke Base64-tekenreeks aan tot een veelvoud van 4 en herstelt lengtefouten met één klik.
- Verwijdermodus: verwijdert afsluitende = tekens, ideaal voor scenario's zoals URL's en bestandsnamen waar tekens moeten worden bespaard.
- Negeert automatisch regelovergangen en witruimte: Base64 met regelovergangen (uit e-mails of JWT-uitvoer) wordt correct verwerkt.
- Realtime tekentelling: toont het aantal invoertekens, uitvoertekens en de toe- of afname van de padding.
- Eén klik kopiëren/downloaden: het resultaat kan met één klik naar het klembord worden gekopieerd of als .txt-bestand worden gedownload.
- Lokale browserverwerking: alle berekeningen worden in de browser uitgevoerd; de oorspronkelijke inhoud wordt naar geen enkele server geüpload.
Best Practices
Bevestig vóór het opvullen dat de invoer echte Base64 is
Deze tool vult alleen afsluitende = aan en ruimt geen ongeldige tekens op. Als de invoer spaties, niet-Latijnse tekens of tekens met diakrieten, of andere ongeldige tekens dan regelovergangen bevat, zal decodering nog steeds mislukken. Gebruik eerst de Base64-opschoningstool om niet-alfanumerieke tekens te verwijderen.
Data-URL's en JWT's moeten altijd worden aangevuld
Data-URL's (RFC 2397) en JWT's (RFC 7519) vereisen beide strikt padding. Het weglaten van = veroorzaakt in de meeste implementaties decodeerfouten of inconsistente resultaten; vul vóór verzending aan tot een veelvoud van 4 met deze tool.
URL's/bestandsnamen mogen padding weglaten, maar vereisen dan de URL-safe tekenset
Als je Base64 in een URL-pad, bestandsnaam of korte link wilt gebruiken, is alleen padding verwijderen niet genoeg; je moet ook + en / vervangen door - en _ (Base64URL). Alleen = weglaten blijft standaard Base64, en + en / zijn nog steeds ongeldig in URL's.
Na verwijderen van padding geeft decodering 'lengte klopt niet'
Dit betekent dat de doeltool strikt padding vereist. Schakel over naar de opvulmodus en probeer opnieuw te decoderen. Als het nog steeds mislukt, zijn er mogelijk per ongeluk niet-achterste = tekens verwijderd (de invoer was sowieso ongeldig).
Splits grote bestanden voor verwerking
Deze tool is geschikt voor Base64-tekenreeksen uit één stuk. Bij base64-gecodeerde bestanden van tientallen MB's kun je beter opdrachtregeltools gebruiken (zoals openssl base64 of de opdracht base64) of de verwerking in code doen om haperingen in de browser te voorkomen.
Voeg bij onderwijs of documentatie altijd de padding-berekening toe
Base64-padding is het meest verwarrende punt voor beginners. Leg altijd de tabel 'invoerbytes mod 3 = rest, wat overeenkomt met zoveel =' erbij (zie de referenceTables op deze pagina), anders is het voor leerlingen moeilijk te begrijpen waarom soms 1 en soms 2 = nodig zijn.
Veelgestelde vragen
Waar dient Base64-padding voor?
Het zorgt ervoor dat de Base64-uitvoerlengte altijd een veelvoud van 4 is en geeft de decoder een duidelijke eindgrens. Zonder padding kunnen invoeren van 1 byte en 2 bytes tot tekens van dezelfde lengte leiden, waardoor de decoder het oorspronkelijke aantal bytes niet kan onderscheiden.
Waarom moet de Base64-lengte een veelvoud van 4 zijn?
Omdat Base64 3 bytes naar 4 tekens wijt, met een vaste verhouding van 3→4 per groep. Wanneer de invoer geen veelvoud van 3 is, moet het einde met = worden aangevuld tot 4 tekens. Elke Base64 die geen veelvoud van 4 is, is ongeldig.
Hoe bereken je het aantal paddingtekens?
De formule is (4 - aantal invoerbytes % 3) % 3, of kijk direct naar het aantal Base64-tekens mod 4: rest 0 komt overeen met 0 =, rest 2 met 1 =, rest 3 met 2 =. Deze tool berekent het automatisch.
Kan padding worden verwijderd?
Ja, maar alleen als het protocol dit toestaat. Bestandsnamen, URL-paden en sommige JSON Web Token-implementaties accepteren Base64 zonder padding, maar Data-URL's, MIME en configuratiebestanden vereisen dit doorgaans strikt. Gebruik de verwijdermodus van deze tool alleen als je zeker weet dat het protocol dit ondersteunt.
Wat te doen bij de Base64-decodefout 'lengte is geen veelvoud van 4'?
Schakel over naar de opvulmodus van deze tool en voeg met één klik = aan het einde toe. Als de fout na het opvullen aanhoudt, bevat de invoer ongeldige tekens of is deze afgekapt; gebruik eerst de Base64-opschoningstool.
Verandert het aanvullen van padding de oorspronkelijke bytes?
Nee. Het vult alleen = aan het einde toe en wijzigt de tussenliggende tekens niet, dus de oorspronkelijke bytes blijven volledig behouden. Na decodering komen de bytes exact overeen met de oorspronkelijke gegevens.
Wordt Base64 met regelovergangen of spaties ondersteund?
Ja. Deze tool verwijdert automatisch regelovergangen, returns en spaties voordat de padding wordt berekend. Multi-line Base64 uit e-mailbijlagen, JWT-uitvoer en configuratiebestanden kan direct worden geplakt.
Zijn Base64-padding en Base64URL hetzelfde?
Nee. Base64-padding gaat over de = tekens aan het einde; Base64URL gaat over de tekenset (- vervangt + en _ vervangt /). Deze tool behandelt alleen padding; gebruik voor URL-safe-conversie de speciale Base64URL-tool.
Wordt de inhoud naar een server geüpload?
Nee. Alle padding-berekeningen worden lokaal in de browser uitgevoerd; de oorspronkelijke Base64-tekenreeks verlaat je apparaat niet. Je kunt deze tool veilig gebruiken voor gevoelige gegevens (referenties, tokens).
Probleemoplossing
Decodefout 'lengte is geen veelvoud van 4'
Vul = aan met de opvulmodus van deze tool en decodeer daarna opnieuw. Als de fout aanhoudt, bevat de invoer ongeldige tekens; controleer eerst met de Base64-opschoningstool.
Vermoeden van ongeldige tekens in de invoer
Standaard Base64 bevat alleen A-Z a-z 0-9 + / =; alle andere tekens (niet-Latijnse tekens, tekens met diakrieten, spaties, symbolen anders dan regelovergangen) zijn ongeldig. Deze tool negeert automatisch regelovergangen en spaties, maar andere ongeldige tekens moeten eerst met de Base64-opschoningstool worden verwijderd.
URL-fout na het verwijderen van padding
Mogelijk bevat de URL nog tekens zoals ? & = die URL-codering vereisen, of symbolen zoals + / uit de Base64-tekenset. Het verwijderen van padding is niet hetzelfde als URL-safe; voer nog een Base64URL-conversie of URL-codering uit.
Geen resultaat na het plakken
Mogelijk bestaat de invoer volledig uit witruimtetekens (regelovergangen, spaties, tabs). Deze tool negeert deze tekens bij de berekening, maar volledig witte invoer levert geen resultaat op. Voer minstens één Base64-teken in.
Woordenlijst
- padding = teken
- Het Base64-paddingteken aan het einde zoals vastgelegd in de RFC 4648-standaard, dat aangeeft hoeveel echte bytes ontbreken. Geldige padding kan alleen aan het einde van een tekenreeks voorkomen.
- veelvoud van 4
- Volgens de RFC 4648-standaard moet de Base64-uitvoerlengte een veelvoud van 4 zijn; anders wordt de codering als ongeldig beschouwd. In strikte Base64-modus leidt dit direct tot een fout bij decodering.
- padding-berekeningsformule
- Aantal benodigde = tekens = (4 - aantal invoerbytes % 3) % 3; equivalent aan het aantal Base64-tekens mod 4, waarbij 0/2/1 overeenkomt met 0/1/2 = tekens.
- Base64 zonder padding
- Een Base64-variant zonder afsluitende = tekens, gangbaar in URL-paden en bestandsnamen, maar strikt genomen niet conform de RFC 4648-standaard en mogelijk niet te decoderen in sommige protocollen.
- Base64-tekenset
- A-Z, a-z, 0-9, +, / in totaal 64 tekens, plus = voor padding. Alle andere tekens zijn ongeldig en moeten eerst met een Base64-opschoningstool worden verwijderd.
Base64-paddingregels in één oogopslag
De relatie tussen het aantal Base64-invoerbytes en het aantal afsluitende = paddingtekens.
| Aantal invoerbytes | mod 3 | Aantal Base64-tekens | aantal = padding | Voorbeeld (invoer→uitvoer) |
|---|---|---|---|---|
3n | 0 | 4n | 0 | ABC → QUJD |
3n+1 | 1 | 4n+2 | 2 | AB → QUI= |
3n+2 | 2 | 4n+3 | 1 | A → QQ== |
Padding-vereisten van gangbare protocollen
Verschillende protocollen stellen verschillende eisen aan = padding; onjuist weglaten leidt tot decodeerfouten.
| Gebruiksscenario | Padding vereist? | Typisch gebruik |
|---|---|---|
Data-URL (RFC 2397) | Aanbevolen (compatibiliteit) | HTML / CSS / inline afbeeldingen |
JWT (RFC 7519) | Vereist (strikt) | OAuth / API-autorisatie |
MIME (RFC 2045) | Vereist | Codering e-mailbijlagen |
URL-pad / bestandsnaam | Optioneel (vaak weggelaten) | Korte links / cachesleutels |
Configuratiebestand (YAML / JSON) | Vereist | Opslag van referenties en handtekeningen |
Authoritative References
- Veilige String Vergelijking
- Binair naar Tekst
- Caesar Cipher
- Morsecodering Vertaler
- Hex naar Tekst
- Video naar Base64
- Base64 naar Video
- Afbeelding naar Base64
- Base64 naar Afbeelding
- Tekst naar Base64
- Base64 naar Tekst
- Bestandshash-controle
- Bestand naar Base64
- Base64 naar Bestand
- Audio naar Base64
- Base64 naar Audio
- AES versleutelen en ontsleutelen
- DES Encryptie
- Base32 Encoder Decoder
- Base58 coderen en decoderen
- Base64 Codering
- Base64 Decoderen
- Base64 Vergelijken
- Base64 Opsplitsen
- Base64 meerregelige samenvoegen
- Base64 Opmaak
- Base64 Valideren
- Base64 batch-encodering
- Base64 Batch Decoderen
- Base64 Opschonen
- Base64-paddingverwerking
- Base64 Statistieken
- Base64 naar Hex
- Base64 DataURL Converter
- Base64-Hex-omzetter
- Base85 Encoderen / Decoderen
- HMAC Generator & Verificateur
- PBKDF2 Sleutelafleiding
- MD5-hash
- SHA-256 hash
- SHA1 Hash
- SHA512-hash
- JWT Decoder
- HTML Entity Encoder en Decoder
- Unicode Escape
- URL-codering
- URL-Veilige Base64
- MIME Base64
- Java Obfuscator
- JS Obfuscator
- PHP Obfuscator
- Python Obfuscator