In dit artikel
Wat is Base32?
Base32 is een binair-naar-tekst coderingsschema gedefinieerd in RFC 4648 dat binaire gegevens weergeeft met een set van 32 tekens (A-Z en 2-7). In tegenstelling tot Base64 gebruikt Base32 alleen hoofdletters en cijfers, waardoor het hoofdletterongevoelig en gebruiksvriendelijk is voor handmatige invoer.
Base32 produceert langere uitvoer dan Base64 (ongeveer 60% overhead versus 33%), maar de afweging is verbeterde leesbaarheid en compatibiliteit met systemen die hoofdletterongevoelig zijn of speciale tekens zoals + en / niet toestaan.
Hoe Base32-codering werkt
Base32 converteert elke groep van 5 bytes (40 bits) naar 8 Base32-tekens (5 bits elk), met opvulling van =-tekens wanneer de invoerlengte geen veelvoud van 5 is.
- 5-bit groepering — invoerbytes worden opgesplitst in 5-bit blokken, elk gekoppeld aan een van de 32 tekens uit het A-Z, 2-7 alfabet
- Opvulling — =-tekens vullen de uitvoer aan zodat de lengte altijd een veelvoud van 8 tekens is
- Varianten — Base32Hex gebruikt 0-9, A-V in plaats van A-Z, 2-7 om de sorteervolgorde van gecodeerde gegevens te behouden
Probeer gratis — geen aanmelding vereist
Codeer of decodeer Base32 →Wanneer Base32 gebruiken
Base32 heeft de voorkeur boven Base64 in scenario's waar hoofdlettergevoeligheid, leesbaarheid of tekenbeperkingen van belang zijn.
- TOTP-geheimen — authenticator-apps zoals Google Authenticator gebruiken Base32-gecodeerde geheimen omdat gebruikers ze mogelijk handmatig moeten invoeren
- Crockford-codering — een Base32-variant die dubbelzinnige tekens (I, L, O, U) verwijdert voor schonere menselijk leesbare identifiers
- DNS en bestandssystemen — Base32 werkt in hoofdletterongevoelige omgevingen waar het gemengde alfabet van Base64 botsingen zou veroorzaken
Veelgestelde vragen
Wat is het verschil tussen Base32 en Base64?
Base32 gebruikt 32 tekens (A-Z, 2-7) en produceert ongeveer 60% grotere uitvoer, terwijl Base64 64 tekens (A-Z, a-z, 0-9, +, /) gebruikt met ongeveer 33% overhead. Base32 is hoofdletterongevoelig en vermijdt speciale tekens, waardoor het beter geschikt is voor handmatige invoer.
Waarom gebruiken authenticator-apps Base32 in plaats van Base64?
Authenticator-apps gebruiken Base32 omdat gebruikers soms de geheime sleutel handmatig moeten invoeren. Het alleen-hoofdletters alfabet van Base32 voorkomt verwarring tussen gelijkaardige tekens (zoals kleine letter L en cijfer 1) en werkt betrouwbaar tussen hoofdletterongevoelige systemen.
Wat is Base32Hex en wanneer moet ik het gebruiken?
Base32Hex (ook base32hex of uitgebreid hex genoemd) gebruikt de tekens 0-9 en A-V in plaats van het standaard A-Z, 2-7 alfabet. Het behoudt de lexicografische sorteervolgorde van de originele binaire gegevens wanneer gecodeerd, wat nuttig is voor database-indexering en gesorteerde gegevensstructuren.