Skip to main content
CheckTown
Dev Tools

Base32 Encoding: A Complete Guide

Pubblicato 5 min di lettura
In questo articolo

Cos'è Base32?

Base32 è uno schema di codifica da binario a testo definito nella RFC 4648 che rappresenta dati binari usando un set di 32 caratteri (A-Z e 2-7). A differenza di Base64, Base32 usa solo lettere maiuscole e cifre, rendendolo insensibile alle maiuscole e facile da digitare manualmente.

Base32 produce un output più lungo di Base64 (circa il 60% di overhead vs il 33%), ma il compromesso è una migliore leggibilità e compatibilità con sistemi che non distinguono maiuscole o che vietano caratteri speciali come + e /.

Come funziona la codifica Base32

Base32 converte ogni gruppo di 5 byte (40 bit) in 8 caratteri Base32 (5 bit ciascuno), con padding di = quando la lunghezza non è multipla di 5.

  • Raggruppamento a 5 bit — i byte vengono divisi in blocchi da 5 bit, ciascuno mappato a uno dei 32 caratteri dell'alfabeto A-Z, 2-7
  • Padding — vengono aggiunti = per garantire che l'output sia sempre multiplo di 8
  • Varianti — Base32Hex usa 0-9, A-V invece di A-Z, 2-7 per preservare l'ordine di ordinamento

Prova gratuitamente — nessuna registrazione richiesta

Codifica o decodifica Base32 →

Quando usare Base32

Base32 è preferibile a Base64 quando contano la sensibilità alle maiuscole, la leggibilità o le restrizioni sui caratteri.

  • Segreti TOTP — le app di autenticazione come Google Authenticator usano segreti codificati in Base32 perché gli utenti potrebbero doverli digitare manualmente
  • Codifica Crockford — variante Base32 che rimuove caratteri ambigui (I, L, O, U) per identificatori più leggibili
  • DNS e file system — Base32 funziona in ambienti insensibili alle maiuscole dove l'alfabeto misto di Base64 causerebbe collisioni

Domande frequenti

Qual è la differenza tra Base32 e Base64?

Base32 usa 32 caratteri (A-Z, 2-7) con output circa il 60% più grande; Base64 usa 64 caratteri con circa il 33% di overhead. Base32 è insensibile alle maiuscole e evita caratteri speciali.

Perché le app di autenticazione usano Base32?

Perché gli utenti a volte devono digitare la chiave segreta manualmente. L'alfabeto solo maiuscolo evita confusione tra caratteri simili.

Cos'è Base32Hex?

Base32Hex usa 0-9 e A-V invece di A-Z, 2-7. Preserva l'ordine lessicografico dei dati binari originali, utile per l'indicizzazione di database.

Strumenti correlati